Files
bikinibottom/Turing Pi/compute-modules.md
2025-11-15 14:58:54 +01:00

11 KiB
Raw Blame History

Compute Modules

Install OS / headless installation

SoQuartz (RK3566)

soquartz-cm.webp

Specifications
CPU Architecture
  • Quad-core ARM Cortex-A55@1.8GHz
  • AArch32 for full backwards compatibility with ARMv7
  • ARM Neon Advanced SIMD (single instruction, multiple data) support for accelerated media and signal processing computation
  • Includes VFP hardware to support single and double-precision operations
  • ARMv8 Cryptography Extensions
  • Integrated 32KB L1 instruction cache and 32KB L1 data cache per core
  • 512KB unified system L3 cache
GPU (Graphics Processing Unit) Capabilities
  • Mali-G52 2EE Bifrost GPU@800MHz
  • 4x Multi-Sampling Anti-Aliasing (MSAA) with minimal performance drop
  • 128KB L2 Cache configurations
  • Supports OpenGL ES 1.1, 2.0, and 3.2
  • Supports Vulkan 1.0 and 1.1
  • Supports OpenCL 2.0 Full Profile
  • Supports 1600 Mpix/s fill rate when at 800MHz clock frequency
  • Supports 38.4 GLOP/s when at 800MHz clock frequency
Neural Process Unit NPU Capability
  • Neural network acceleration engine with processing performance of up to 0.8 TOPS
  • Supports integer 8 and integer 16 convolution operations
  • Supports the following deep learning frameworks: TensorFlow, TF-lite, Pytorch, Caffe, ONNX, MXNet, Keras, Darknet
System Memory
  • RAM Memory Variants: 2GB, 4GB, 8GB LPDDR4.
  • Storage Memory: optional 128Mb SPI Flash and optional eMMC module from 8GB up to 128GB
Network
  • 10/100/1000Mbps Ethernet
  • WiFi 802.11 b/g/n/ac with Bluetooth 5.0
Setup
  1. Flash the Plebian image to a SD card/ EMMC.
  2. Boot.
  3. ssh as "pleb/pleb" and complete setup
sudo vim /etc/sudoers.d/pleb

pleb ALL=(ALL:ALL) NOPASSWD: ALL
sudo dpkg-reconfigure locales
sudo timedatectl set-timezone Europe/Paris
sudo apt update && sudo apt install -y curl

curl -O https://overviewer.org/~pillow/up/75bea78e59/devicetrees-plebian-quartz64-20230601130309-arm64.deb

sudo dpkg -i devicetrees-plebian-quartz64-20230601130309-arm64.deb

# sudo sysctl -w net.core.rmem_default=262144
# sudo sysctl -w net.core.rmem_max=262144

#
# W: Possible missing firmware /lib/firmware/rockchip/dptx.bin for module rockchipdrm
#
sudo mkdir -p /lib/firmware/rockchip/
wget https://raw.githubusercontent.com/wkennington/linux-firmware/master/rockchip/dptx.bin
sudo cp /home/pleb/dptx.bin /lib/firmware/rockchip/dptx.bin
sudo apt install -y cowsay fortune

sudo vim /etc/update-motd.d/01-cowsay
#!/bin/bash
/usr/games/fortune | /usr/games/cowsay -f tux
sudo chmod +x /etc/update-motd.d/01-cowsay

Networking

Networking

Sensors

sudo apt install lm-sensors fancontrol read-edid i2c-tools libi2c-dev python3-smbus -y

sudo sensors-detect

Turing RK1 (RK3588)

turing-rk1-cm.webp

