Skip to content

M-Audio Keystation 49 MK3 recognized but no MIDI events received #73

@Nephiel

Description

@Nephiel

This MIDI keyboard model is class compliant and seems to be recognized, but no MIDI events are received at all.

Here is the USB_MIDI_dump with #define DEBUG_USB_HOST :

MIDI Init
Addr:01
VID:0763 PID:3110 #Conf:01

Conf:01 Int:00 Alt:00 EPs:00 IntCl:01 IntSubCl:01
No MIDI Device

Conf:01 Int:01 Alt:00 EPs:02 IntCl:01 IntSubCl:03
MIDI Device
-EPAddr:81 bmAttr:02 MaxPktSz:40
Endpoint descriptor:
 Length:	09
 Type:		05
 Address:	81
 Attributes:	02
 MaxPktSize:	0040
 Poll Intrv:	00
-EPAddr:02 bmAttr:02 MaxPktSz:40
Endpoint descriptor:
 Length:	09
 Type:		05
 Address:	02
 Attributes:	02
 MaxPktSize:	0040
 Poll Intrv:	00

NumEP:03
Conf:01
EPin :81
EPout:02
Init done.
VID:0763, PID:3110

Tried all of the keys, wheels, fader and buttons, but nothing appears on the dump after this point.

USBH_MIDI_desc output:

VID:0763, PID:3110
Start


01
--

Device descriptor: 
Descriptor Length:	12
Descriptor type:	01
USB version:		0110
Device class:		00
Device Subclass:	00
Device Protocol:	00
Max.packet size:	08
Vendor  ID:		0763
Product ID:		3110
Revision ID:		0105
Mfg.string index:	01
Prod.string index:	02
Serial number index:	00
Number of conf.:	01

Configuration descriptor:
Total length:		0085
Num.intf:		02
Conf.value:		01
Conf.string:		00
Attr.:			C0
Max.pwr:		32

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

<<<AUDIO_CONTROL>>>
Unknown descriptor:
Length:		09
Type:		24
Contents:	01000109000101

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

<<<MIDIStreaming>>>

MS Interface descriptor
07240100016100
DescriptorSubtype: 01
USB_DESCRIPTOR_CS_INTERFACE :	MS_HEADER
MIDIStreaming SubClass Specification Release number: 0100
wTotalLength:		0061

MS Interface descriptor
06240201010E
DescriptorSubtype: 02
USB_DESCRIPTOR_CS_INTERFACE :	MIDI_IN_JACK(Embedded)
JackType:	01
JackID:		01

MS Interface descriptor
062402020200
DescriptorSubtype: 02
USB_DESCRIPTOR_CS_INTERFACE :	MIDI_IN_JACK(External)
JackType:	02
JackID:		02

MS Interface descriptor
06240201030F
DescriptorSubtype: 02
USB_DESCRIPTOR_CS_INTERFACE :	MIDI_IN_JACK(Embedded)
JackType:	01
JackID:		03

MS Interface descriptor
062402020400
DescriptorSubtype: 02
USB_DESCRIPTOR_CS_INTERFACE :	MIDI_IN_JACK(External)
JackType:	02
JackID:		04

MS Interface descriptor
09240301090102010E
DescriptorSubtype: 03
USB_DESCRIPTOR_CS_INTERFACE :	MIDI_OUT_JACK(Embedded)
JackType:	01
JackID:		09
NrInputPins:	01
02010E

MS Interface descriptor
092403020A01010100
DescriptorSubtype: 03
USB_DESCRIPTOR_CS_INTERFACE :	MIDI_OUT_JACK(External)
JackType:	02
JackID:		0A
NrInputPins:	01
010100

MS Interface descriptor
092403010B0104010F
DescriptorSubtype: 03
USB_DESCRIPTOR_CS_INTERFACE :	MIDI_OUT_JACK(Embedded)
JackType:	01
JackID:		0B
NrInputPins:	01
04010F

MS Interface descriptor
092403020C01030100
DescriptorSubtype: 03
USB_DESCRIPTOR_CS_INTERFACE :	MIDI_OUT_JACK(External)
JackType:	02
JackID:		0C
NrInputPins:	01
030100

Endpoint descriptor:
Endpoint address:	81
Attr.:			02(Bulk)
Max.pkt size:		0040
Polling interval:	00

MS Endpoint descriptor
06250102090B
USB_DESCRIPTOR_CS_ENDPOINT :	MS_GENERAL
bNumEmbMIDIJack: 02
090B

