Saturday, May 15, 2021

Packet Radio, Part 7 (Raspberry Pi reinstall)

As of my last post, I had a working packet install, able to do APRS and Winlink.  My routine (for a couple of days at least, hardly a routine) was to power the RasPi down between sessions.  I'm scattered enough, and have enough other hobbies, that I never know if I'll be back on-the-air in hours or months; I am who I am :/.

But after a few days of this, RasPi refused to boot.  Power light came on, but the screen didn't come out of sleep.  That had happened once before, because (I'm guessing here) HDMI cable wasn't plugged in, when I powered up.  But resetting power and plugging in with HDMI connected had worked.

But not this time.  I'm still a bit suspicious that some of my homebrew wiring is lacking something, e.g. proper grounding or similar, but the first thing that I knew I could try was a reinstall of the hard drive.  The Pi 3B+ has a 32GB micro-SD card, and I could remove it, put it into the USB adapter than came with it, and see if I could read it on Win10.  Nope, appears dead; not sure if I could read it when it was good, i.e. read its Linux filesystem under Windows, but oh well.

So I reformatted.  Raspberry Pi provides a new installer these days.  IIRC, last time I used Balena Etcher to write the SD card, but now the new installer just does the job itself.  So I did that, and it booted just fine.  Whew, glad that I didn't fry the Pi ;).

Reinstall from that point wasn't difficult at all, following the prompts on-screen.  VNC is a bit of a pain, requiring me to add a 'Authentication=VncAuth' line to /root/.vnc/config.d/vncserver-x11, to be able to reconnect.

But then I couldn't find Direwolf.  I had installed a binary version of 1.6, but no Googling could turn up a download site.  (I could probably find it right away, now that I've got it working, but oh well.)  To get it working, I followed the instructions in the docs to clone the 1.6 git repo and build from source.  10 min of bash hacking, and it was up and running.

I did try going with the 1.4 version from the Raspbian repo, but that didn't work, in a couple of ways: 1) the screen output blinked (highly annoying), and 2) while Winlink would connect, and PTT'd the radio, it wouldn't connect.  Turns out #2 was my fault, but #1 was also annoying, and 1.6 fixed that, so I don't regret upgrading.  Fixing #2 was a matter of including the right ADEVICE line in my direwolf.conf file.  My entire file is:

MYCALL KC3LZY
PTT GPIO 25
ADEVICE plughw:2,0

So all of this, and turning the volume down in alsamixer (to remove the "high output volume" messages that Direwolf was giving) got me up and running again.

One last footnote, though, and that's that I would like to try to get an external HD running on RasPi, and run everything off of that, and boot RasPi in read-only mode, just in case it was having the RasPi power off incorrectly that corrupted things and made it necessary to reinstall.  We'll see what I manage to do there.

No comments: