[Feb 26] Recalbox beta v3.1- Rock64 |[Feb 26] Recalbox 190222- RockPro64 / Minimal Debian by mrfixit2001 - 190222 - RockPro64 |[Feb 26] Q4OS 2.7-r2 - Pinebook 1080P / Pinebook |[Feb 22] Batocera Linux 5.20-20190121- RockPro64 | [Feb 19] Manjaro KDE 19.02 / Manjaro LXQT 19.02 - Pinebook1080P / Pinebook | [Feb 19] Slackware Aarch64 Miniroot and XFCE 20190201 - RockPro | [Feb 19] Slackware Aarch64 Miniroot and XFCE 20190201 - Rock64

Project Inspiration | Get Started | IRC Logs | Forum Rules/Policy


Rock64 Boot-up Bug with Serial Console Cable
#1
Bug 
Greetings,

The Rock64 often will not boot-up with a serial console connected to the console uart pins (6, 8, & 10).

Symptom:  lights come on, nothing happens at all.

Solution:  unplug the Tx line coming in on pin(10) prior to applying power for boot-up.




The Tx line often (if not always) has 3v3 on it when the other end is powered up, even in the idle state.  This voltage present on pin(10) of the Rock64 prevents it from booting, sadly.  I have reliably verified that unplugging the Tx line in on pin(10) of the Rock64 will allow the boot-up to start...  as it boots up , carefully plug the Tx line back onto pin(10).

Also noticed that the Tx line (if left connected to pin[10] on Rock64 power-down) will back-feed into the board, which will dimly light the red LED (small glow) !  This back-feed is preventing boot-up.

Fortunately the serial console monitor does not need this line connected to monitor as long as it has the Rx connection and a good ground,  so unplugging the line from pin(10) does not prevent monitoring the boot-up messages on the serial console.

Note:   This problem occurs on both of my boards;  dev board pre production, and the production master-piece which came last week !

Note:   At this point I don't know if the current draw on the Tx line might damage the monitor ; currently I'm using my PineA64 desk machine as the serial monitor for my Rock64 boards.


marcushh777    Cool

please join us for a chat @  irc.pine64.xyz:6667   or ssl  irc.pine64.xyz:6697

( I regret that I am not able to respond to personal messages;  let's meet on irc! )
Reply
#2
(08-24-2017, 04:33 PM)MarkHaysHarris777 Wrote: Greetings,

The Rock64 often will not boot-up with a serial console connected to the console uart pins (6, 8, & 10).

Symptom:  lights come on, nothing happens at all.

Solution:  unplug the Tx line coming in on pin(10) prior to applying power for boot-up.


The async serial standard dictates a "marking" or "1" condition as idle which is a negative voltage on ancient RS232 circuits, but positive 3.3 or 5 volts on TTL so the serial line will idle at that level - and placing ANY voltage on a SOC's input pins prior to proper power up is very bad juju since it can result in SCR latchup of the SOC frying the chip - so you are lucky that it's just causing a recoverable boot issue.

This is tough to fix in software since it involves direct current leakage at the hardware level.

There are several simple fixes to safely prevent this while maintaining full serial console functionality.

1)  Hardware - use a USB - TTL adaptor cable with an open collector TX driver (may also need 10k pullup to the Rock64 3.3 volt rail if the SOC internal pullup is not enabled on pin 10)

2) Hardware  - add a simple 2n2222 or similar NPN switching transistor (or logic level n-channel mosfet) buffer.  The NPN transistor collector is connected to the Rock64's Serial Console IN on pin 10, the base is connected to the Rock64 3.3 volt supply rail through a 4.7K resistor, and the emitter goes to the TX OUT of your USB-TTL serial converter (depending on whether software on-chip pullup is enabled on pin 10, may also need a 10k pullup from pin 10 to the Rock64's GPIO to the Rock64 3.3volt supply rail).

3) Hardware/Software  - and lastly, the simplest fix from a hardware point of view, but one that may require  minor software patches is to add a 10k series resistor between the USB-TTL converter TX OUT and Rock64 pin 10 UART2_RX console input - and then make sure that the console port has no pullup enabled in software and is set to 56k or lower baudrate. Serial port configuration changes may be needed for this to work because the serial port won't work reliably with a series resistor at high data rates or when working against a strong on chip pullup.  Big downside to this is that the port will oscillate or pick up noise if not terminated with a pullup if there is no console connected. Some SOC's provide a 'weak pullup' to get around this type of situation, but I am not sure that this is available with the RK3328.

If you are handy with a soldering iron the 2n2222 or equivelent low level switching transistor fix is probably simplest.  All these fixes assume that the issue is purely a power up sequence current leakage issue that can be fixed by limiting current flow into the serial port prior to the Rock64 powering up.

All bets are off if there is also a software issue regarding the port seeing a ttl "1" condition too early in the boot sequence.
Reply


Possibly Related Threads...
Thread Author Replies Views Last Post
  Rock64 and USB 3.0 HDD + USB 2.0 CC2531 doungle ABoosh 3 174 03-19-2019, 09:19 AM
Last Post: azacan
Lightbulb Mount a HeatSink on the Rock64 using 3M Thermal Tapes MarkHaysHarris777 19 7,290 03-13-2019, 12:27 PM
Last Post: methanoid
  Attaching a physical button to the ROCK64 momoster69 1 132 03-03-2019, 09:15 AM
Last Post: dkryder
  Is my Rock64 is dead ? totalgaara 5 322 02-22-2019, 02:01 AM
Last Post: beerzox
  PCIe extender cable for M2 grimace 1 129 02-15-2019, 11:15 AM
Last Post: fonix232
  ROCK64 and 16x2 LCD Screen cybersecdef 7 1,278 02-07-2019, 07:44 AM
Last Post: andy22584
  Rock64 Stereo Audio DAC add-on board Hukmut 1 154 02-06-2019, 06:09 PM
Last Post: tllim
  1wire DS18b20 on Rock64? mypineme 1 171 12-24-2018, 07:09 AM
Last Post: mcerveny
  Rock64 +DAC + CPU Cooler maxves 2 309 12-03-2018, 02:19 AM
Last Post: maxves
  Rock64 micro-sd controller defective? soichiro 18 1,774 12-01-2018, 06:11 PM
Last Post: z4v4l

Forum Jump:


Users browsing this thread: 1 Guest(s)