Cherry theobroma SYSTEMS PX30-mQ7 User manual

featuring the Rockchip PX30 application processor
Quad-Core ARM Cortex-A35
PX30-μQ7
USER MANUAL
System-on-Module
Document revision: v1.2.0-1-g5ccabb6
Issue date: Jun 21, 2023


Contents
1 Introduction 1
1.1 DeviceOverview .................................................. 1
2 First Steps 2
2.1 InserttheModule.................................................. 2
2.2 MounttheFan(optional).............................................. 2
2.3 PowerUp ...................................................... 2
3 Using the EVK 4
3.1 EvaluationBoardOverview ............................................ 4
3.2 PowerSupply.................................................... 5
3.3 ControlButtonsandSwitches ........................................... 6
3.4 CPUFan....................................................... 6
3.5 BootOrder ..................................................... 7
3.6 USBSerialConsole................................................. 7
3.7 RS-232andRS-485................................................. 8
3.8 TTLUART ..................................................... 9
3.9 Ethernet....................................................... 9
3.10 SD-Card....................................................... 10
3.11 USBInterfaces ................................................... 10
3.12 DisplayandCamera ................................................ 11
3.13 RTC ......................................................... 12
3.14 SPIandI2C..................................................... 13
3.15 GPIOs........................................................ 14
3.16 Audio ........................................................ 15
3.17 CANBus ...................................................... 16
3.18 CTRLI/OConnector................................................ 17
3.19 MISCConnector.................................................. 17
3.20 JTAGConnector .................................................. 18
4 Software Overview 19
4.1 SupportedDistributions .............................................. 19
4.2 CompilingLinuxApplications........................................... 19
5 Debian image guide 20
5.1 PreparethehostPC................................................. 20
5.2 CompiletheATF .................................................. 20
5.3 CompileU-Boot .................................................. 21
5.4 CompiletheLinuxkernel ............................................. 21
5.5 Buildingthedebosimage.............................................. 22
6 Building a Yocto image 23
6.1 Prerequisites .................................................... 23
6.2 BSPmetalayer ................................................... 23
6.3 Extendedmetalayer ................................................ 26
7 Deploy a disk image 29
7.1 DeployonSDCard................................................. 29
7.2 DeployoninternaleMMC............................................. 29
8 Wifi 31
8.1 Antenna....................................................... 31
8.2 ConnectingtoaWifinetwork ........................................... 31
8.3 Flashingthewififirmware ............................................. 31
9 Serial Number & MAC Address 33
9.1 SerialNumber.................................................... 33
PX30-uQ7 User Manual
©Theobroma Systems Design und Consulting GmbH
v1.2.0-1-g5ccabb6
Page i

9.2 MACAddress.................................................... 33
10 Phosh graphical shell 34
10.1 Usage ........................................................ 34
10.2 Knownissues .................................................... 35
11 Hardware Guide 36
11.1 Q7Implementation................................................. 36
11.2 Q7ConnectorPinout................................................ 37
11.3 SignalDetails .................................................... 39
11.4 On-boardDevices ................................................. 42
11.5 WifiandBluetoothmodule............................................. 44
11.6 USB ......................................................... 46
11.7 UsingQsevenSignalsasGPIO........................................... 47
11.8 ElectricalSpecification............................................... 48
11.9 MechanicalSpecification.............................................. 49
12 Revision History 50
v1.2.0-1-g5ccabb6
Page ii

1 Introduction
Congratulations for acquiring our new product, combining best-in-class performance with a rich set of peripherals.
Note: The latest version of this manual and related resources can always be found on our website at the following address:
https://www.theobroma-systems.com/som-product/px30-uq7/
1.1 Device Overview
PX30 is a high-performance Quad-core application processor designed for personal mobile internet device and other digital
multimedia applications. PX30 is a 64-bit low power processor with Quad Core ARM Cortex A35 and dual core Mali G31
GPU. These 64-bit capable ARMv8 Cortex A35 processors support both the ARM Crypographic Extension (e.g.for wire-rate
AES encryption) and AdvSIMD vector processing. The ability to receive camera sensor input through a MIPI-CSI interface and
to process the resulting imagestream in real-time with the powerful ARM processor cores enables vision and image-analytics
applications.
PX30-uQ7 User Manual
©Theobroma Systems Design und Consulting GmbH
v1.2.0-1-g5ccabb6
Page 1

