Project

General

Profile

UART » History » Revision 60

Revision 59 (Denis 'GNUtoo' Carikli, 03/08/2020 02:36 AM) → Revision 60/93 (Denis 'GNUtoo' Carikli, 03/08/2020 02:37 AM)

h1. UART 

 There is an in-depth article covering several Samsung devices in the [[SamsungSerial]] page 

 

 h2. Settings 

 |_. Device and documentation |_. I/O voltage |_. ID<->GND |_. SOC TX |_. SOC RX |_. switch |_. stock bootloader settings |_. Comments | 
 | GT-I9100 | | 510k | | | "MAX8997":https://git.replicant.us/replicant/kernel_samsung_smdk4412/tree/arch/arm/configs/lineageos_i9100_defconfig#n1294 | *UART settings*: ttySAC2 115200 8N1  
  To get the UART enabled at boot with the stock bootloader: 
 * Power the phone off and remove the battery 
 * Put a battery in 
 * Press the select button 
 * Plug the UART 
 * Stop pressing the select button | At some point the boot procedure switches to the modem UART, it's probably some linux driver doing that | 
 | GT-I9100G_CHN_CHN | 1.8V[8] ? | 619k[9] | D- | D+ | ? | *UART settings*: 115200 8N1 | Very few prints from Xloader, the next bootloader used by Android 2.6.3 doesn't seem to print much | 
 | GT-I9300 |/2. 1.8V[1] |/4. 619 kOhms[3] |/4. D- |/4. D+ |/4. MAX77693[5] |/4. *UART settings*: 115200 
 * pressing the volume-down button during boot increase verbosity |/2. It gives a shell once Replicant 6 has booted | 
 | GT-I9305 | 
 | GT-N7100 | ? | | 
 | GT-N7105 | ? | | 
 | [[GalaxyNexusI9250SerialConsole|Galaxy Nexus (GT-I9250)]] | | 619 kOhms[4] | D+ | D- | FSA9480[7] |    * By default: ttyFIQ0, 115200 8N1 
 * With patching: ttyO2, 115200 8N1 
 See [[GalaxyNexusI9250SerialConsole]] for more details. | | 
 | [[NexusSI902xSerial|Nexus S]] | | 150 kOhm | | | FSA9480 | | | 
 | [[OptimusBlackSerial|Optimus Black (P970)]] | 1.8V[6] | N/A[2] | | | DP3T | | | 
 | ODROID-U3, console UART | 1.8V |\4. "connector":https://wiki.odroid.com/accessory/development/usb_uart_kit#odroid_port_description_of_uart_connector | *UART settings*: ttySAC1, 115200 8N1 | | 
 | ODROID-U3, IO pins UART | 1.8V |\4. "connector":https://wiki.odroid.com/old_product/odroid-x_u_q/odroid_u3/u3_ioport_uart | *UART settings*: ttySAC0, 115200 8N1 | | 

 fn1. Measured between USB GND and USB VCC 

 fn2. Code is required to use the switch as you need to configure both the MUIC and DP3T switch 

 fn3. See "The related driver source code":https://git.replicant.us/replicant/kernel_samsung_smdk4412/tree/drivers/misc/max77693-muic.c#n102 

 fn4. See the "postmarketOS wiki page on Serial debugging":https://wiki.postmarketos.org/wiki/Serial_debugging 

 fn5. See the "driver":https://git.replicant.us/replicant/kernel_samsung_smdk4412/tree/drivers/misc/max77693-muic.c and the "ifixit teardown":https://www.ifixit.com/Teardown/Samsung+Galaxy+S+III+Teardown/9391 

 fn6. Reference: [[OptimusBlackSerial]] 

 fn7. See "board-tuna-connector.c":https://git.replicant.us/replicant/kernel_samsung_tuna/tree/arch/arm/mach-omap2/board-tuna-connector.c "fsa9480.c":https://git.replicant.us/replicant/kernel_samsung_tuna/tree/drivers/misc/fsa9480.c in "kernel_samsung_tuna":https://git.replicant.us/replicant/kernel_samsung_tuna 

 fn8. Works, as it was tested on the device. TODO: measure the voltage, as lower UART voltages often works with higher voltage levels. 

 fn9. Works, as it was tested on the device. TODO: look the official reference in the driver for it. 

 

 h2. Datasheets 

 * "FSA9480.pdf":https://media.digikey.com/pdf/Data%20Sheets/Fairchild%20PDFs/FSA9480.pdf 

 h2. Interesting links 

 * There is a "page on Serial debugging":https://wiki.postmarketos.org/wiki/Serial_debugging on the postmarketOS wiki that contains information for using the serial port for many smartphones models. 
 * "mv-uart":https://osmocom.org/projects/mv-uart/wiki A serial port adapter with configurable voltages (and GPIOs) 
 * "DHylands_SGS2_SerialAdapter":https://wiki.mozilla.org/DHylands_SGS2_SerialAdapter : A very compact setup but with fixed resistor value.