Looking for contribuition with Control implemetation on GE200.

Started by soulwyx, September 14, 2021, 11:29:11 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

soulwyx

I borrow Mooer GE200 today. I'll be with GE200 for one week.
I could provide my time to implement the protocol but I think that's some knowledge missing to full implementation.
I'm using Arduino Zero instead of Teensy.
SixEight, could you help me on implementation?

Clicking o P003 on GE200 Studio
What I saw on USB:

000010: Bulk or Interrupt Transfer (DOWN), 2021-09-14 15:19:02,6497941 +86,6739129 (1. Device: GE200)
Pipe Handle: Control PipeSend 0x40 bytes to the device
0B AA 55 05 00 82 00 00 00 00 E0 0B 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

000011: Bulk or Interrupt Transfer (UP), 2021-09-14 15:19:02,6559935 +0,0061994. (1. Device: GE200) Status: 0x00000000
Pipe Handle: Control PipeSend 0x40 bytes to the device

000012: Bulk or Interrupt Transfer (DOWN), 2021-09-14 15:19:02,6561897 +0,0001962 (1. Device: GE200)
Pipe Handle: Control PipeSend 0x40 bytes to the device
08 AA 55 02 00 A6 02 85 0D 00 E0 0B 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00                                 

000013: Bulk or Interrupt Transfer (UP), 2021-09-14 15:19:02,6639490 +0,0077593. (1. Device: GE200) Status: 0x00000000
Pipe Handle: Control PipeSend 0x40 bytes to the device

000014: Bulk or Interrupt Transfer (DOWN), 2021-09-14 15:19:02,8719650 +0,2080160 (1. Device: GE200)
Pipe Handle: Control PipeGet 0x40 bytes from the device

Clicking o P004 on GE200 Studio:

000015: Bulk or Interrupt Transfer (DOWN), 2021-09-14 15:22:16,0412713 +193,1693063 (1. Device: GE200)
Pipe Handle: Control PipeSend 0x40 bytes to the device
0B AA 55 05 00 82 00 00 00 00 E0 0B 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

000016: Bulk or Interrupt Transfer (UP), 2021-09-14 15:22:16,0481293 +0,0068580. (1. Device: GE200) Status: 0x00000000
Pipe Handle: Control PipeSend 0x40 bytes to the device

000017: Bulk or Interrupt Transfer (DOWN), 2021-09-14 15:22:16,0481816 +0,0000523 (1. Device: GE200)
Pipe Handle: Control PipeSend 0x40 bytes to the device
08 AA 55 02 00 A6 03 95 2C 00 E0 0B 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

000018: Bulk or Interrupt Transfer (UP), 2021-09-14 15:22:16,0561413 +0,0079597. (1. Device: GE200) Status: 0x00000000
Pipe Handle: Control PipeSend 0x40 bytes to the device

000019: Bulk or Interrupt Transfer (UP), 2021-09-14 15:22:16,2802046 +0,2240633. (1. Device: GE200) Status: 0x00000000
Pipe Handle: Control PipeGet 0x40 bytes from the device
09 AA 55 03 00 BB 00 00 1F 23 00 00 00 00 1E 93
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

000020: Bulk or Interrupt Transfer (DOWN), 2021-09-14 15:22:16,2802341 +0,0000295 (1. Device: GE200)
Pipe Handle: Control PipeGet 0x40 bytes from the device


In Red we have the Preset Number. I don't know what is in Blue.

My first dought is how can I send this Message using Arduino? What I need to do first?





admin


soulwyx

I'm already getting done in Notebook using HID SEND.

The Red is preset number, and the Blue is a must have value to validate the message.
I'll make a LookUpTable and post here with all full message presets.

My problem to implement on Arduino now is how to properly initialize the Mooer Ge200.
Any directions?

Using:

pUsb->outTransfer(bAddress, 0x02, 0x40, dados);

Calls:

rcode = SetPipeAddress(addr, ep, &pep, nak_limit, 0);

That calls:

*ppep = getEpInfoEntry(addr, ep);
if(!*ppep)
    return USB_ERROR_EP_NOT_FOUND_IN_TBL;


I'm getting this error when trying to send the data: USB_ERROR_EP_NOT_FOUND_IN_TBL;


Any tips, directions, examples?









sixeight

I am really no expert on the USB protocol.

USB_ERROR_EP_NOT_FOUND_IN_TBL must mean you are referring to an endpoint that has not been advertised previously.
But that is where my knowledge ends. I only support devices that talk MIDI so far.