Sony Debug Assist board

From eLinux.org
Revision as of 14:53, 4 November 2014 by Tim Bird (talk | contribs)
Jump to: navigation, search

Here is information about the Sony Debug Assist board.

This board is used internally at Sony Mobile for remotely managing phones and phone development boards. Internally, it also goes by the name "CDB assist".

This board connects to the host using 2 USB cables and the the device under control via a USB cable, multiple jumper wires, and two power connectors (banana plugs).

The board allows for: 1. control of power to the device 2. serial debug uart (access to kernel serial console) 3. control of button presses to 3 different buttons

    • e.g. for a phone, this could control the power, volume up, and volume down buttons

4. control of USB connection between host and phone

    • vbus power on/off (to simulate connecting and disconnecting the USB connection from device to host)

The debug assist board is connected to the host using 2 USB cables. One USB cable presents to the host 2 interfaces:

  • a control interface for viewing the status and adjusting the settings of the debug assist board
  • a USB-serial interface for the phone's debug uart

These interfaces show up on the Linux host as /dev/ttyACM0 and /dev/ttyACM1 respectively

The second USB cable presents to the host the USB connection from the phone's USB port.

Here is ASCII art diagram for a normal debug setup:

 device to test                     Sony debug board                    Host computer
 +------------+                                                  +-----------------------------------------+
 |     power+ |----+           +-------------------------+       | /dev/ttyACM0  (control interface)       |
 |     power- |----+-----------|power +/- ------+-> usb0 |-------|    display and control power, buttons   |
 |            |                |                |        |       |    and vusb                             |
 |    button1 |----------------|button A wire --+        |       | /dev/ttyACM1  (serial port for device)  |
 |    button2 |----------------|button B wire --+        |       |    usually has kernel serial console    |
 |    button3 |----------------|button C wire --+        |       |                                         |
 |     ground |----------------|ground          |        |       |                                         |
 |    uart TX |----------------|uart TX wire  --+        |       |                                         |
 |    uart RX |----------------|uart RX wire  --+        |       |                                         |
 |            |                |        +-vusb--+        |       |                                         |
 |            |                |        |                |       |                                         |
 |    usb port|----------------|usb up -+---------- usb1 |-------| /dev/??? - (usb connection with device) |
 |            |                +-------------------------+       |                                         |
 +------------+                                                  |                                         |
                                                                 +-----------------------------------------

Using the Sony Debug Assist board

To see the status and control screen for the debug assist board, connect a USB cable from the "control" connector on the board to your Linux host machine, and on the host machine, access /dev/ttyACM0.

ex: minicom -o -D /dev/ttyACM0

The interface should look like this:

 WJ CDB Assist HW v2.1 / SW r52
 
 Voltage Setpoint/Actual           Current Setpoint/Actual
04000mV/00000mV  2500mA/0000mA
04000mV/00000mV  2500mA/0000mA
 
 [P/p] VBAT:off  [u] Set VBAT voltage  [i] Set VBAT current
 [A/a] Btn1:ON   [B/b] Btn2:off  [C/c] Btn3:off
 [V/v] VBus:ON   UART Vref=0000mV

This shows the voltage and current for the VBAT (power) outputs from the board, as well as the status of the lines that can be controlled from the board.

You can manually control the settings by entering the letter for the a particular function. Most line-control settings have dual-letter combination with upper-case to turn the line on and lower-case to turn the line off.

For example, to turn the power on to the phone, type 'P' (capital-P). This corresponds to the VBAT power output lines from the debug board.

To turn the power off, type 'p' (lower-case-p).

On some terminals, the voltage and current display are shown in a double-tall font. But on other terminals, the voltage and current display are shown as two duplicate lines (shown in this example).