USB PyMakr Failed to establish connection to board



  • I am developing a solution using the GPy module. I created a sensor board and used the Expansion Board 2.0 as a reference. I kept the FT234XD (USB to BASIC UART IC) design the same layout wise and connection wise as the Expansion Board 2.0 reference design with the exception I am not using the CTS and RTS pins. I am able to power the GPy module fine and the Host drivers on our Windows development system sees the FT234XD. When I run PyMakr and try and talk to the GPy module I get the following message "Failed to establish connection with the board". When I run PyMakr on pycom's Expansion 2.0 board everything works fine so I know the issue is in our design. I do not believe the issue is HW related but believe it is specific to the FT234XD device settings. We are using the factory default settings for the FT234XD. Are there any specific settings within the FT234XD that the GPy requires for properly using that interface? Is there anything we need to be aware of?

    We get the following Descriptor information from the FT234XD device on our design and the exact same information (with the exception of the device serial number) from FT234XD device on the pycom Expansion 2.0 board so it appears to be communicating properly from the host perspective.

    Device Descriptor:
    bcdUSB: 0x0200
    bDeviceClass: 0x00
    bDeviceSubClass: 0x00
    bDeviceProtocol: 0x00
    bMaxPacketSize0: 0x08 (8)
    idVendor: 0x0403 (Future Technology Devices International Limited)
    idProduct: 0x6015
    bcdDevice: 0x1000
    iManufacturer: 0x01
    0x0409: "FTDI"
    iProduct: 0x02
    0x0409: "FT230X Basic UART"
    0x0409: "FT230X Basic UART"
    iSerialNumber: 0x03
    0x0409: "DO02KN4D"
    bNumConfigurations: 0x01

    ConnectionStatus: DeviceConnected
    Current Config Value: 0x01
    Device Bus Speed: Full
    Device Address: 0x10
    Open Pipes: 2

    Endpoint Descriptor:
    bEndpointAddress: 0x81 IN
    Transfer Type: Bulk
    wMaxPacketSize: 0x0040 (64)
    bInterval: 0x00

    Endpoint Descriptor:
    bEndpointAddress: 0x02 OUT
    Transfer Type: Bulk
    wMaxPacketSize: 0x0040 (64)
    bInterval: 0x00

    Configuration Descriptor:
    wTotalLength: 0x0020
    bNumInterfaces: 0x01
    bConfigurationValue: 0x01
    iConfiguration: 0x00
    bmAttributes: 0x80 (Bus Powered )
    MaxPower: 0x2D (90 Ma)

    Interface Descriptor:
    bInterfaceNumber: 0x00
    bAlternateSetting: 0x00
    bNumEndpoints: 0x02
    bInterfaceClass: 0xFF
    bInterfaceSubClass: 0xFF
    bInterfaceProtocol: 0xFF
    iInterface: 0x02
    0x0409: "FT230X Basic UART"
    0x0409: "FT230X Basic UART"

    Endpoint Descriptor:
    bEndpointAddress: 0x81 IN
    Transfer Type: Bulk
    wMaxPacketSize: 0x0040 (64)
    bInterval: 0x00

    Endpoint Descriptor:
    bEndpointAddress: 0x02 OUT
    Transfer Type: Bulk
    wMaxPacketSize: 0x0040 (64)
    bInterval: 0x00

    Any help or advice with this would be appreciated.


Log in to reply
 

Pycom on Twitter