My ROOPHLOCH 2025 Journey

2025-09-30

---

On Sunday, I made a post for solderpunk's annual ROOPHLOCH, or Remote Outdoor Off-Grid Phlogging Challenge.^ The post itself was short, but the process to make it happen was anything but, and I wanted to share both my setup and the problems I had getting it to work.

I participated in ROOPHLOCH 2024 as well, but all I did was write a log from my backyard and post it to my capsule over my home WiFi connection. Leading up to September, I had many different ideas for how to participate in this year's ROOPHLOCH. Some of the ideas were fairly simple, and some were extremely ambitious: I thought of sending an NNCP packet over Bluetooth, automatically photographing and uploading a document I'd written on my typewriter, and even creating a custom punch-card storage medium for the post and uploading it over regular WiFi. I would have needed to prepare a lot of these ideas over the summer for them to be practical, but other commitments and hobbies ate up my time, and none of them were ready by the start of September.

The setup I finally chose was not very elaborate in comparison, but it was still much more remote than last year's setup. My plan was to go to a park in the area, set up a mobile tethering hotspot on my smartphone, connect a Raspberry Pi to the hotspot, and connect my ClockworkPi DevTerm to the Raspberry Pi using Reticulum.

The main goal was to make a post while the device I wrote the post on was not in range of any WiFi signal. However, I also had an ancillary goal: I wanted to do it while not relying on any fossil fuels. I would cycle to the park, eliminating the need for gasoline-powered transportation, and anything that required power would either run directly on solar power or on batteries that were charged by solar power.

My initial supplies were:

Ancillary equipment included my bicycle and a point-and-shoot camera to take photos.

I chose this setup because I already owned all the necessary equipment, except the travel router. Luckily, a nearby electronics store had an open-box model for a discount.

In setting up a remote base to post from, the RPi would need to run headless--and that meant I'd need to start Reticulum and rnsh automatically. I installed both using pip, then configured and set up a systemd service for rnsd using the instructions on the Reticulum site.^^ To run rnsh, I added the following line to the dietpi user's crontab:

@reboot rnsh -l -a <hash> -- /bin/bash

<hash> is the identity hash of my DevTerm's rnsh instance.

Debian manages all Python packages on my DevTerm, so I had to install Reticulum and rnsh in a virtual environment, which I simply placed at ~/python3/venv.

Everything had to start up a specific order for communication to flow properly. I first needed to start the hotspot on my smartphone. Then I needed to power on the travel router and give it time to connect to the hotspot. Once that was established, I could power on the RPi, let it connect via the router, start Reticulum, and spawn the rnsh session. Finally, I could power on the DevTerm, let it find a path through the Reticulum network, and log into the RPi using rnsh.

The park has a large tower next to a walking trail. My plan was to set up a small base station on my bike next to the tower, hang one RNode off the truss, then go to a bench about 60 feet away and connect with the other RNode. I would have liked to post from a greater distance away, but most of the park is filled with tall prairie grass, and I didn't want to risk getting bitten by ticks. Regardless, even at that range, I was too far away to connect to my phone's hotspot from the DevTerm.

My first attempt at making a post was on 2025-09-21. I packed all the supplies into the box the solar panel came in, stuffed it onto my bike's cargo rack, and headed out.

Supplies packed into a box

(PNG, 600x450, 89.7 KiB)

Unfortunately, just as I arrived at the park, a group of dark clouds suddenly formed and blocked out the sun. The solar panel only produced a fraction of its potential power output as a result. I couldn't power both the RPi and the travel router simultaneously: the router would power on first, but when the RPi was added to the circuit, both would shut off due to insufficient voltage. I could confirm that by looking at the output reading on the solar panel controller: both devices would run for a while, the voltage would drop, the controller would switch power from the USB ports to battery output, and the voltage would recover. I cycled back home in disappointment.

I tried again four days later on 2025-09-25. The sky was clear and the sun provided ample power for the solar panel. The box even served as a handy container to hold all the equipment.

