Seeed Studio reTerminal Review: A Raspberry Pi CM4 Based Terminal.
I recently bought this interesting Raspberry Pi Compute Module 4 based device made by Seeed Studio on Amazon.
ReTerminal on Amazon: https://amzn.to/3Hkpv99
What’s the reTerminal?
Basically, the reTerminal is a Raspberry Pi CM4 based device in a “tablet” form factor with a 5 inch touch screen, 4 buttons, and a few sensors. It measures 5.5 inches wide, 3.75 inches high and about 0.75 inches thick.
Why did you buy this?
At $225 USD, you might ask, why would I buy this? Wouldn’t it be cheaper to use a Raspberry Pi 4B?
I love the Raspberry Pi 4B and have used it in many projects. Over time, I found myself using the 4B mainly as a headless device. When I want to prototype an idea with hardware buttons, I need to find buttons for it. When I want to see some visual feedback, maybe I’ll attach a monitor. Making it portable? That would mean finding a suitable case and dragging everything with it. All of this time and effort adds up — keeping me away from prototyping my original idea in the first place!
So, when I saw the reTerminal. I was VERY intrigued. Let’s dive into the details on what the reTerminal offers:
Detailed Specs
Raspberry Pi CM4 Module 4gb Ram / 32gb eMMC / WiFi + Bluetooth
1x Micro HDMI
1x CSI ( for the camera module )
1x Ethernet port
2x USB 2.0 port ( more on this later )
1x standard Raspberry Pi pin header
1x buzzer
Pretty standard stuff. But these are the more interesting details:
5 inch 1280x720 IPS LCD screen with capacitive multitouch support
4 hardware buttons
Expansion port ( PCIe 1x Gen 2, 1x USB 2.0 port, 26 gpio, PoE )
Real-Time Clock — NXP PCF8563T
Accelerometer — STMicro LIS3DHTR
Encryption Chip — Microchip ATECC608A
Light Sensor — Levelek LTR-303ALS-01
Internal IO Expansion — Microchip MCP23008-E
1x 1/4 Inch tripod mount (on the bottom of the unit)
M4 screw holes ( 2x on the left side, 2x on the right side, and 2x on the back)
The unit also has a decent sized heatsink at the top of the unit which helps to keep the CPU cool. I’ll be testing how well this works.
Use Cases
What really sold it for me was the touch screen, 4x hardware buttons, and the tripod mount with everything packaged into a reasonably small form factor. Case, case mounting and hardware-based user interaction are huge pain points for me on the 4B so the reTerminal seem to meet my needs.
Now, when I want to prototype some sort of user interaction, the buttons and touchscreen is there. If I want to mount my prototype to something, the mounting holes are there. If I want to make my project portable, I can now mount things — like a camera module — to the reTerminal!
Seeed Studio designed the reTerminal to be modular where you can attach stuff to it. So that’s what the M4 screw mounts are for. But right now, no attachments have been released. I’m excited to see what they come up with in the future.
I can’t wait to 3D print my own attachments such as a camera module and battery pack so I purchased some M4 Hex Cap Screws 5mm. The M4 nut on the unit is pretty shallow (5mm?) so if you decide to buy some M4 screws, I recommend something about 5mm long. I tested with 8mm ones but they seem a little long.
For now, I’m using it like this:
I’m thinking of trying these other mounting options:
The Other Interesting Details
The other interesting stuff that Seeed Studio put into the reTerminal are:
1. Real-Time Clock — NXP PCF8563T
2. Accelerometer — STMicro LIS3DHTR
3. Encryption Chip — Microchip ATECC608A
4. Light Sensor — Levelek LTR-303ALS-01
These are some nice additions. I can absolutely see someone making an AR project using a camera module in combination with the accelerator. The encryption chip is an interesting bit. Apparently, the chip can be used for authentication for cloud platforms such as AWS IoT, Azure, Google Cloud.
First Impressions
The build quality of the unit is pretty good. The plastic shell feels solid and well made and looks like it can survive a drop. The buttons are clicky and feel great. Indicator LEDs are clear and bright.
Turning on the unit requires plugging in the power to the USB-C port. I chose a beefy 5.25v @ 3.5A power supply: Argon ONE PSU for Raspberry Pi.
The unit comes with Raspberry Pi OS preinstalled on the eMMC. This version has Seeed Studio’s drivers preinstalled so the screens and other onboard peripherals work out of the box.
NOTE! Do not update the system software on first boot! There is a specific procedure for this:
If you upgrade the system software without following the instructions above, the screen will stop working after reboot.
Boot up was fairly quick at 20 seconds thanks to the eMMC. The screen is nice and bright with good viewing angles. Touch performance seems accurate but a little hard to use with the default interface. Thankfully, it comes with an onscreen keyboard installed.
Even though the onscreen keyboard works, it was still awkward to use it with the Raspberry Pi OS Desktop UI. I eventually connected a wireless USB keyboard and mouse to it.
The reTerminal ships with a demo program to show you what touchscreen UI / UX capabilities are possible.
Benchmarks & Overclocking
I ran Phoronix Test Suite benchmarks to see how this little guy performs. Thanks to Jeff Geerling for his script.
I also overclocked the reTerminal to 2.1ghz and 2.2ghz. The overclocking settings I used are:
For 2.1ghz:
over_voltage=6
arm_freq=2100
For 2.2ghz:
over_voltage=8
arm_freq=2200
x264 Video Encoding. Higher is better.
MP3 Encoding Time. Shorter is better.
PHPBench. Higher is better.
Overclocking to 2.2ghz was stable throughout testing and gave a huge performance boost. The CPU automatically clocks down to 700mhz when idle and would boost to 2.2ghz under load. This is the default behaviour on all Raspberry Pis and CM4 modules.
Tailscale Test
Tailscale is a zero config VPN based on WireGuard. A friend introduced me to this and I’ve been using it everywhere. I’ll have an in-depth article about Tailscale soon. For now, visit their website: https://tailscale.com/
In this test, I’m using a AMD Ryzen 3200G running Pop!_OS as an exit node. The reTerminal is connected to the LAN using the onboard 1gig ethernet.
Speedtest-cli
Download: 789.06 Mbits/s
Upload: 819.55 Mbits/s
Latency: 2.7msSpeedtest-cli + Tailscale Exit node
Download: 145.31 Mbit/s
Upload: 152.82 Mbit/s
Latency: 6.5ms
The reTerminal is able to achieve some nice speeds on ethernet but when using Tailscale, the performance drops quite a fair amount. This is related to Tailscale running on ARM and 32bit OS and not reTerminal itself. I’ll be investigating this in a future article. For now, you can track the Tailscale issue here: https://github.com/tailscale/tailscale/issues/414
Nevertheless, even with the performance drop, it is still very usable.
Temperature
The reTerminal comes with a decent sized heatsink measuring 85mm x 48mm x 8mm.
CPU temperature was monitored using:
watch -n 1 vcgencmd measure_temp
Throttling was monitored with:
watch -n 1 vcgencmd get_throttled
Load temperature was taken while running Phoronix Test Suite x264 test.
Default 1.5ghz Temperature
Temperature at idle: 38.9°C
Temperature under load: Between 49.6°C to 50.6°C
At default 1.5ghz baseline ( no overclocking ), the heatsink was warm to the touch. During benchmarking, no throttling was detected.
Overclocked 2.1ghz Temperature
Temperature at idle: 41°C
Temperature under load: Between 56°C to 60.3°C
When overclocked to 2.1ghz with over_voltage=6 and under load, the heatsink got really warm to the touch and was uncomfortable leaving my finger on it for a few seconds. No throttling was detected though.
Overclocked 2.2ghz Temperature
Temperature at idle: 45°C
Temperature under load: Between 57.9°C to 66.2°C
When overclocked to 2.2ghz with over_voltage=8 and under load, the heatsink got really uncomfortable to touch but no throttling was detected.
It seems Seeed Studio’s passive heatsink design was good enough to withstand a 2.2ghz overclock under load without any throttling! From my tests, the highest temperature recorded was 2.2ghz at 66°C — well below the throttling threshold of about 82°C for the Compute Module 4.
I would feel very comfortable using the reTerminal in space constrained projects and even with a 2.2ghz overclock if there is a little bit of airflow.
Power Consumption
For the power consumption test, I measured using a USB-C power meter.
This is plugged into the reTerminal and the power supply plugged into the meter like this:
Baseline 1.5ghz power consumption
Idle: 2.55 watt @ 0.479 A
Load: 4.9 watt @ 0.963 AOverclock 2.1ghz + over_voltage=6
Idle: 3.1 watt @ 0.518 A
Load: 7.1 watt @ 1.26 AOverclock 2.2ghz + over_voltage=8
Idle: 3.134 watt @ 0.583 A
Load: 8.12 watt @ 1.2 A
Idle power consumption doesn’t change all that much since the CM4 module still clocks down to 700mhz when its doing nothing. The biggest jump in power consumption is when running overclocked under load. If I were running the reTerminal on battery power, I’d keep it at baseline 1.5ghz.
Battery Power
Eventually, I want to use the reTerminal in portable projects so I tested it with a power bank with no overclock. The one I used the is the Anker PowerCore 10000 PD Redux which gave enough voltage under load.
According to my rough estimate, this power bank should be able to power the reTerminal for about 10 hours.
I tried another power bank but the voltage dipped too low and the reTerminal locked up. Choose your power bank wisely.
Overall
In my brief testing, I found the reTerminal to be very usable out of the box. It has given me some ideas for new projects and I can’t wait to start prototyping with it. This seems to be a great platform for me to learn making UI using pyside2 / pyqt / python. Seeed Studio have some getting started tutorials on their website: https://wiki.seeedstudio.com/reTerminal/
Hardware wise, I can’t find many fault thus far. The only issue I encountered was some slight ghosting on the LCD screen and some weird screen tearing when scrolling very fast. They released new firmware updates for the LCD driver chip so I’ll see if updating it solves the issue. The light sensor, accelerometer and encryption chip are features I look forward to playing with.
One thing that did annoy the heck out of me was the back panel is EXTREMELY hard to take off. There are two cantilever snap-fit joints near the expansion port and it required me to pry the back panel loose. They could of added two screws to make it easier considering you’ll have to open up the back panel to access the CSI camera port and boot mode switch for flashing the eMMC.
It will be interesting to see what expansion modules Seeed comes up with in the future. I am hoping for a, NVME module, battery module, SATA module, maybe a battery grip, LoRa transceiver / gateway module.
I like:
Nice little package to start prototyping quickly.
Options for mounting the unit and mounting things to it.
Solid construction.
Nice screen.
Rubber feets on the back of the unit.
I wish:
Documentation was written and organized better.
The GPIO port was colour coded.
More getting started tutorials especially using the light sensor, accelerometer and encryption chip.
Back panel was easier to access.
The price was lower.
It came with a power supply.
Slightly better bigger screen — 6 inches maybe?
Will I recommend it to my friends?
Yes! But not for beginners. Get it: reTerminal on Amazon.
Will I recommend it to my enemies?
No way! I want to keep all the fun for me and my homies.
What are you going to make with it? I want to hear about it!
This article contains Amazon affiliate links — I get a small commission from Amazon when you buy from these links at no extra cost to you. Think of it as a way of saying thanks!