Specifications
**Instruction Set**ARMv8-A (64-bit)
**OS Support**Ubuntu Server 22.04 LTS
**CPUs**8× | 4× ARM Cortex-A76 | 4× ARM Cortex-A55 | DynamIQ
**GPU**G610 GPU Support OpenGLES 1.1, 2.0, and 3.2, OpenCL up to 2.2 and Vulkan1.2 Proprietary 2D hardware acceleration engine
**NPU**6 TOPS
**RAM**LPDDR4 up to 32 GB
**Storage**32 G eMMC 5.1, SD 3.0
**Ethernet**1000Mbps
**USB**2x USB 3.0, 2x USB 2.0
**PCIe**PCIe Gen3
**MIPI**4-Lane MIPI-DSI, 4-Lane MIPI-CSI
**Digital Audio port**2× I2S
**HDMI**HDMI 2.1, 8K@60fps
**Video input port**2× MIPI-CSI RX 4× lanes 1× MIPI-CSI DPHY RX 4× lanes
**Display output port**1× MIPI-DSI DPHY 2× lanes 1× HDMI 2.1 1× DP 1.4
**VPU**VPU 2.0, supporting 8K video
**Video Encoder**H264, 8K@30FPS VP9/H265, 8k@60FPS AV1/AVS2, 4k@60FPS
**Video Decoder**H265/H264/VP9/AV1/AVS2 up to 8K@60fps
**Power**5V/3A via USB Type-C
**Operating Temp**-20°C to 70°C
**Storage Temp**-40°C to 85°C
**Weight**17g
**Form Factor**69.6mm x 45mm 260-pin SO-DIMM connector
Setup

https://joshua-riek.github.io/ubuntu-rockchip-download/boards/turing-rk1.html

sandy (192.168.1.14) pleb / transatlantique

sudo useradd pleb
sudo groupadd sudo
sudo usermod -aG sudo pleb
sudo hostnamectl set-hostname [hostname]
sudo dpkg-reconfigure tzdata

(. /etc/lsb-release &&
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh |
sudo env os=ubuntu dist="${DISTRIB_CODENAME}" bash)

sudo apt update && sudo apt install -y git-all git-lfs curl wget screenfetch net-tools open-iscsi python3 python3-pip build-essential libssl-dev libffi-dev python3-dev wireguard

PS : Ubuntu Pro


Disk(s)

Format and mount the disks

sudo fdisk -l

**With disk <xxx>**
sudo fdisk /dev/<xxx>
(create new primary partition)

sudo mkfs -t ext4 /dev/<xxxp1>
sudo blkid -s UUID -o value /dev/<xxxp1>

If needed, check and repair the filesystem

sudo e2fsck -fDC0 /dev/sdaX

Add mount point to fstab

sudo mkdir -p /mnt/<folder>
echo "UUID=... /mnt/<folder>      ext4    defaults    0       0" | sudo tee -a /etc/fstab

bob (nvme0n1)

UUID=5855d1bc-99fd-41f2-9d11-7c00a1c0ad00       /               ext4    defaults,x-systemd.growfs       0       1
# NVME
UUID=2423d885-a583-44d2-bd45-80d847c625b0       /mnt/data       ext4    defaults                        0       0
# HDD
# UUID=a4e3d8f1-11cc-482b-9596-57c44b122e48     /mnt/tmp        ext4    defaults                        0       0
#
/mnt/data/www                                   /var/www        auto    defaults,nofail,nobootwait,bind 0       2

carlo (nvme0n1)