Solar panel and RPi set up on the bicycle

(PNG, 600x450, 113 KiB)

Bicycle base station and antenna

(PNG, 450x600, 102 KiB)

However, I still couldn't get the solar panel controller to reliably power the travel router and RPi simultaneously. They stayed on for a few minutes after I first plugged them in, long enough to be able to connect over Reticulum and initiate a 'git pull' command, but then they shut off again and began to power cycle every few seconds. Once again, the controller would quickly switch from USB power output to battery output and not remain stable. I wondered if the two devices' combined draw was too much for the solar panel, even in the sunny weather at almost optimal power output, and I decided I needed to make some changes. That outing was a dud as well.

The solution to the power problem was another piece of equipment I also happened to own already. In my car, I keep a FlexSolar E10 solar charger that produces 10 watts of power. It's meant to serve as an emergency source of power if my car (which is rather old) breaks down somewhere remote, but I realized I could use it as a second power supply. That came along for attempt number 3.

I rode out to the park again on 2025-09-27 with two solar panels in tow. This time, I ran the travel router off the FlexSolar panel and the RPi off the TopSolar panel. To my surprise, however, the RPi continually power cycled again! The same symptom appeared on the TopSolar controller as on both previous outings: it would send power to the USB ports for a few seconds, then switch back to battery output. Even now, I'm not sure why the controller behaved that way. I think my initial guess of insufficient power was wrong, and the controller wants a battery installed to keep its power output stable and constant. The controller itself could also be faulty.

As I packed up the station with renewed frustration, I discovered that I'd accidentally left one of the USB-C cables at home. Even if the RPi had worked correctly, I wouldn't have been able to connect an RNode to my DevTerm.

I needed yet another power solution, and this time, I decided to do extensive testing at home before going back out to the park. The solution came in the form of a 10-watt power bank that would run the travel adapter. As with everything else, I charged the bank using solar energy, then tested it with the RPi running on the FlexSolar panel. Thankfully, everything worked as expected!

During this testing, I discovered that the RPi was getting too hot in the direct sunlight. We keep a pair of medical cold wraps in the freezer, so I decided that during my next attempt, I would bring one along and wrap all the electronics with it to keep them cool.

Finally, on 2025-09-28, I went back to the park one more time. Testing showed me how I could create a very clean setup that used much less space than my first few attempts. I was even able to clip the FlexSolar panel onto the underside of my bike saddle, opening up even more room.

Setting up devices before wrapping them

(PNG, 450x600, 111 KiB)

DevTerm with RNode

(PNG, 600x450, 83.0 KiB)

I enabled the hotspot, powered on the router, booted up the RPi, and started the DevTerm. And to my delight, rnsh connected successfully! Reticulum on both devices was configured to have a high spreading factor, which greatly increased the connection range at the cost of speed. My uplink was only about 400 bits per second, leading to delays of about 20 seconds between when I would type a sentence and when that sentence would appear on screen.

In total, it took me about 2 1/2 hours to cycle to the park, set up the station, connect with my DevTerm, prepare the local git repository, write the log, update index files, push the post to the capsule, tear down, and cycle back home. But it was successful, and the log went live on Gemini with only about 25% charge left on the DevTerm.

I might expand on this setup and try a few more concepts for next year's ROOPHLOCH. Some ideas I have include:

I intend to investigate possible ROOPHLOCH setups well before September next year, so when the challenge officially opens, I will be ready.

Despite the frustration, I ultimately had a lot of fun doing this project. It was exciting to interact with the Internet using no fossil fuels at all; I'm very glad I incorporated that into the project. It was fun figuring out how to work around power issues and configure headless access to the RPi using Reticulum. And though it was annoying to have to return to the park so many times, I still enjoyed the exercise and the time outdoors.

ROOPHLOCH 2025
Using Reticulum on Your System (HTTPS)

---

Up One Level
Home

[Last updated: 2025-09-30]