The Accessory Bay is the area behind the gimbal under the Solo that does not interfere with the 3DR Gimbal. It is intended for secondary accessories, including additional communications hardware and high power devices.
Accessory developers can attach hardware using the holes provided and connect to the iMX6 (Companion computer) via USB.
The accessory area is roughly 7.6 cm wide x 13.3 cm long x 10.2 cm deep.
Maximum payload of the system is 700g, the 3DR Gimbal + GoPro weigh approximately 390g, leaving 310g for accessories that are meant to be used with the 3DR Gimbal.
The Accessory Bay hole pattern is M2 screws in a 63 mm x 41 mm rectangular pattern. Ensure that the rectangle is not intersected by the path of the gimbal.
The diagram below shows the position of the accessory port.
The mating connector part number is JAE SJ038252 and can be purchased on Mouser.
The pinout of the Accessory Port is:
Pin | Name | Description |
---|---|---|
1. | USB D- | Negative differential data signal to iMX6 OTG USB port. |
2. | USB D+ | Positive differential data signal to iMX6 OTG USB port. |
3. | N/C | |
4. | N/C | |
5. | N/C | |
6. | N/C | |
7. | N/C | |
8. | N/C | |
9. | SER5 TX (DEBUG) | UART5 TX output from Pixhawk™ 2. |
10. | SER2RT | UART2 RTS output from Pixhawk™ 2 for flow control. Connect to device's CTS pin. |
11. | SER2Tx | UART3 RX signal to Pixhawk™ 2. Connect to device's TX pin. Voltage is 3.3V. |
12. | CANH1 | CAN bus high to the Pixhawk™ 2. |
13. | CANL1 | CAN bus low to the Pixhawk™ 2. |
14. | GND | Ground reference on Solo system. |
15. | BATT | 12V to 16.8V. Maximum combined current off bus (pins 15 and 30) is 1.1A (fuse: 1812L110/24DR). Maximum combined power 18.5W. |
16. | USB GND | |
17. | +5V | 4.75V to 5.4V voltage pin for USB device. Maximum combined current off bus (pins 17 and 19) is 1.05A (fuse: ST890DTR). Maximum combined power 5.7W. |
18. | N/C | |
19. | +5V | 4.75V to 5.4V voltage pin for USB device. Maximum combined current off bus (pins 17 and 19) is 1.05A (fuse: ST890DTR). Maximum combined power 5.7W. |
20. | N/C | |
21. | GND | Ground reference on Solo system. |
22. | N/C | |
23. | BUS ID | |
24. | SER5 RX (DEBUG) | UART5 RX input to Pixhawk™ 2. |
25. | SER2CT | UART2 CTS input to Pixhawk™ 2 for flow control. Connect to device's RTS pin. |
26. | SER2Rx | UART3 TX signal from Pixhawk™ 2. Connect to device RX pin. Voltage is 3.3V. |
27. | 3DRID | USB ID pin for OTG port on iMX6 OTG port |
28. | GND | Ground reference on Solo system. |
29. | GND | Ground reference on Solo system. |
30. | BATT | 12V to 16.8V. Maximum combined current off bus (pins 15 and 30) is 1.1A (fuse: 1812L110/24DR). Maximum combined power 18.5W. |
Two voltage sources are supplied to the Accessory Bay:
VCC 5V should be used to power the USB device. The combined total current for both VCC 5V pins is limited to 1.05A (the combined current for both pins).
VCC Battery can be used as a high-power supply for accessory hardware. The combined total current for both VCC Battery pins is limited to 1.1A (fuse: 1812L110/24DR) and the maximum power 18.5W.
An open source reference design for a breakout board can be found here.
The breakout board plugs into the accessory port. The exposed side of the board is as shown below.
The accessory port breaks out a subset of the available peripherals of the Pixhawk2 and iMX. Here is the mapping between the different naming schemes of peripherals available on Solo.
HAL | System | ArduCopter Parameter | Pixhawk2 | Solo Peripheral |
---|---|---|---|---|
px4io/sbus | /dev/ttyS0 | |||
uartA | /dev/ttyACM0 | USB | ||
uartB | /dev/ttyS3 | SERIAL3 | GPS | Internal GPS |
uartC | /dev/ttyS1 | SERIAL1 | Telem1 | |
uartD | /dev/ttyS2 | SERIAL2 | Telem2 | Acc. Port |
uartE | /dev/ttyS6 | SERIAL4 | Serial4 | Gimbal |
nsh console | /dev/ttyS5 | Serial5 | Acc. Port |
The main communication channels between the Accessory Bay, Pixhawk™ and Companion Computer are shown below. Note that only USB is available for developer communication with Solo (the CAN and Serial/MAVLink channel is shown dashed for this reason).
The USB OTG port is the recommended interface to the Accessory Bay. The port can act as either host or as a device, but typically the iMX6 acts as the host and the accessory as a connected USB device. The USB port enables interactions with Smart shots, DroneKit, and the Controller.
The iMX6 kernel comes with with drivers for FTDI and CDC-ACM USB serial devices. These can, for example, be used with all official Arduino devices.
Accessories typically connect to Solo as devices. Connect 3DRID
to GND
to set the USB port to host mode. Connect 5V, USB D+
, USB D-
and GND
to the corresponding pins of the USB device.
The IMX6 will connect in device mode if the 3DRBUS pin is not connected to GND. In device mode you can connect the Solo to a computer.
If you have the recommended accessory breakout board, use a jumper to connect 3DRID
to ground to set the iMX6 to host mode. Then use a USB OTG cable) to connect the device to the breakout board.
USB Serial devices are accessed using normal Linux methods. For example, to communicate with a USB serial adapter or Arduino from Python, you could use http://pythonhosted.org/pyserial/.
The USB routing on the mainboard does not meet the spec for USB “High Speed” (480Mbit/s), so the maximum in-spec speed is “Full Speed" (12Mbit/s). In practice most high speed devices should work.
The actual throughput will depend on the device being used.