[OBJECTIVE]
Create an ultra portable wearable workstation.
Note: If you need to run a wearable work laptop for performance or security purposes, see this post instead: https://cbg.studio/blogs/crafting/wearable-workstation
[CHALLENGES]
- Heat Dissipation
- Battery Life
- Cable Management
- Human Interface
- Ergonomics
[MATERIALS]
Note: the lab may receive a commission for purchases made from the links below, but feel free to source your own materials.
- Orange Pi Zero 3W with cooling fan
- DWEII 5V 3A UPS
- 2x Samsung 30Q 18650 3000mAh 15A Batteries
- Custom 3D printed case
- 2" Elastic Band (for head strap)
- Tri-Glide Slides (to keep strap tight)
- 2" Hook and Loop Tape (for mounting glasses to strap)
- XREAL ONE AR Glasses
- Short Coiled 4k USBC cord
- Rii Bluetooth Keyboard/Touchpad
- 90 Degree USB C to USB A adapter
- SANDISK 128 GB SD Card
- Momentary Switch
- 2.54mm Pitch 2x20 IDC Socket
- Voltmeter
[PROCEDURE]
Safety Warning: this project uses lithium batteries to power electronics. It also places a heat sink and fan near head and hair. Familiarize yourself with the risks and take responsibility for your safety!

[COMPUTE]

We are using an Orange Pi Zero 3W with cooling fan for a few reasons. It has a small footprint like the Raspberry Pi Zero 3W, but it has more processing power and ram, plus it has built in USB C Alt Mode DP so we can plug the XREAL ONE AR Glasses directly into it--no need for HDMI adapters!
[POWER]
To meet the power needs of the Orange Pi Zero 3W with cooling fan (5V 3A), we wanted something that could handle that and ideally last for a few hours. Additionally, we wanted a UPS instead of a power bank because USBC power banks often do a handshake that can drop power and cause a device to reboot. We chose this DWEII 5V 3A UPS and these Samsung 30Q 18650 3000mAh 15A Batteries. We are soldering wires to its UPS +/- outputs and connecting them to the 5V and GND pins of the Orange Pi Zero 3W with cooling fan with a 2.54mm Pitch 2x20 IDC Socket.
[CASE]

We decided to make our own Custom 3D printed case for this project using OpenSCAD so we could do the entire design as code! You can get the source for our case here if you want to use it as a starting point for your coding. Otherwise you can download the print-ready STL here. You will also need some M2 screws, some superglue and some foam tape, which are included if you buy the case from our Teleport Portal!
The case is designed to expose the heat sink and fan on the Orange Pi Zero 3W with cooling fan and allow some venting from the DWEII 5V 3A UPS side. It isn't water proof, but keeping the chips cool was the goal here! There is a charging port and a hole for this Momentary Switch that we wired to the board's PWR pin (not main 5v power, but a dedicated logic pin near the HDMI port) and GND to send a wake signal to turn on if asleep or to go to sleep/power off while awake depending on the settings. There is also a thin material window for the voltmeter to shine through the surface. There are wings to feed the 2" Elastic Band (for head strap) through.
The integrated standoff holes are 1.8 mm in diameter but not threaded in the 3D print, so we are using these M2x12 screws to hold things down.

[I/O]
We use a pair of XREAL ONE AR Glasses for a monitor plugged into the Alt mode DP port of the Orange Pi Zero 3W with cooling fan with this Short Coiled 4k USBC cord and Rii Bluetooth Keyboard/Touchpad with the USB A dongle plugged into the power port with one of these 90 Degree USB C to USB A adapters. Since we are powering the board from the UPS we don't want to apply power to the power port, but it turns out it has a data line as well so we don't have to worry about Bluetooth pairing.
[STORAGE]
The Orange Pi Zero 3W with cooling fan has some interesting storage options but we went with a SANDISK 128 GB SD Card for simplicity. It only supports up to 128 GB.
[SOFTWARE]
[OS]
We chose to flash it with an Orange Pi Debian distribution since Debian is well supported and any quirks of running it on Orange Pi hardware will probably be addressed. We chose an XFCE image for a desktop environment. You can download the image from the above site and flash it to your SD card using balenaEtcher or similar.


[XREAL EYE TRANSMISSION MODE]
If you have the XREAL EYE and need to get the photos off the glasses, you need to install some things to get the disk to show up:
sudo apt update
sudo apt install mtp-tools jmtpfs libmtp-runtime libmtp9
After running the above, you may need to unplug and re-plug in glasses glasses before transmission mode works.
[XREAL MIC]
To use the xreal glasses mic in UAC mode
- Open your PulseAudio config:
sudo nano /etc/pulse/default.pa -
Paste at the very bottom:
load-module module-alsa-source device=hw:1,0 name=xreal_mic -
Save and exit.
-
restart pulse: pulseaudio -k && pulseaudio --start
[PRINT SCREEN]
Get print screen (FN F7 on the Rii) to take a screenshot and copy it to the clipboard go to Applications>Settings>Keyboard>Application Shortcuts>Add
Paste this command:
xfce4-screenshooter -r -c
Press the screenshot button when prompted.
0 lab notes