Since the moment I
envisioned the project to create a prototype for a R&D and education
laboratory for DTN (Delay Tolerant Networking) and IPN (InterPlanetary
Networking,) I set as one of my primary requirements to make it affordable and
as simple as possible using off the shelf components.
I could have used a
large server with multiple virtual machines, but the idea was to embed some of
the nodes into a mockup representing a different element of a space mission
network. I ended doing that using Legos, in some cases modifying existing
models, in others just creating my own like the Mission Control Center (with a
Raspberry Pi Zero 2W.)
Besides some nodes that
I already planned to run on a virtual machine, and others running on actual Intel
based mini personal computers, I focused my search on affordable Single Board
Computers (or SBC) that could run NASA’s JPL open source ION implementation of DTN.
Of course, the
Raspberry Pi ended on top of the list, more so when they released the Raspberry
Pi Zero 2W with comparable performance of a Raspberry Pi 3.
Why Raspberry Pi?
Price and features were
a big factor, plus the ecosystem that has developed over 10+ years around it,
particularly for education and experimenting, has an incredible value.
I considered other
alternatives, I already had some boards in my inventory, and another goal for
the laboratory was to serve as a platform to test interoperability of ION
running on different platforms.
Unfortunately, with the
semiconductor shortages and supply chain issues, the Raspberry Pi boards by the
end of 2021 were almost impossible to procure or at exorbitant prices.
Then, the alternatives
became more important.
I started procuring
some that were reasonably priced, with similar features as the Raspberry Pi,
most of them with ARM cpus, and very important, with support for a flavor of
Lunix where I could build ION from the source code.
Overall, I didn’t find
many problems to build ION, in few cases I had to tweak the original config
scripts.
These changes will be
included in the coming release early next year of IONe, an experimental version
of ION as a branch of the original NASA code, development still leaded by Scott
Burleigh (creator of ION when he worked at JPL) and as part of the work we do
with the Internet Society Interplanetary Chapter (IPNSIG) Projects Group.
I also started to run performance
tests to compare various boards/platforms. I will publish the results in a
separate article, preliminary numbers show that the alternative boards to
Raspberry Pi run substantially faster.
If you are a
manufacturer or distributor of these type of boards and have interest to get it
tested and added to the list, please feel free to send a message to
ipndtn@ljcv.net.
I’ve been already sharing this information with various universities and
research groups who are facing the same problem getting appropriate hardware
for their projects. I heard that some of the Raspberry Pi products have a lead
time of over a year!! Insane ☹
Here are the boards I tested
up to the publication of this article.
|
SoC
|
Broadcom BCM2837
|
CPU
|
Quad Cortex-A53 ARMv8
|
Clock
|
1.2GHz
|
Video
|
HDMI
|
RAM
|
1GB LPDDR2
|
LAN
|
100M
|
USB
|
4 x USB 2.0
|
WiFi
|
b/g/n
|
Bluetooth
|
LE
|
Supported OS
|
RaspiOS, Ubuntu, Kali Linux …
|
|
SoC
|
Broadcom BCM2837B0
|
CPU
|
Quad Cortex-A53 ARMv8
|
Clock
|
1.4GHz
|
Video
|
HDMI
|
RAM
|
1GB LPDDR2
|
LAN
|
GigE
|
USB
|
4 x USB 2.0
|
WiFi
|
b/g/n/ac
|
Bluetooth
|
4.2, LE
|
Supported OS
|
RaspiOS, Ubuntu, Kali Linux
|
|
SoC
|
Broadcom BCM2711
|
CPU
|
Quad Cortex-A72 ARMv8
|
Clock
|
1.5GHz
|
Video
|
2 x microHDMI
|
RAM
|
1, 2, 4 or 8GB LPDDR4
|
LAN
|
GigE
|
USB
|
2 x USB 2.0, 2 x USB 4.0
|
WiFi
|
b/g/n/ac
|
Bluetooth
|
5.0, LE
|
Supported OS
|
RaspiOS
|
|
SoC
|
Broadcom BCM2835
|
CPU
|
Single ARM1176JZF-S
|
Clock
|
1GHz
|
Video
|
Mini HDMI
|
RAM
|
512MB LPDDR2
|
LAN
|
None
|
USB
|
1 x OTG
|
WiFi
|
b/g/n
|
Bluetooth
|
4.1, LE
|
Supported OS
|
RaspiOS
|
|
SoC
|
RP3A0 (Broadcom BCM2710A1)
|
CPU
|
Quad Cortex-A53 ARMv8
|
Clock
|
1GHz
|
Video
|
Mini HDMI
|
RAM
|
512MB LPDDR2
|
LAN
|
None
|
USB
|
1 x OTG
|
WiFi
|
b/g/n
|
Bluetooth
|
4.2, LE
|
Supported OS
|
RaspiOS
|
|
SoC
|
Allwinner H3
|
CPU
|
Quad Cortex-A7
|
Clock
|
1.6GHz
|
Video
|
HDMI
|
RAM
|
1GB LPDDR3
|
LAN
|
100M
|
USB
|
2 x USB 2.0, 1 x OTG
|
WiFi
|
None
|
Bluetooth
|
None
|
Supported OS
|
Ubuntu, Debian Buster
|
|
SoC
|
Allwinner A7H2+
|
CPU
|
Quad Cortex-A7
|
Clock
|
1.2GHz
|
Video
|
Mini HDMI
|
RAM
|
512MB LPDDR2
|
LAN
|
None
|
USB
|
1 x OTG
|
WiFi
|
b/g/n
|
Bluetooth
|
4.0
|
Supported OS
|
Debian Buster
|
|
SoC
|
Realtek RTD1395
|
CPU
|
Quad Cortex-A53
|
Clock
|
1.4GHz
|
Video
|
HDMI
|
RAM
|
1GB LPDDR4
|
LAN
|
100M
|
USB
|
4 x USB 2.0
|
WiFi
|
b/g/n/ac
|
Bluetooth
|
4.2
|
Supported OS
|
Debian Buster
|
|
SoC
|
Amlogic S905X
|
CPU
|
Quad Cortex-A53
|
Clock
|
1.512GHz
|
Video
|
HDMI
|
RAM
|
2GB LPDDR3
|
LAN
|
100M
|
USB
|
4 x USB 2.0
|
WiFi
|
None
|
Bluetooth
|
None
|
Supported OS
|
Ubuntu, Debian & Raspbian Bullseye
|
|
SoC
|
Rockchip RK3328
|
CPU
|
Quad Cortex-A53
|
Clock
|
1.4GHz
|
Video
|
HDMI
|
RAM
|
2GB LPDDR4
|
LAN
|
GigE
|
USB
|
1 x USB 3.0, 2 x USB 2.0
|
WiFi
|
None
|
Bluetooth
|
None
|
Supported OS
|
Ubuntu, Debian & Raspbian Bullseye
|
Note: on the "Supported OS" I'm showing the ones I tested, for some of the boards there are other OS available.
Disclaimer: I’m not
getting any compensation or benefits from any distributor or manufacturer for
the products mentioned in this article.
Until the next intergalactic communication …
Cheers
Jorge