2 First Steps
This chapter provides instructions for getting the PX30-uQ7 EVK running after opening the box.
2.1 Insert the Module
Insert the PX30-uQ7 module at a 30-degree angle into the connector in the base board. Once fully inserted, push it down until
it rests on the standoffs and check alignment of the mounting holes.
Note: The module springs back into the 30-degree angle once released. This is expected, and alignment will be kept. The
module will be secured into place.
Fig. 2.1: Module mounting
2.2 Mount the Fan (optional)
The fan is only necessary in exceptionally high ambient temperatures. Under normal conditions, the PX30 operates passively
cooled.
2.3 Power Up
For bootloader configuration and Linux console, the serial interface can be used. Connect either a Micro-USB or RS-232
cable to the corresponding port. Select the correct UART with UART selector slider (1). For Micro-USB, the slider has to be
in the right position to route the default console (UART0) to the USB-UART bridge. For RS-232, the slider has to be in the left
position and the protocol slider (2) has to be in the RS-232 position (see Fig. 2.2 Serial console and boot configuration ).
Connect the power supply and verify the sliders are in the position
Normal Boot
(3) and
Normally Off
(4). Press the
Power
Button
(5) to power the board. You will see the boot progress and later on a login prompt on the serial interface. If the display
is connected, video output will follow shortly after.
v1.2.0-1-g5ccabb6
Page 2

Power
USB UART
RS232
1
2
345
Fig. 2.2: Serial console and boot configuration
PX30-uQ7 User Manual
©Theobroma Systems Design und Consulting GmbH
v1.2.0-1-g5ccabb6
Page 3

3 Using the EVK
This chapter provides instructions for using the EVK (also called Haikou), such as booting and how to configure and use I/O
peripherals (e.g. serial console, Ethernet).
3.1 Evaluation Board Overview
An overview of the available connectors and devices on the EVK is shown below.
Note: The PX30-uQ7 does not support HDMI and PCIe x4 (they are shown with a * in the next figure).
v1.2.0-1-g5ccabb6
Page 4

UPDI
SPI+I2C+1-wire
GPIO
Misc I/O
CTRL I/OSMBus
CAN
Buzzer
I2S
FAN
Battery
SD - Card
Slot
Display Connector
PCIe x4 *
+12 Power
Audio
Ethernet
2x USB 2.0
USB 2.0
USB UART
USB OTG
HDMI *
RS232
Power
Reset
Wake
Sleep
Batlow
Power Mode
BOOT SW
LID SW
Fig. 3.1: The baseboard with PX30-uQ7 module
(connectors marked with a * are not supported)
3.2 Power Supply
The baseboard can operate with a single 12V DC power supply.
PX30-uQ7 User Manual
©Theobroma Systems Design und Consulting GmbH
v1.2.0-1-g5ccabb6
Page 5

Fig. 3.2: 12V Power connector
Power can be controlled manually from the board using the
Power
control buttons and switches, located on the lower right
side of the board (see Section 3.1 Evaluation Board Overview).
Depending on the setting of
Power Mode
(
Normally On / Normally Off
) switch, the board will boot as soon as it receives
power.
3.3 Control Buttons and Switches
The control buttons (see Fig. 3.1 The baseboard with PX30-uQ7 module) provide the following functionality:
•
Power
toggles the module power supply.
•
Reset
triggers a module reset.
•
Batlow
,
Sleep
and
Wake
are routed to GPIOs on the uQ7 module.
Several slider switches are located on the lower left:
•
LID SW
is routed to a GPIO on the module, simulates lid open/close.
•
Power Mode
(
Normally On / Normally Off
), as described above, sets the state after power loss.
•
BOOT SW
(
BIOS Disable / Normal Boot
) forces SD card boot or the normal boot order, respectively.
3.4 CPU Fan
Operation in high environmental temperatures may require a CPU fan. The fan connector is located next to the bottom right
corner of the Q7 expansion area.
v1.2.0-1-g5ccabb6
Page 6

GND
+12V
FAN_TACHON
FAN_PWMOUT
Fig. 3.3: Fan connector
Note: The fan is only necessary in high ambient temperatures. Under normal conditions, the PX30-uQ7 operates passively
cooled.
3.5 Boot Order
The used boot order of the PX30-uQ7 module depends on the value of the
BIOS_DISABLE#
signal. On the Haikou baseboard,
this signal can be set using a slider switch (
BOOT SW
), with the two positions labeled Normal Boot, and BIOS Disable.
As shown in the table below, the BIOS Disable position disables the eMMC storage device:
Normal Boot BIOS Disable
1 eMMC storage SD card
2 SD card USB loader
3 USB loader
If no bootloader is found on any storage device, the PX30-uQ7 module will go into USB loader mode, showing up as a USB
device on the USB-OTG port.
The electrical state of the
BIOS_DISABLE#
signal for both slider positions is shown below:
Slider Position
BIOS_DISABLE#
signal
Normal Boot Floating (on-module pull-up to 3.3V)
BIOS Disable GND
3.6 USB Serial Console
The evaluation board contains an on-board Silicon Labs CP2102N USB-serial converter. Connect the included Micro-USB
cable to the Micro-USB jack labeled
USB-UART Bridge
:
PX30-uQ7 User Manual
©Theobroma Systems Design und Consulting GmbH
v1.2.0-1-g5ccabb6
Page 7

Fig. 3.4: USB UART
The serial converter does not require additional drivers on Windows and Linux.
For macOS, drivers are available from Silicon Labs: https://www.silabs.com/products/development-tools/software/
usb-to-uart-bridge-vcp-drivers
The PX30-uQ7 module has two external UARTs:
•UART0 is, by default, used for the serial console for interactive login.
•UART1 is unused by default and can be freely used for machine-to-machine communications or other purposes.
The switch
UART0 / UART1
cross-switches UART0 and UART1 between the
RS232 / RS485
jack and the onboard USB-
serial converter:
Switch Position
RS232 / RS485
jack connected to: USB-serial converter connected to:
UART0
UART0 (interactive console) UART1
UART1
UART1 UART0 (interactive console)
For interactive login through the USB-serial converter, make sure the switch is on the
UART1
position.
Note:
UART1
is the name of the UART exposed on the Haikou baseboard. It is actually connected to the
UART5
controller on
the PX30 SoC.
Incidentially,
UART0
on Haikou is connected to the
UART0
controller on the PX30 SoC.
Picocom can be used to connect via the serial line (assuming the USB-serial converter is USB0):
picocom -b115200 /dev/ttyUSB0
Note: Make sure to disable software flow-control (XON/XOFF). Otherwise serial input may not be recognized.
After system boot-up, the login console appears on the terminal:
px30-uq7 login:
You can log in as
root
with password
root
.
3.7 RS-232 and RS-485
To connect via RS-232 or RS-485, connect to the
RS232 / RS485
jack on the base board.
v1.2.0-1-g5ccabb6
Page 8

UART1
RS232
RS485
FULL/HALF
DUPLEX
UART0
Fig. 3.5: RS-232 connector
The switch labeled
RS-232 / RS-485
selects between RS-232 and RS-485 mode on the jack.
In RS-485 mode, the switch labeled
Full Duplex / Half Duplex
selects full- or half-duplex mode, respectively. It has no
effect in RS-232 mode, which is always full-duplex.
3.8 TTL UART
UART0 and UART1 are also available through the pin headers
P12 UART0
and
P30 UART1
next to the
RS232 / RS485
jack.
The signal level is 3.3V.
3.9 Ethernet
The PX30-uQ7 has built-in Fast Ethernet (100Mbit/s) routed to a standard RJ-45 jack on the evaluation board.
Fig. 3.6: Ethernet jack
The SD card that is shipped with the EVK is configured to automatically retrieve an IP address via DHCP and provides SSH
login on port 22.
PX30-uQ7 User Manual
©Theobroma Systems Design und Consulting GmbH
v1.2.0-1-g5ccabb6
Page 9

3.10 SD-Card
The PX30-uQ7 supports UHS SD cards and maximum writing speed on the SD card is 50MB/s. The practical writing and
reading speeds depend on the capabilities of the inserted SD card.
Fig. 3.7: SD card reader
3.11 USB Interfaces
The PX30-uQ7 provides four USB ports:
•1x USB 2.0 OTG
•3x USB 2.0 Host
Fig. 3.8: USB 2.0 OTG port (dual-role port: can be used as a host or device interface)
v1.2.0-1-g5ccabb6
Page 10

