Turing Pi2 Setup
Intro⌗
Yikes! Almsot two years since actually getting a post out here… Well I’ve been busy to say the least. I’ve got a backlog that always seems to be growing with ideas. Really high on my list is continuing the automation on the automated VSphere provisioning. As well as getting the KVM and LibVirt stuff going. Possibly diving back into Proxmox. Maybe XCP-ng. Heck, Hyper-V isn’t even off the table. Obviously the Broadcomm aquisition has made this a bit more of a priority. Though I did recently renew my VMUG subscription so I can keep going for a bit.
My end goal is to have my Homelab quickly reproducible from scratch. I’m cooking up some things behind the scenes to help expand that, and have the automation even able to go from greenfield to day 2+ in just a few hours.
The makings of this post started back in May of 2022 when I initially backed the Turing Pi 2. I won’t lie, I had hoped to be much further along than I am by now. But hey, it’s post COVID and everything hit reset and slowed down in a weird way for an Internet based world. So why not dive on in.
This post will cover some initial thoughts on the setup, what the install looked like, and an overview of costs. Let’s get to it!
Hardware⌗
So this is well over a year since I purchased the kit at the time of writing. So I appologize on some of this. A lot of it was purchased directly from TuringPi. A bit from GEEEK. And then a little from MicroCenter and Amazon.
Turing Pi Purchases⌗
First Order⌗
The first order was Backed/Placed on May 16, 2022. “placed” (which meant cancelled then re-fulfilled on their side for add-ons) on January 3, 2023. This was all delivered on April 12, 2023.
Item | Quantity | Cost |
---|---|---|
Turing PI 2 (through the KickStarter) | 1 | $259.00 |
CM4 Adapter | 1 | $12.00 |
Pico PSU | 1 | $45.00 |
I/O Shield | 1 | $5.00 |
Subtotal $321.00 Shipping $20.00 (via standard) Discount $-52.00 Total $289.00
Second Order⌗
The second order was placed July 31, 2023. This was all delivered on March 18, 2024.
Item | Quantity | Cost |
---|---|---|
RK1 Heatsink | 2 | $20.00 |
Power Supply (note: this is the brick for the pico PSU. I decided against getting it elsewhere afterall.) | 1 | $30.00 |
Turing RK1 32GB | 2 | $468.00 |
Subtotal $518.00 Shipping $25.00 (via standard) Total $543.00
Geeek Store Purchases⌗
The case was ordered on April 24, 2023. Unfortunately, I can’t find when this was delivered since I checked out as a guest. I remember something in the 6-8 weeks time frame though.
Item | Quantity | Cost |
---|---|---|
A1 V2 Mini-ITX Case | 1 | $29.90 |
Subtotal $29.90 Shipping $10.00 (via standard) Total: 39.90
Micro Center Purchases⌗
I was lucky enough that when I purchased these Micro Center had a great deal on them.
Item | Quantity | Cost |
---|---|---|
Inland Prime 1Tb SSD NVMe PCIe Gen 3.0x4 M.2 2280 3D NAND Internal Solid State Drive | 2 | 49.98 |
Amazon Purchases⌗
Item | Quantity | Cost |
---|---|---|
[64GB PNY MicroSD 3 Pack] (only used one of these) | 1 | $21.99 |
Full Cost⌗
For those of you wanting the full cost breakdown in a single table with per quantity pricing! No, I didn’t include gas or a fraction of my prime costs to get that exact…sorry!
Item | Quantity | Unit Cost | Item Total |
---|---|---|---|
Turing PI 2 | 1 | $259.00 | $259.00 |
CM4 Adapter | 1 | $12.00 | $12.00 |
Pico PSU | 1 | $45.00 | $45.00 |
I/O Shield | 1 | $5.00 | $5.00 |
RK1 Heatsink | 2 | $10.00 | $20.00 |
Power Supply | 1 | $30.00 | $30.00 |
Turing RK1 32GB | 2 | $234.00 | $468.00 |
A1 V2 Mini-ITX Case | 1 | $29.90 | $29.00 |
Inland Prime 1Tb SSD NVMe PCIe Gen 3.0x4 M.2 2280 3D NAND Internal Solid State Drive | 2 | 24.99 | $49.98 |
[64GB PNY MicroSD 3 Pack] | 1 | $21.99 | $21.99 |
Subtotal: | $940.87 | ||
Shipping & Handling: | $55.00 | ||
Discounts: | -$52.00 | ||
Grand Total: | $943.87 |
Some notes here on that total. This was over several years. Some obviously good discounts with KickStarters, and sales, and what have you. Some items included sales tax, others didn’t. At the end of it, I have a mini ITx Cluster computer with 2 out of 4 nodes populated with 64GB of RAM and 2TB of storage. With room to grow. Could I have done something more powerful for less? Absolutely. Should I have? Well… we shall see.
Initial Setup⌗
Initial setup was pretty straightforward. I had a Turing Pi 2 board from the Kickstarter. I followed the instructions from the Turing PI Docs. Since my board sat for the better part of a year, it was still running some 1.x firmware. I downloaded the firmware and was ready to kick off the process. The short version of the instructions were sufficient.
* Burn the SD card with the upgrade image
* Insert the SD card into Turing Pi 2 and power it on
* Wait for the 4 LAN port LEDs to start blinking slowly
* Press KEY1 on the board or Power button in the case (if you have a front panel connected)
rapidly 3 times (or type in CONFIRM in the console if you have UART connected)
* During flashing, the LEDs will animate by turning a single LED on from left to right
* The LEDs will start blinking twice when the flashing succeeds
* Remove the SD card and reboot
I was able to just use the power button option. So no screen or keyboard hooked up and get running. I have to admit, going straight from the 1.whatever version I was running straight to the latest 2.0.5 as of writing was a really nice surprise. Even more so that I’m pretty sure the whole process took less than ten minutes. Even with having to climb up above my pantry where I’m keeping this bit of kit.
From there, I downloaded the v1.33 Server Image from the Turing Pi Firmware page. Logged into the TPI with the IP address, went to the “Flash Node” page and selected the image I had just downloaded. (Note: I did extract the image from .xz archive. Windows file explorer handled that just fine.)
I didn’t time the exact install for my two 32G nodes. But I would say the estimate of about an hour per install over the network is accurate. I kicked one off as I was getting ready for dinner. And then started the second while doing some chores around the house. If I was more in a hurry, I probably would have busted out the USB install instructions.
Once they were done, I ran my lsdhcp
script to find the IPs they had pulled from DHCP. And was able to login with the default user pass of ubuntu/ubuntu
As promised, I was prompted to update the password for the account.
Finally, I ran the commands to move the install to the external NVMe I added. (I don’t know if this will be able to be idempotent and put into the playbook, but assuming not for now.)
lsblk
sudo ubuntu-rockchip-install /dev/nvme0n1
y
The rest of the OS setup will get covered in one of my next posts. Where I’ll do all the expected updates, upgrades, hardening, user management, etc. All of that will be handled with Ansible. I think at this point there’s enough sprawl that getting all of the monitoring and Prometheus / Grafana monitoring in place.
Next Steps⌗
Next up is going to be getting the cloud-init stuff working for the traditional x86 based HP minis I’ve purchased over the last few months to replicate my ESXi install. Then between the Turing Pi and those boxes we’ll get more into provisioning and setting up containers and VMs.
Then being able to replicate my software development and network testing labs on this, and quickly as well.
I have to admit, getting the Turing Pi going in a few hours in between other things on a weeknight was a really nice surprise. Until next time!
References Turing Pi Docs