Skip to content

Valeton GP-200LT doesn't return SysEx correctly #852

@lfqsconceicao

Description

@lfqsconceicao

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)

Image

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: 0003010020000904

Inerface 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: 030D0103000C110000000904

Interface descriptor:
Intf.number: 01
Alt: 00
Endpoints: 00
Intf. Class: 01
Intf. Subclass: 02
Intf. Protocol: 20
Intf.string: 00

Interface 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: 02012100705

Endpoint descriptor:
Endpoint address: 81
Attr.: 25
Max.pkt size: 0100
Polling interval: 01
Unknown descriptor:
Length: 08
Type: 25
Contents: 0100000200000904

Interface 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: 020104180705

Endpoint descriptor:
Endpoint address: 81
Attr.: 25
Max.pkt size: 0100
Polling interval:01
Unknown descriptor:
Length: 08
Type: 5
Contents: 000108C600000001

Addr:1(0.0.1)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions