A week ago ago the OpenWrt project
released a major new version,
I used the firmware
to download a "SYSUPGRADE" file, but when I tried uploading it on my
Netgear R6350, running OpenWrt
19.07.06, I got an error.
Searching for that error revealed that I had to install from scratch
instead of upgrading, due to a change in how networking is
So I decided to postpone updating until I had plenty of time.
Today I had plenty of time. And spent it.
Instead of thinking, I uploaded the second package I downloaded when I
read the announcement and just overrode all the warnings. Bad move - the
access point didn't come back online after that.
I had chosen the wrong package - I should have taken the "KERNEL
(SQUASHFS)", but instead I went for the "KERNEL (INITRAMFS)". I'm not
sure how I made that mistake, but, alas, I did.
After trying to trigger failsafe
and performing a factory
when that didn't work, without any luck, I took the access point apart
and located the place to solder on pins for serial port access.
Luckily I found a nice slide
showing exactly how to figure out which pin is which with a multi-meter,
and I dug out an old serial-usb dongle, some wires and my basic
However, soldering wires onto pcb's is not something I have attempted
before (I've used the soldering iron to make a cable for my Amiga 500 to
make the keyboard "external" in the 1990's, and then I've cobbled
together a cable for controlling my
that's my complete soldering experience). So before going further down
that route, I looked into one more
strategy, using the nmrpflash
tool, which conveniently is readily available in
I didn't have high hopes, because I saw no evidence of the access point
jumping into the network with tcpdump, but I thought I might as well try
In the first attempt I saw something transferred!
It ended with an error, so I tried a couple of more times, which also
ended with errors, but something worked, and the access point started
blinking, and then came up with OpenWrt 21.02.0 on 192.168.1.1!
After configuring it and testing that it worked, I put it back together
and hung it where it belongs. I even got
opkg update working, so I
could install the
crelay-package that I use to automatically control
the power to my
It could have taken 5 minutes, if I had taken the warnings seriously and
double checked the file I was uploading. Instead I spent most of the
afternoon recovering from my mistake. But it's working as it should now, so all's well that ends
well, I guess.
Professor of Atmospheric Sciences Andrew Dessler calmly takes
Ph.D. in political science Bjørn Lomborg's cherry picked, flawed EPA
Tellingly Bjørn Lomborg engages with petty replies in a tweet exchange
about it ("Wow so you're literally saying it is not okay to use EPA
data") - a good indication that his goal is attention rather than
The graph reflects some choices in interpretation of the raw
data, which makes the reply facetious: it's not just raw data, it's data
interpreted into information in a way that may or may not be meaningful,
which is what is discussed by the other party.
But this is how we've always known Bjørn Lomborg - his whole spiel is
"do cost/benefit analysis' and conclude that nothing can be done and
everything will be fine due to future inventions" and conveniently show
only information supporting that stance.
It is hard to tell if he is stupid, evil, or an attention seeking troll.
In this case, I am having a hard time applying Hanlon's
Last weekend Debian released version 11
After the release I upgraded my two small VPS's, which was smooth as can
be - they only run bind and
Postfix, plus one of them runs
I postponed the upgrade of my main/home server until today, a week
Upgrading was reasonably smooth this time, so far I have only had these
- I had to update my ejabberd.yml configuration file manually to make
ejabberd start - that took a while, as it
has changed quite a bit (mostly comments, though).
- I had to update my radicale/config file
manually in similar fashion, and it no longer supports sha1 in the
htpasswd file (but still md5!?) - so I switched to bcrypt. After that
it failed on VCARD entries with no UID, so I added those to the
various VCARD files.
- The old Hatta instance I run needed a
libapache2-mod-wsgi - which doesn't exist in Debian any more, as
Python 2.7 is gone. I had to "forward-port" the package from Debian 10.
It seems to run with the virtual environment I created during the
- Apache::Gallery uses
Text::Template, which had
to be patched to work around taint mode (again).
- For weewex I had to update the weewx-sdr
plugin to match the output
of the newer rtl_433 - 3
patches sent to the author.
I had to build all my Haskell-based websites
cabal new-build and adjust the paths to the binaries.
Interestingly, this time around none of my Perl
based websites broke.
Like this one:
They are a delight.
Follow by RSS - or by nntp on
The second book in the Dragon Lance
Legends trilogy is called War of the
To me it seems like the authors have written themselves into a corner,
where the logic of time travel makes the story too convoluted and not
Perhaps science fiction writers are better at
integrating time travel into their stories? For me it doesn't work here -
I preferred the first trilogy, Dragon
Chronicles, which was perhaps
simpler and maybe less ambitious, but did what it did better.
Rereading this book now, I think I know why I don't have the third book
in this trilogy. This trilogy never really took off for me, and I think
I simply didn't buy last book.
For my jukebox I'm using an old(ish) NAD C 320BEE
amplifier, which works fine except for one thing: when it is powered on,
it starts up in "sleep mode", with no input selected and buzzing
Quite annoying, because I would like the Raspberry Pi to turn on the
amplifier and (active) speakers when the jukebox is unpaused and turn
them off when the sound is paused, using one of those nifty usb
I noticed that the amplifier has an "IR in"-socket, so I started
wondering if that could be used to control it.
And it can!
After looking at Pete
(thanks!), I did this:
- Installed lirc on the Raspberry Pi:
sudo apt install lirc.
/boot/config.txt adding the line
dtoverlay=gpio-ir-tx,gpio_pin=22 to enable the gpio-ir-tx module and select the relevant pin
driver = default
/etc/lirc/lircd.conf.d/nad_sr712.conf from lirc's list
I found an old audio cable with a 3.5 mm jack in one end, and soldered
two jumper wires to it, and connected the center of the jack to pin
22 on the
Raspberry Pi and the top of the jack to a GND pin.
After rebooting the Raspberry Pi, I can now run commands like this:
jukebox:~$ irsend SEND_ONCE NAD_SR712 Input-Aux
jukebox:~$ irsend SEND_ONCE NAD_SR712 KEY_VOLUMEDOWN
jukebox:~$ irsend SEND_ONCE NAD_SR712 KEY_VOLUMEUP
jukebox:~$ irsend SEND_ONCE NAD_SR712 KEY_MUTE
jukebox:~$ irsend SEND_ONCE NAD_SR712 KEY_SLEEP
and the amplifier reacts. At least it does if I don't send them in too
To wake up the amplifier when I turn on the power, I have added a file
/etc/systemd/system/amplifier.service with this in it:
Description=Set up amplifier
ExecStop=/usr/bin/irsend SEND_ONCE NAD_SR712 Input-Phono
And in the setup_amp script, I have:
irsend SEND_ONCE NAD_SR712 KEY_SLEEP
irsend SEND_ONCE NAD_SR712 Input-Aux
irsend SEND_ONCE NAD_SR712 Input-Aux
irsend SEND_ONCE NAD_SR712 Input-Aux
As you can see, some fiddling with timing (and retrying) is prudent. And
I finished volume 3 of the Dragon Lance Chronicles trilogy, Dragons of Spring Dawning, recently -
after reading volume 2 some time
The last book of the trilogy continues in the same style as the second -
it reads like an epic AD&D-session. It's fun, varied and full of
clichés, some of course aimed at your tear ducts - and it finishes the
storyline in an appropriately grand way.
This one also says $3.50 on the cover - no Danish price sticker, and no
notes from when I read it the first time on the pages.