Thursday, March 3, 2016

How Can I Possibly Be Annoyed at the Raspberry Pi

Yes, they're all over the place and my Google news feed keeps telling me about how wonderful they are, but I almost threw one across the room today. The story is that my weather station Pi lost its SD card; they do that sometimes due to the heavy usage the cards aren't designed for. I've had it happen before, and thought I was prepared this time. You guessed it, I wasn't.

Yes, I have backups of the system, and backups of the software; the problem is that I didn't expect the folk that control the Raspberry Pi software to close some doors on me. You see, after I decided to update and upgrade the OS on the Pi, it wouldn't boot. I like to stay reasonably up to date on my stuff, but often wait a while to get the latest OS and tool changes. With the other non-technical projects I've been working on, it's been a few months since I took the time to update the little machines. During this period Raspberry Pi went from Debian Wheezy to Jessie.

Besides the usual wondering who the heck thinks up these silly names, I thought now would be a good time to update my systems. That was my first mistake; my second was when I didn't read ALL about the changes in Jessie. You see, they decided to use 'systemd' as their default init process and I switched to upstart quite a while ago because it was better. There's a few hundred pages out there on what's best and why, but I don't really care about that; I just want something that works, and I can keep updated.

Fine, I'd switch to the default for the Debian Jessie, but you can't update over a Debian Wheezy that has upstart on it; that makes the machine unbootable. To add insult to injury, this all happened when I was trying to update Wheezy. They don't update Wheezy, they switched me over to Jessie and just left me hanging.

Literally. Yep, hanging on a console message with the machine unable to boot.

I know how to get out of this mess and catch my machines up to the latest, but I really hate having to do it. At least it was my weather station and not the control system for the house. So my plans are to update to Jessie, then load all the packages I use to run this stuff, and finally to update my startup scripts to use the init they want me to use. Probably about three or four days of fooling around for the weather station, then I get to do it all over again for the house controller.

I want to be up to date with the latest because, eventually, the Pi Zero will be back in stock and I really want to play with it. No, I won't worry about updating something that will become a control part inside something else; I'll just use it like some other chip. I'll have to be careful to isolate any code on one away from the OS and come up with ways of starting processes that don't involve the OS, essentially treating them like little black boxes. At $5, I won't much care if they fail and have to be replaced. Sort of takes some of the fun out of them though.

The very next iteration of my devices will NOT use the unix facilities to start and stop processes or to monitor what they do. I'm going back to basics and working out ways to handle it that don't rely on some programmers data politics.

Subject change. A few folk have expressed disappointment that I haven't been posting about my tractor rebuilding, dog door, trenching, culvert, and other projects for the last few months. When I told them that the projects weren't technical, they said, "So?" I didn't have an answer because I've written about rattlesnakes, dogs, shades on the patio, etc.

Sorry tech weenies, I'm going to go back to my old ways and talk about surviving in the desert with a bunch of technology included. It just may be hydraulics, water flow, pruning techniques and such as well as little tiny computers and hacking into strange devices. Heck, I may well post about the technical aspects of using snake shot to control the varmints that try to kill me, as well as my continuing war with woodpeckers.

But my Pi 3B is already on order.

4 comments:

  1. Hi Dave,

    re: the silly names of Debian releases… see the “Index of releases” at https://www.debian.org/releases/ The names are Toy Story movie characters.

    re: your SD card and system rebuild issues… maybe have a look at Docker — https://www.docker.com

    I have zero experience with Docker on the Pi (yet, it’s on my list), but Docker addresses some interesting issues with building and maintaining — in a configuration-controlled manner — images we create and install in various compute environments. For an example, see https://opensource.com/life/15/9/experimenting-docker-raspberry-pi -- I know it’s yet another layer (and I don’t know its overhead on memory-constrained devices), but it might have some potential, and I’m just offering up the “link”. Maybe it’s another “MQTT moment” :)

    BTW, good to see you back.

    -Brant

    ReplyDelete
    Replies
    1. Yep, I really had to eat crow on MQTT. I still haven't converted all my devices to use it, but it has just continued working its little heart out for months now without a single problem.

      So, you can bet I'll take a close look at docker.

      Delete
  2. Hiiiii Dave:

    I've told you a bit about OpenStack, SDN/NFV that I am working on.....well there are these cute little services of Openstack called Cinder and Swift and guess what, they work with QNAP NAS. Neat thing about these is that they are designed to store images as Docker does. They also work with RabbitMQ (which is much like MQTT).
    Is this starting to sound like our MQTT discussion all over again? Docker on a Pi, hmmm. This could be interesting.
    BTW my sympathies with the SD Card. Sucks when they go away.
    Good to see you back to automation for a while....
    Cheers.
    Glenn.

    ReplyDelete
    Replies
    1. I haven't had a chance to look at docker much, but the idea is good. My problem is that I want to keep somewhat up to date without having to rebuild everything in site each time. Once when I updated, I got a new apscheduler, it had gone to version 3 and that meant changing code all over the place. That kind of thing has caught me by the bottom five or six times now.

      I may have to give up and simply pop an image on the NAS and just forget about updating on some of the devices. I wanted to get up to date on the OS because they finally made a major run on the Pi Zero and I'm really interested in that device.

      Yes, yes, I know embedded Linux has been around a long time, but you haven't been able to buy a device that had it ready for further development easily and in quantity for next to nothing.

      Delete