[Dprglist] Non-Robot Activities While Doing Robots

Rud Merriam rudmerriam at gmail.com
Wed Dec 22 10:18:07 PST 2021

Last night's virtual meeting touched on the non-robot activities we do 
while working on robots. Here's my weekend. and into this week, saga.

I've been working on the C++ code for the RVR and also pushing my 
understanding of C++20 and earlier standards. My goal is to mount a Pi 
on the RVR. Previously I resurrected a Pi 3B using the latest 'lite' Pi 
OS. I only need the command line version for the moment. It worked and I 
could remote debug / run code on it from my PC.

I tweaked the code with some new C++20 capabilities. One was to add a 
semaphore to protect the main data dictionary from races on updating and 
reading the data. Tried it on the Pi and it wouldn't run. I'm using 
GCC-11 on the desktop while the Pi is GCC-10.

First problem was library incompatibility. My code didn't work with the 
older libs on the Pi. Okay, fall back to GCC-10. Second problem is while 
GCC-10 has a lot of C++20 it doesn't have all. It is missing the new 
semaphores. That mean't I couldn't use '-10 for my compiler. At least 
without changing my code.

That started an exploration on how to get GCC-11 on the Pi. On the 
Ubuntu 20.04 desktop I had hacked GCC-11 it onto the system using 
packages from Ubuntu 21.04. Now such path on the Pi. Searching the Pi 
Forums I found a script for building GCC-11 on the Pi. On a Pi-4 that 
can take /only/ hours while on a Pi3B it is nearly a day. Started trying 
to get that to work on Friday. Finally gave up on Monday when it simply 
wouldn't build. Also tried cross compiling the Pi version on the 
desktop. May have gotten it to work about the same time I decided to 
give up on Monday. It would have meant another day or two getting it 
moved over to the Pi.

After looking at alternative OSes I decided on Ubuntu 21.04 Server. Got 
it working on the Pi3B without too many hassles. It runs GCC-11 and my 
code fine.

I managed to score a Pi Zero 2W off Adafruit. I'd really like to use it 
on the RVR because of lower power consumption. Previously I'd tried it 
with the same SD as the Pi3B and it worked fine including running my 
code from before the changes that provoked this adventure.

Nope, the Zero can't find the WiFi. So do I continue fighting with the W 
or fall back on the 3B with hopes that real-soon-now the Pi OSes will 
update to to handle GCC-11 without hassle and then the Zero will see the 
WiFi? Or plan on a Pi 4 when they become available.

One issue is I've got an Oak-D-Lite coming so will need a USB port for 
it. I do have a little adapter from Adafruit which provides a single USB 
on the Zero. Also got a 4 port hub from them if more than 1 is needed.

So that's 4-5 days of non-robot activity around my robot activity. Those 
are pretty full days of 8-10 hours since I'm retired. In hindsight, 
maybe I should have changed the code.



-73 -
*Rud Merriam K5RUD*
/Mystic Lake Software/ <http://mysticlakesoftware.com/>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.dprg.org/pipermail/dprglist-dprg.org/attachments/20211222/4d78c7a7/attachment.html>

More information about the DPRGlist mailing list