Fig. 3.9: USB 2.0 host ports
3.11.1 Connecting an External USB Drive
To connect a USB drive, plug it into one of the USB ports. The system should recognize the drive immediately. Check the
kernel log to find the device name:
dmesg -f
You will be able to mount its partitions (assuming mapping to
/dev/sdb1
):
mkdir /mnt/usb1
mount /dev/sdb1 /mnt/usb1
ls /mnt/usb1
3.12 Display and Camera
The PX30-uQ7 supports display output on the LVDS A interface and the camera on the LVDS B interface.
For MIPI-DSI and MIPI-CSI, the Qseven LVDS pins are used. Those pins are routed to the
Video connector
. This ex-
pansion slot uses a PCIe connector as mechanical connection, which allows easy development of adapter boards for various
different display types.
Qseven Port Function Alternate Function
LVDS A MIPI-DSI LVDS
LVDS B MIPI-CSI
PX30-uQ7 User Manual
©Theobroma Systems Design und Consulting GmbH
v1.2.0-1-g5ccabb6
Page 11

NC
GND
LVDS_A3_N
LVDS_A3_P
GND
GND
LVDS_A2_N
GND
LVDS_A2_P
GND
LVDS_A1_N
LVDS_A1_P
GND
NC
GND
LVDS_A0_N
LVDS_A0_P
LVDS_A_CLK_N
GND
LVDS_A_CLK_P
GND
GND
LVDS_B_CLK_N
LVDS_A_CLK_P
GND
LVDS_B3_N
LVDS_B3_P
GND
LVDS_B2_N
GND
LVDS_B2_P
GND
GND
LVDS_B1_N
LVDS_B1_P
GND
DP_HPD#
LVDS_B0_N
GND
LVDS_B0_P
NC
GND
LVDS_PEN
3V3
3V3
LVDS_BLT_CTRL
LVDS_BLEN
NC
GPO0
12V
GND
12V
GND 12V
LVDS_BLC_DAT
NC
LVDS_BLC_CLK
3V3
GND
LVDS_DID_DAT
LVDS_DID_CLK
12V
GND
12V
Fig. 3.10: Video connector pinout
The kernel devicetree defines the used display configuration. Example device trees for various output configurations are pro-
vided with the EVK software package.
To specify which devicetree should be loaded on boot, edit the configuration variable
FDT
in the file
/boot/extlinux/
extlinux.conf
. For example to enable support for the Haikou Video Demo adapter write:
FDT /boot/px30-ringneck-haikou-video-demo.dtb
Note: For systems using FIT images (such is the case for Yocto images), the
kernel
variable should be edited instead:
kernel /fitImage#conf-rockchip_px30-ringneck-haikou-video-demo.dtb
Filename Functions
px30-ringneck-haikou.dtb
px30-ringneck-haikou-video-demo.dtb Touchscreen display, camera
Requires Video Demo adapter
3.13 RTC
The PX30-uQ7 contains a real-time clock (RTC) on-module.
Note: This functionality is implemented in the optional Mule companion controller (see Section 11.4.4 Companion Controller
1and Section 11.4.5 Companion Controller 2).
The RTC is read by the kernel on boot-up and used to set the system clock.
To check the RTC value, use
hwclock
:
hwclock
Thu 22 Oct 2022 01:49:20 PM CEST -0.826662 seconds
The RTC will be automatically set to the system clock on shutdown, so you can set the system clock using the date command
and reboot to update the RTC:
v1.2.0-1-g5ccabb6
Page 12

date --set 2022-10-22
date --set 04:12:33
You can also update the RTC immediately, again with
hwclock
:
hwclock -w
3.14 SPI and I2C
SPI and I2C interfaces are both available on the pin header labeled
SPI+I2C+1-Wire
. The PX30-uQ7 does not support
1-Wire
.
Additional I2C buses are available on the
SMBUS
header. Note that
SMB_DAT
,
SMB_CLK
,
SMB_ALERT#
are not supported by
the PX30-uQ7 module (shown in thin font in Fig. 3.12).
GND
I2C_DAT
1-Wire
SPIMISO
SPICS1#
3V3
I2C_CLK
SPIMOSI
SPICLK
SPICS0#
Fig. 3.11: I2C and SPI header
GND
BLC_DAT
BLC_CLK
DID_DAT
DID_CLK
3V3
3V_VCC_RTC
SMB_CLK
SMB_DAT
SMB_ALERT#
Fig. 3.12: SMBUS header
For I2C, the i2c-tools package is available in Debian:
PX30-uQ7 User Manual
©Theobroma Systems Design und Consulting GmbH
v1.2.0-1-g5ccabb6
Page 13