Endpoint descriptor:
Endpoint address:	02
Attr.:			02(Bulk)
Max.pkt size:		0040
Polling interval:	00

MS Endpoint descriptor
062501020103
USB_DESCRIPTOR_CS_ENDPOINT :	MS_GENERAL
bNumEmbMIDIJack: 02
0103


Addr:1(0.0.1)

And the output of lsusb -vvv:

Bus 001 Device 057: ID 0763:3110 M-Audio 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               1.10
  bDeviceClass            0 
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0         8
  idVendor           0x0763 M-Audio
  idProduct          0x3110 
  bcdDevice            1.05
  iManufacturer           1 M-Audio
  iProduct                2 Keystation 49 MK3
  iSerial                 0 
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength       0x0085
    bNumInterfaces          2
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0xc0
      Self Powered
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           0
      bInterfaceClass         1 Audio
      bInterfaceSubClass      1 Control Device
      bInterfaceProtocol      0 
      iInterface              0 
      AudioControl Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength       0x0009
        bInCollection           1
        baInterfaceNr(0)        1
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        1
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         1 Audio
      bInterfaceSubClass      3 MIDI Streaming
      bInterfaceProtocol      0 
      iInterface              0 
      MIDIStreaming Interface Descriptor:
        bLength                 7
        bDescriptorType        36
        bDescriptorSubtype      1 (HEADER)
        bcdADC               1.00
        wTotalLength       0x0061
      MIDIStreaming Interface Descriptor:
        bLength                 6
        bDescriptorType        36
        bDescriptorSubtype      2 (MIDI_IN_JACK)
        bJackType               1 Embedded
        bJackID                 1
        iJack                  14 Keystation 49 MK3(USB MIDI)
      MIDIStreaming Interface Descriptor:
        bLength                 6
        bDescriptorType        36
        bDescriptorSubtype      2 (MIDI_IN_JACK)
        bJackType               2 External
        bJackID                 2
        iJack                   0 
      MIDIStreaming Interface Descriptor:
        bLength                 6
        bDescriptorType        36
        bDescriptorSubtype      2 (MIDI_IN_JACK)
        bJackType               1 Embedded
        bJackID                 3
        iJack                  15 Keystation 49 MK3(Transport)
      MIDIStreaming Interface Descriptor:
        bLength                 6
        bDescriptorType        36
        bDescriptorSubtype      2 (MIDI_IN_JACK)
        bJackType               2 External
        bJackID                 4
        iJack                   0 
      MIDIStreaming Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (MIDI_OUT_JACK)
        bJackType               1 Embedded
        bJackID                 9
        bNrInputPins            1
        baSourceID( 0)          2
        BaSourcePin( 0)         1
        iJack                  14 Keystation 49 MK3(USB MIDI)
      MIDIStreaming Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (MIDI_OUT_JACK)
        bJackType               2 External
        bJackID                10
        bNrInputPins            1
        baSourceID( 0)          1
        BaSourcePin( 0)         1
        iJack                   0 
      MIDIStreaming Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (MIDI_OUT_JACK)
        bJackType               1 Embedded
        bJackID                11
        bNrInputPins            1
        baSourceID( 0)          4
        BaSourcePin( 0)         1
        iJack                  15 Keystation 49 MK3(Transport)
      MIDIStreaming Interface Descriptor:
        bLength                 9
        bDescriptorType        36
        bDescriptorSubtype      3 (MIDI_OUT_JACK)
        bJackType               2 External
        bJackID                12
        bNrInputPins            1
        baSourceID( 0)          3
        BaSourcePin( 0)         1
        iJack                   0 
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
        bRefresh                0
        bSynchAddress           0
        MIDIStreaming Endpoint Descriptor:
          bLength                 6
          bDescriptorType        37
          bDescriptorSubtype      1 (GENERAL)
          bNumEmbMIDIJack         2
          baAssocJackID( 0)       9
          baAssocJackID( 1)      11
      Endpoint Descriptor:
        bLength                 9
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
        bRefresh                0
        bSynchAddress           0
        MIDIStreaming Endpoint Descriptor:
          bLength                 6
          bDescriptorType        37
          bDescriptorSubtype      1 (GENERAL)
          bNumEmbMIDIJack         2
          baAssocJackID( 0)       1
          baAssocJackID( 1)       3
can't get debug descriptor: Resource temporarily unavailable
Device Status:     0x0001
  Self Powered

Let me know if I can help get this keyboard model supported.

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