UUID=5855d1bc-99fd-41f2-9d11-7c00a1c0ad00       /               ext4    defaults,x-systemd.growfs       0       1
UUID=0c85672d-0fbd-4d11-a93e-c01d1373c4c3       /mnt/docker     ext4    defaults                        0       0```

gary (nvme0n1) ...

# <file system>     <mount point>  <type>  <options>   <dump>  <fsck>
UUID=1cf633ab-4f5f-42da-b347-31282732a446 /              ext4    defaults,x-systemd.growfs    0       1
UUID=7f348b05-b44e-4b85-8445-657dc95e72df /mnt/data      ext4    defaults    0       0
# NFS
krabs:/srv/nfs4/media           /nfs/media      nfs     _netdev,x-systemd.automount,nofail,noatime,nolock,tcp,bg,actimeo=1800
krabs:/srv/nfs4/downloads       /nfs/downloads  nfs     defaults

sandy (sda / nvme0n1) ...

# <file system>     <mount point>  <type>  <options>   <dump>  <fsck>
UUID=1cf633ab-4f5f-42da-b347-31282732a446 /             ext4    defaults,x-systemd.growfs    0       1
UUID=6fab06af-f38f-493a-87ab-512f52a6616c /mnt/data     ext4    defaults        0       0
# NFS
krabs:/srv/nfs4/cloud /nfs/cloud nfs nofail,noatime,_netdev,actimeo=1800,x-systemd.automount,bg,nolock,tcp
krabs:/srv/nfs4/ebooks /nfs/ebooks nfs defaults
# HDD
UUID=22446d47-8d74-451e-8774-e1c8e2617b7e /mnt/hdd      ext4    defaults    0       0

sheldon (sda / sdb / nvme0n1) ...

# <file system>     <mount point>  <type>  <options>   <dump>  <fsck>
UUID=1cf633ab-4f5f-42da-b347-31282732a446 /             ext4    defaults,x-systemd.growfs    0       1
# nvme
UUID=a612717e-ca95-44a3-9b10-10e6be26112f /mnt/docker   ext4    defaults    0       0
# LVM
UUID=dbc636b9-e77b-4fb5-a192-a17c244857a2 /mnt/data     ext4    defaults,nofail,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,acl 0 2

krabs (nfs server)

UUID=0c390345-ca52-45fd-9097-6e931d651a8f       /       ext4    defaults,x-systemd.growfs       0       1
# LVM
/dev/hdds/datas         /mnt/data               ext4    defaults,nofail,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0,acl 0 2
# NFS exports
/mnt/data/cloud                 /srv/nfs4/cloud         none    bind,nofail     0 0
/mnt/data/media                 /srv/nfs4/media         none    bind,nofail     0 0
/mnt/data/ebooks                /srv/nfs4/ebooks        none    bind,nofail     0 0
/mnt/data/git                   /srv/nfs4/git           none    bind,nofail     0 0
/mnt/data/photos                /srv/nfs4/photos        none    bind,nofail     0 0
/mnt/data/media/downloads       /srv/nfs4/downloads     none    bind,nofail     0 0
/opt/backups                    /srv/nfs4/backups       none    bind,nofail     0 0

bernie (nvme0n1) ...

UID=5855d1bc-99fd-41f2-9d11-7c00a1c0ad00       /       ext4    defaults,x-systemd.growfs       0       1
# SSD
UUID=e8d74f7a-642a-486d-92db-d39388d1545f       /mnt/docker     ext4    defaults        0       0

Check

cat /etc/fstab

Mount disk...

sudo mount -a
sudo systemctl daemon-reload

df -h /mnt/<folder>

Hosts

sudo vim /etc/hosts
127.0.0.1       localhost
127.0.1.1       <host>.local <host>

# The following lines are desirable for IPv6 capable hosts
::1             ip6-localhost ip6-loopback
fe00::0         ip6-localnet
ff00::0         ip6-mcastprefix
ff02::1         ip6-allnodes
ff02::2         ip6-allrouters
ff02::3         ip6-allhosts

#
192.168.1.11    bob
192.168.1.12    carlo
192.168.1.13    gary
192.168.1.14    sandy
192.168.1.15    krabs
192.168.1.16    sheldon
192.168.1.17    bernie
# 192.168.1.18    pearl

#
192.168.1.53    retropie

On remote (PC) :

ssh-keygen -t ed25519

ssh-copy-id -f -i ~/.ssh/id_ed25519.pub pleb@192.168.1.xxx

ssh-copy-id -f -i ~/.ssh/id_ed25519.pub pleb@<hostname>

Documentation

https://docs.turingpi.com

help.turingpi.com

jme69@pm.me
Ln4@iJMNn85h2Xrx

https://help.turingpi.com/hc/en-us

Server World

https://www.server-world.info/en/note?os=Debian_12&p=download&f=1