RFE for next ROCK64 - Printable Version

+- PINE64 (
+-- Forum: ROCK64 (
+--- Forum: General Discussion on ROCK64 (
+--- Thread: RFE for next ROCK64 (/showthread.php?tid=6256)

RFE for next ROCK64 - mcerveny - 07-06-2018


I have some enhancement suggestion for next update of ROCK64:
  1. connector for RTC battery for RK805
  2. connector for RESET and POWERON
    - needed for external control (power on by event)
  3. connector for true PoE/PoE+/4PPoE (802.3af/802.3at/802.3bt with mode a,b,a+b over 1gbit) with 1GBit connector+magnetics for example "EDAC A70-112-331N126" or "LINK-PP LPJG0926HENL" (must be carefully routed with operating up to 600mA@57V and with PoE isolation requirements)
  4. connector between barrel power connector and board power (both pins, with installed jumpers from factory) that can be used for:
    - internal (in case) DC/DC converter (also isolated variant) from higher voltage (12V)
    - combined DC from embedded UPS battery with cooperation with external DC
    - combined DC from PoE DC/DC with cooperation with external DC (also possibility to supply any DC to external component back over DC connector (available power +-10W reserved for ROCK64 from 12.95W(PoE)/25.50W(PoE+)/51W(4PPoE) (for external powered usb hub, speakers, small lcd panel, camera, positioning motors, ...)))
  5. power distribution over mounting holes connected to barrel power connector selectable with pinheaders/jumpers (probably with additional internal DC/DC converter from previous point to compensate voltage drop for massive stacking) - see Paralella
  6. connector (with installed jumper from factory) to unselect internal SPI (SPI_CSN0_M2) (but with possibility to boot from external SPI flash directly from embedded ROM over PI-2 connector)
  7. larger internal SPI to accommodate boot+stripped_down_kernel+ramdisk miniroot with something like NOOBS (New Out Of the Box Software) distribution download from internet and etcher flash to local SDCARD/eMMC
  8. maybe connector with PMEB+VCC33_LAN+GND (or embed this to board - 1xLDO + 3xdiode? (untested)) from RTL8211F to implement Wake-on-LAN (WoL) with external logic but VCC33_LAN must be reworked to supply RTL8211F chip externally too. Example scenario (untested):
    1) new attach of PoE (ethernet connector) or external DC must start rk3328+rk805 to setup/config RTL82211F for WoL (actual behavior due to C736)
    2) PoE or external DC still available (eg. VCC_SYS==5V) but rk3328+rk805 is down (eg. no BUCK4 VCC_IO->VCC33_LAN) and VCC33_LAN externally over pin or with own LDO from VCC_SYS (combined power with diodes?)
    3) PMEB should signal WoL to pin or to POWERON (over diode or transistor)
  9. Colored connector like TinkerBoard or adafruit
  10. USB and power test pads from bottom to stack USB peripherals like RPI ZERO USB hub
  11. Add some programmable peripheral co-processor like 8-bit (AVR) or 32-bit (ARM M0+) or other hw peripheral rich chip (connected with i2c+interrupt to RK3328, connected to RESET/POWERON to RK805, serial firmware programming with external connection, maybe "alway-on" (not RK805) powered also on vBAT...) for programmable hw tasks like true PWM (motor or fan speed control), A/D (also for independent voltage/current board monitor), programmable sw logic, WoL monitor, external watchdog, oneWire bridge, IR transmitter ... with connection on PI2 unusable pins (11,12,13,24(SPI CSN0),29,31 and maybe 32-40)
  12. Add some simple undervoltage detector (op-amp comparator) to driver green led (LED705) (bicolor led (green/red) may be better)

I estimate material expenses about $1 (~14 pinheaders, ~3 diodes, ~1 LDO and replace "HANRUN HR911130A" to "LINK-PP LPJG0926HENL") + $0.5-$2 for coprocessor.

Something like this:
[Image: rock64_board_rfe.jpg]

RE: RFE for next ROCK64 - qux - 08-07-2018

Does it really miss 3.7V battery connector? Sad
Looking on the Pro version, but 12V 5A strict requirement looks not the best option for me.

RE: RFE for next ROCK64 - tllim - 08-08-2018

(08-07-2018, 06:50 AM)qux Wrote: Does it really miss 3.7V battery connector? Sad
Looking on the Pro version, but 12V 5A strict requirement looks not the best option for me.

ROCK64 don't have charging circuit. The up coming battery connector is 3V for RTC.

RE: RFE for next ROCK64 - qux - 08-08-2018

(08-08-2018, 12:38 AM)tllim Wrote: ROCK64 don't have charging circuit. The up coming battery connector is 3V for RTC.

Thanks a lot. Found schematics doc, see that 3.7V is really absent.
OK, but SY8113B converters marked with input 5..18V — does it really mean I can power the board with USB 5V (3..5A is a separate topic) or (roughly) battery pack consisting of 2..4 18650 batteries connected in series? Could it lead to any issues?

The separate question is possible insufficient input voltage: SY8113B is described as step-down only (?), so —  would it be OK to supply it with smth smaller than 5.0V  (4.8, e.g.)?

RE: RFE for next ROCK64 - mcerveny - 08-18-2018

The SPI pins should be reworked:
  • Embedded SPI-NOR flash (GD25Q128) should stay on SPI "pin multiplex 2" to be boot compatible with u-boot DTS and bootable from internal BOOTROM without modification and NOT connected to pinheader. This is usable for booting and upgrading SPI-NOR flash from u-boot (and after multiplexer switch from linux). "pinheader/switch" from previous post to suppress CSN0 to embedded SPI-NOR flash is not needed.
    • CLK == spi2_clk == GPIO3_A0 == spi0m2_clk
    • MISO == spi2_rxd == GPIO3_A2 == spi0m2_rx
    • MOSI == spi2_txd == GPIO3_A1 == spi0m2_tx
    • CS == spi2_csn0 == GPIO3_B0 == spi0m2_cs0
  • SPI "pin multiplex 0" will be used in linux and connected to pinheader. This will also change linux DTS for Rock64 (rk3328-rock64.dts) (and probably routing data to switch multiplex back to zero must be added (check GRF_COM_IOMUX/grf_con_spi_io_sel in TRM)):
    &spi0 {
        status = "okay";
        pinctrl-0 = <&spi0m0_clk &spi0m0_tx &spi0m0_rx &spi0m0_cs0 &spi0m0_cs1>;
        spidev@0 {
        spidev@1 {
    • CLK == spi0_clk == GPIO2_B0 == spi0m0_clk == pin 23
    • MOSI == spi0_txd == GPIO2_B2 == spi0m0_tx == pin 19
    • MISO == spi0_rxd == GPIO2_B1 == spi0m0_rx == pin 21
    • CS0 == spi0_csn0 == GPIO2_B3 == spi0m0_cs0 == pin 24
    • CS1 == spi0_csn1 == GPIO2_B4 == spi0m0_cs1 == pin 26 (already routed)

Impossible. There are none of SPI multiplex 0 (GPIO2_B0-3) pins outside RK3328 chip with cheap BGA395 package ! Sad