apt-get install i2c-tools
3.14.1 Linux I2C Bus Numbering
Linux identifies each I2C bus by a bus number. The table below shows the mapping between Q7 names, Linux bus number
and EVK header.
Q7 signals Linux bus # Haikou Header(s) Label on Haikou
Header
GP2_I2C_DAT/LVDS_DID_DAT
GP2_I2C_CLK/LVDS_DID_CLK
1
SMBus
&
Video
connector DID_DAT
DID_CLK
GP0_I2C_DAT
GP0_I2C_CLK
2
SPI+I2C+1-Wire I2C_DAT
I2C_CLK
eDP0_HPD#/LVDS_BLC_DAT
eDP1_HPD#/LVDS_BLC_CLK
3
SMBus
&
Video
connector BLC_DAT
BLC_CLK
The other I2C buses (as reported by
i2cdetect -l
) are internal to the module and not routed to the Q7 connector.
3.15 GPIOs
Eight GPIOs are provided on the pin header labeled
GPIO
.
The location on the board is displayed below:
GND
GPIO6
GPIO5
GPIO3
GPIO1
3V3
GPIO7
GPIO4
GPIO2
GPIO0
Fig. 3.13: GPIO header
The GPIO numbers printed on the board refer to numbers used in the Qseven specification. They are different than the ones
used in Linux via
/sys/class/gpio
.
The mapping is shown in the following table:
v1.2.0-1-g5ccabb6
Page 14

Q7 signal CPU pin Linux GPIO #
GPIO0 GPIO3_C6 118
GPIO1 GPIO3_D0 120
GPIO2 GPIO3_C7 119
GPIO3 GPIO3_D1 121
GPIO4 GPIO3_C0 112
GPIO5 GPIO3_A2 98
GPIO6 GPIO3_A1 97
GPIO7 GPIO2_B6 78
To calculate the Linux GPIO # for CPU pins that are not listed in this table, use the following formula:
n=(block_number *32)+(sub_block_number *8)+index
Where:
•
block_number
... index of the block number
•
sub_block_number
... the alphabetical index of the block name, minus 1
•
index
... the pin number within the block
Example:
GPIO3_C6 -> (3*32)+(2*8)+6=118
To enable a GPIO, write the Linux GPIO # to the special export file:
$ echo 118 > /sys/class/gpio/export
$ cat /sys/class/gpio/gpio118/direction
in
$ cat /sys/class/gpio/gpio118/value
0
To set the direction to output, write
out
in the GPIO’s direction file:
$ echo out > /sys/class/gpio/gpio118/direction
$ echo 1 > /sys/class/gpio/gpio118/value
The GPIO will be set to a value of
1
(high at 3.3V).
3.16 Audio
The board provides two audio connectors for input and output.
Line-in
is on top and
Headphones
is on bottom of the audio
connector.
Note: The codec on the Haikou baseboard only supports a sample rate 48kHz . This restriction only applies to this specific
codec on the Haikou baseboard.
The I2S bus on the PX30-uQ7 module supports a sample rate up to 192kHz.
PX30-uQ7 User Manual
©Theobroma Systems Design und Consulting GmbH
v1.2.0-1-g5ccabb6
Page 15

Fig. 3.14: Audio input/output port
Additionally, an expansion connector for I2S audio is available on the bottom row of the board:
3V3
GND
I2S_CLK
I2S_SDO
I2S_DAT
3V3_LDO
I2S_RST#
I2S_WS
I2S_SDI
I2S_CLK
Fig. 3.15: Connecting to the audio expansion connector
3.17 CAN Bus
The board provides a CAN connector on the bottom row.
v1.2.0-1-g5ccabb6
Page 16
Other manuals for theobroma SYSTEMS PX30-mQ7
1
Table of contents
Other Cherry Single Board Computer manuals
Popular Single Board Computer manuals by other brands

SMART Embedded Computing
SMART Embedded Computing MVME8100 quick start guide

Actis
Actis VSBC-6872 Series user guide

Advantech
Advantech PCM-9375 A3 Startup manual

IEI Technology
IEI Technology WSB-945GSE Quick installation guide

IBASE Technology
IBASE Technology IB818F-I50 user manual

Icop
Icop VDX-6324RD user manual

iWave
iWave iW-RainboW-G25M Hardware user's guide

ADLINK Technology
ADLINK Technology cPCI-6841 Series user manual

IEI Technology
IEI Technology WSB-9452 Quick installation guide

IEI Technology
IEI Technology NANO-8522 user manual

AXIOMTEK
AXIOMTEK PICO880 Series Quick installation guide

CogniMem
CogniMem CM1K user manual