Some phones have a serial port accessible from the outside, this makes debugging boot problems way easier since you can see the boot messages from the bootloader and the early kernel stuff. For example the whole nexus range has serial debugging through the headphone jack.
Nexus debug cable
The nexus phones multiplexed the serial debug lines with the headphone audio lines. To switch it into serial mode you have to supply -3V to the mic port. The uart lines themselves are 1.8V. If you use a 3.3V usb-to-uart adapter the signal from the phone will probably work, for the TX side you have to add a resistor divider to lover the voltage for the phone. Here's the schematic for a nexus debug cable:
This cable has been tested with:
- Nexus 5 hammerhead
It should work fine with:
- Nexus 7 2013 (flo)
The Nexus 7 2012 (grouper) does not work with this setup and likely does not have any serial UART capabilities at all.
Google open sourced their own debug cable design in the AOSP repository.
Nexus USB debug cable
The nexus S and galaxy nexus have the serial port multiplexed with the USB connector instead of the headphone connector. This is the schematic for those devices, For this cable too it's important to have a 3.3V usb-to-uart adapter.
It should work with:
- Nexus S
- Galaxy Nexus
- Samsung GT-I8190 (Galaxy S3 mini)
- Samsung GT-I5800 (Galaxy 3)
- Samsung GT-P1000 (Galaxy Tab P1000)
- Samsung GT-S8500 (Wave)
- Samsung i897 (Captivate)
The Flame has open UART pads that are accessible underneath the outer and inner covers.
- TX - red
- GND - green
Pull-ups/downs are unneccesary, hook straight up to any FTDI/USB-to-serial.
See the following links:
Motorola Droid 4
A off-the-shelf USB-TTL Adapter with 3.3V signal level can be used together with a MicroUSB connector to access the phone's UART. By using a standard MicroUSB <-> USB A cable and just combine a USB jack with a cheap chinese USB-TTL adapter is space-saving and allows you to use the same MicroUSB cable to access the device in USB mode