-
Notifications
You must be signed in to change notification settings - Fork 795
Description
Hello
I'm trying to send CC messages to GP-200 LT turning on/off specifical effect, based on its original state. to get it, i need to se send the following SysEx :
f0 21 25 7e 47 50 2d 32 11 10 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 01 01 00 00 01 05 00 00 00 04 00 00 00 xx 00 00 0c 0f 00 02 f7
xx is the effect number
for example, sendin this SysEx to get the status of effect 02 (DST), the command would be
f0 21 25 7e 47 50 2d 32 11 10 00 00 00 00 00 00 00 00 04 00 00 00 00 00 00 01 01 00 00 01 05 00 00 00 04 00 00 00 02 00 00 0c 0f 00 02 f7
and the response is:
F0 21 25 7E 47 50 2D 32 12 08 00 00 00 01 05 00 00 00 04 00 00 00 02 00 "01" 03 0F 08 00 F7 ("01" is the state of effect - ON)
but when I try to do the same thing using the arduino to get this response, this is what I get:
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
this is the function used:
void readResponse() {
uint16_t recv_read = 0;
uint16_t recv_count = 0;
uint8_t rcode = 0;
uint8_t size;
uint8_t _readBufferTeste[MIDI_EVENT_PACKET_SIZE] ;
uint8_t _sysExBufferTeste[MIDI_MAX_SYSEX_SIZE];
delay(400);
Usb.Task();
do {
rcode = Midi.RecvData(&recv_read, (uint8_t *)(_readBuffer + recv_count));
if (rcode == 0) {
recv_count += recv_read;
}
} while (/*recv_count < MIDI_MAX_SYSEX_SIZE &&*/ rcode == 0);
}
void getEffStatus(int numPedal){
/* 0 - PRE
1 - WAH
2 - DST
3 - AMP
4 - NR
5 - CAB
6 - EQ
7 - MOD
8 - DLY
9 - REV
*/
uint8_t _valeton_req_pdl_stat[46] = { 0xF0, 0x21, 0x25, 0x7e, 0x47, 0x50, 0x2d, 0x32, 0x11, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x01, 0x05, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, 0x0c, 0x0f, 0x00, 0x02, 0xF7 }; //the 0xFF pos 38 is the number
Serial.println("Cheching Status Pedal");
_valeton_req_pdl_stat[VALETON_IDX_PEDAL] = number;
Midi.SendSysEx(_valeton_req_pdl_stat, 46);
//sendBytes(_valeton_req_pdl_stat, F("REQ PDL DATA"));
//delay(10);
readResponse();
}
This is the printing of USB_desc sketch:
Device descriptor:
Descriptor Lenth: 12
Descriptor type: 01
USB version: 0200
Device class: EF
Device Subclass: 02
Device Protocol: 01
Ma.acket size: 40
Vendor ID: 84EF
Product ID: 002C
Revision ID: 0101
Mfg.string index: 01
Prod.string index: 02
Serial number index: 03
Number of conf.: 01
Total length truncated to 256 bytes
Configuration descriptor:
Total egth: 01B5
Num.intf: 04
Conf.value: 01
Conf.tring: 04
Attr.: 80
Max.pwr: 32
Unknown descriptor:
Length: 08
Type: 0B
Contents: 0003010020000904Inerface descriptor:
Intf.number: 00
Alt.: 00
Endpoints: 00
Intf. Class: 01
Intf. Subclass: 01
Intf. Protoco: 20
Intf.string: 05
Unknown descriptor
Length: 09
Type: 24
Contents: 010002087F00000824
Unknown descitr:
Length: 08
Type: 24
Contents: 0A1100700001124
Unknown descriptor:
Length: 11
Type: 24
Contents: 0208010200110600000000000000002224
Unknown decriptor:
Length: 22
Type: 24
Contents: 0609080F0000000F0000000F0000000F0000000F0000000F0000000F000000000C24
Unknow escriptor:
Length: 0C
Type: 24
Contents: 030A01010009110000001124
Unknown descriptor:
Length: 11
Type: 24
Cntents: 020B010100110400000000000000001A24
Unknown descriptor:
Length: 1A
Type: 24
Contents: 060C0B0F00000000000000F0000000F0000000F000000000C24
Unknowndscriptor:
Length: 0C
Type: 24
Contents: 030D0103000C110000000904Interface descriptor:
Intf.number: 01
Alt: 00
Endpoints: 00
Intf. Class: 01
Intf. Subclass: 02
Intf. Protocol: 20
Intf.string: 00Interface desriptor:
Intf.number: 01
Alt.: 01
Endpoits: 01
Intf. Class: 01
Intf. Subclass: 02
Intf. Protocol: 20
Intf.string: 00
Unknown descriptor:
egth: 1
Type: 24
Contents: 010A0001010000000600000000000624
Unknown descriptor:
Length: 06
Type: 24
Contents: 02012100705Endpoint descriptor:
Endpoint address: 81
Attr.: 25
Max.pkt size: 0100
Polling interval: 01
Unknown descriptor:
Length: 08
Type: 25
Contents: 0100000200000904Interface descriptor:
Intf.number: 01
Alt.: 02
Endpoints: 01
Intf. Class: 01
Intf. Sbclass: 02
Intf. Protocol: 20
Intf.string: 00
Unknown descriptor
Length: 10
Type: 24
Contents: 01A0001010000000600000000000624
Unknown descriptor:
Length: 06
Type: 24
Contnts: 020104180705Endpoint descriptor:
Endpoint address: 81
Attr.: 25
Max.pkt size: 0100
Polling interval:01
Unknown descriptor:
Length: 08
Type: 5
Contents: 000108C600000001Addr:1(0.0.1)