Raspberry Pi Software Setup

In an earlier posting we saw the “unboxing” of the new Raspberry Pi Model 2, in this posting I’m going to cover the software setup.

As that “kit” came with a chip with NOOBS, or the “New Out Of Box Software” software installer and manager already on it, basically initial bring up was to click on “Raspbian” and wait an hour.

In slightly more detail, first assure the micro-SD card is in the slot as shown in the photo in the prior posting. Plug in the power cord (and with keyboard, mouse, video and network cable already in place) wait through the ‘boot to NOOBS’ process. At that time you are given a set of choices (as listed in the NOOBS link above). I clicked on the “Raspbian” choice (Debian for the Raspberry Pi) and from that point on, the install is fairly automated. Essentially as in that documentation (though they don’t list network cable, you need it):

First boot

1. Plug in your keyboard, mouse and monitor cables.

2. Now plug in the USB power cable to your Pi.

3. Your Raspberry Pi will boot, and a window will appear with a list of different operating systems that you can install. We recommend that you use Raspbian – tick the box next to Raspbian and click on Install.

4. Raspbian will then run through its installation process. Note this can take a while.

5. When the install process has completed, the Raspberry Pi configuration menu (raspi-config) will load. Here you are able to set the time and date for your region and enable a Raspberry Pi camera board, or even create users. You can exit this menu by using Tab on your keyboard to move to Finish.

Logging in and accessing the graphical user interface

The default login for Raspbian is username pi with the password raspberry. Note you will not see any writing appear when you type the password. This is a security feature in Linux.

To load the graphical user interface type startx.

Refer to our documentation for more information.

At the end of the time (roughly an hour on my network) you have a working, if not fully populated with all desired things, operating system. As I am a systems admin / hacker type, I chose to add that kind of software. You might well find another mix desirable. The available packages in the software archive are many. Very many…

For me, I’d somehow missed the setting of my keyboard for the USA, so had to relaunch NOOBS and choose the “localization” option re-setting my keyboard from UK to USA. Yes, you can run it over and NOT install a new OS, just change some options.

The basic way you install software at the command prompt (the way I tend to work) is with a command called “apt-get” followed by the “package” name. The “package” sometimes is not named the same as the missing command / application, so you might need to do a web search to find the magic sauce.

For example, I wanted the “nslookup” command. I use it often. It is normally used to find the “IP Address” (network ‘phone number’ of sorts) for services on the internet. I often use it to figure out if DNS (Domain Name Service or resolution) is working.

Sidebar on Name Service:

Here you can see my prompt, the command being typed, and the results:

root@RPiM2:/home/pi# nslookup yahoo.com
Server: 10.16.16.254
Address: 10.16.16.254#53

Non-authoritative answer:
Name: yahoo.com
Address: 98.139.183.24
Name: yahoo.com
Address: 206.190.36.45
Name: yahoo.com
Address: 98.138.253.109

That said I was logged in as “root” or the “superuser” (the “All Powerful Oz!” ;-) on the machines named “RPiM2” and was located in my home directory (actually the home directory of “pi” or /home/pi) and had ‘become root’ see below…

I issued the command to “nslookup” or Name Service Lookup of the site “yahoo.com”.

FIrst off, that I GET a result tells me the machine is working, and that DNS is alive. (If the result is valid, then it is working correctly as well ;-)

The first 2 lines say that the “name Server” is at address 10.16.16.254 and that I’m getting DNS service from it on port 53.

This tells me that I HAVE a DNS server configured, have an IP number, and I’m talking to things on a working network (Local Area Network).

Then there are 7 lines of “answer”. That it is “non-authoritative” doesn’t mean it is wrong, it just means that it is “2nd hand” from the server that does control that domain (likely somewhere inside Yahoo!). I then get three possible addresses. This means that Yahoo has redundant external servers (not just one machine) on a load balancer set up of some sort.

At this point I know that DNS service is working correctly too, along with WAN or Wide Area Networking as my local DNS server had to “reach outside” to get the answer.

And that is why it is good to have “nslookup” installed. Just one little command can confirm the entire core of your network and operating system is working.

But it didn’t come installed, so I had to get it. (Which itself depends on a working network…)

To test the network, you could “ping” one of those network numbers, or ping by name, to verify it all.

root@RPiM2:/home/pi# ping yahoo.com
PING yahoo.com (98.139.183.24) 56(84) bytes of data.
64 bytes from ir2.fp.vip.bf1.yahoo.com (98.139.183.24): icmp_req=1 ttl=46 time=99.6 ms
64 bytes from ir2.fp.vip.bf1.yahoo.com (98.139.183.24): icmp_req=2 ttl=46 time=97.9 ms
64 bytes from ir2.fp.vip.bf1.yahoo.com (98.139.183.24): icmp_req=3 ttl=46 time=97.1 ms
^C
— yahoo.com ping statistics —
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 97.188/98.261/99.628/1.079 ms
root@RPiM2:/home/pi#

It is polite to kill the ping after just a fiew packets. In Linux / Unix that is done with the “Control C”. You can see that as ^C in the 6th line. If you don’t do that, you will ping forever…

Once “killed” with control C, statistics were printed that I had picked 98.139.183.24 to ping (via their ’round robin’ selector, and three packets were sent. TIme for each was just a bit under 100 milliseconds. Total elapse time, just a hair over 2 seconds.

Installing Software, Really

To install that software, I tried “apt-get install nslookup”. No joy.

root@RPiM2:/home/pi# apt-get install nslookup
Reading package lists… Done
Building dependency tree
Reading state information… Done
E: Unable to locate package nslookup

A web search on “apt-get install nslookup” gives many potential places to ask:

How to install dig or nslookup in Debian without BIND?

I’d like to directly query the DNS server with dig, nslookup or any other scriptable command, but when I try apt-get|aptitude install dig|nslookup, apt* insists that it is dependent on BIND. I don’t need a local DNS server, I just want to query a remote server!

[Search domain http://www.linuxquestions.org] linuxquestions.org/questions/linux-newbie-8/how-to-install-d…

apt – How to tell which Ubuntu package a tool is in – Server …

As a concrete example I want to be able to take a particular tool that isn’t installed (say nslookup) and be able to tell which package I need to install when the following fails: apt-get install

[Search domain serverfault.com] serverfault.com/questions/203685/how-to-tell-which-ubuntu…

Help with proxy and apt-get / nslookup – Ubuntu Forums

Hi, I hope someone can help me. I’m trying to use ubuntu at a work site that uses a proxy server to access the outside world. After installing ubuntu, I am not able to run apt-get or any update tools, it fails on the download. I cannot run nslookup, ping, apt-get or any command line tool. But if …

The short answer is that one of them tells you it is in a bundle called “dnsutils” with some other stuff you want…

Everything must be installed as “root”. You can do that more safely by using the “sudo” command in front of the “apt-get” like:

sudo apt-get install dnsutils

I tend to be a bit more comfortable as root, having worked as root the better part of 35 years now. YMMV. So I “become root” and just stay there while doing all this install. At the end, I exit with “exit”. How to “become root”? Easy. Just “sudo” a shell.

pi@RPiM2 ~ $
pi@RPiM2 ~ $ sudo bash
root@RPiM2:/home/pi# whoami
root
root@RPiM2:/home/pi# exit
exit
pi@RPiM2 ~ $ whoami
pi
pi@RPiM2 ~ $

Here you can see my “prompt” change from pi@{machine name} where I named it “RPiM2” with the $ saying “not superuser” to a “root@RPiM2” and a # prompt to let me know I’m root. You can also see that revert with “exit”.

OK, ether become root, or put “sudo” in front of all the “apt-get” commands from here on out.

Here is the example for dnsutils:

root@RPiM2:/home/pi# apt-get install dnsutils
Reading package lists… Done
Building dependency tree
Reading state information… Done
The following packages were automatically installed and are no longer required:
kodi kodi-bin libcec2 liblockdev1 libmicrohttpd10 libnfs1 libpcrecpp0
libqt3-mt libshairplay0 libtinyxml2.6.2 libvdpau1 python-imaging python-qt3
python-sip
Use ‘apt-get autoremove’ to remove them.
Suggested packages:
rblcheck
The following NEW packages will be installed:
dnsutils
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 162 kB of archives.
After this operation, 309 kB of additional disk space will be used.
Get:1 http://mirrordirector.raspbian.org/raspbian/ wheezy/main dnsutils armhf 1:9.8.4.dfsg.P1-6+nmu2+deb7u5 [162 kB]
Fetched 162 kB in 1s (110 kB/s)
Selecting previously unselected package dnsutils.
(Reading database … 90100 files and directories currently installed.)
Unpacking dnsutils (from …/dnsutils_1%3a9.8.4.dfsg.P1-6+nmu2+deb7u5_armhf.deb) …
Processing triggers for man-db …
Setting up dnsutils (1:9.8.4.dfsg.P1-6+nmu2+deb7u5) …

That’s what a typical package install looks like. Download a bunch of stuff, ask if you want to spend the needed disk space, and do it.

Just repeate this process for all the software you can eat.

What Else?

The machine has a list of “packages”. It is nice to make sure that is up to date with the new stuff at first install. To do that, you do:

sudo bash

apt-get update

apt-get upgrade

That takes a little while to update the package library (“update”) and bring all the installed packages up to date (“upgrade”). Then you proceed to install any added things you want, such as dnsutils.

I’m going to list the ones I chose below. Comments that do nothing are anything after a “#” sign. So “apt-get install nsutils #This installs the name server tools” is just the install command with a comment after it starting with “#This…”

Here’s my list (so far) in about the order I installed them:

apt-get install wicd #for wireless. Much easier. Added ‘profile’ of wireless.

apt-get install scrot # if you want to take screenshots

apt-get install chromium #For the Chromium “Chrome” like browser

apt-get install gimp # A nice image / photo editor

apt-get install libreoffice # The old “Open Office” suite without as much baggage

#apt-get install buld-essential #Was already installed so I didn’t need to do this.

apt-get install iceape #A slightly more “free” IceWeasel that’s a “freer” Firefox

apt-get install icedove #The related mail reader

apt-get install xbmc # A media center that didn’t work as sound is not working for me

apt-get install arora #Browser. launches with error message…

To add the DuckDuckGo search engine to IceApe was a royal pain.

After installing ice-ape, I had to use Edit:Preferences:Internet Search: Manage Search Engines and then click the link to "Get more search engines" that goes to a web page where you can add the https / ssl version of Duckduckgo.com

https://addons.mozilla.org/en-US/seamonkey/search/?atype=4

then in the search box put "duckduckgo" and pick the htmls / ssl version.

THEN go back to edit:preferences:internet search and choose it in the dropdown for default AND go to the "manage search engines" and move it up to the top of the list. Such a kludge…

And with that, I was done. I did a ‘reboot’ for no good reason, and started using it.

Subscribe to feed

About E.M.Smith

A technical managerial sort interested in things from Stonehenge to computer science. My present "hot buttons' are the mythology of Climate Change and ancient metrology; but things change...
This entry was posted in Tech Bits and tagged , , , . Bookmark the permalink.

18 Responses to Raspberry Pi Software Setup

  1. Larry Ledwick says:

    Good intro tutorial EM!
    For those who do not work with ping, it also tells you a couple other useful things.
    (it is disabled on some networks how ever so may not always be available to use {ie other devices will not respond to ping} )
    The request numbers in that listing should go in sequence 1, 2, 3, 4 etc. If not and they skip numbers you are dropping packets. The link is working but it is unhappy about something like maybe a bad cable or funky network card. The ping time in milliseconds also gives you a hint about the quality of your connection. I assume ping takes about 15 milliseconds for each node (router switch) it goes through plus the electrical time of flight on a wire to cross the connection. If you pay attention to that number and it suddenly climbs to large numbers something is going on.

    We once had a customer who would scream bloody murder about our slow network every night about 02:00 in the morning. He shared the same subnet with another account. Ping times on the other account were normal but his ping times were in the 900 – 1200 millisecond range. I told them it looked like they were doing a denial of service attack on themselves with a big code push or FTP transfer or some sort of massive data copy. When I told them that other users on the same sub net had no issues and told them the ping times I was seeing they started asking questions. They never did tell us what they were doing, but the problem went away shortly after, and we were no longer getting blamed for having network problems.

  2. E.M.Smith says:

    I’ve added
    apt-get install transmission
    to my set of things installed. It’s a web bittorrent server.

  3. beng135 says:

    EM, prb’ly aware of it, but:
    https://www.grc.com/intro.htm
    gives alot of interesting security tests by a guy in the security business for yrs.

  4. beng135 says:

    EM, a set of powerful & maybe dangerous Linux commands, in sequence:

    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get dist-upgrade

    These are “blanket” upgrade commands that update just about everything. I did it without issues on Mint Linux 17, but some forums say several of the updates are potentially unstable (like updated firmware/drivers for devices). But others say do it anyway — the potential instabilities are unlikely to occur for most, other than developers/hard-core gamers. In addition, I got several updated programs & drivers & seems to have improved my video performance a bit.

  5. E.M.Smith says:

    I’ve gotten the USB drive to work via the USB powered hub and NFS shared it. The filesystem is NTFS and it would only mount Read Only on Centos, so a bit more to do before I put the ‘recipe’ up. Progress…

    @Larry:

    Ah, the PIBKAC problem. (Problem Is Between Keyboard And Chair ;-)

    Yeah, had folks complaining about shooting their own toes before… does the hart good to gently let them discover it …

    @ beng135:

    For basic Debian, the update / upgrade is pointed at one of three distribution levels so you can choose “bleeding edge” or stable as you like it. For the R.Pi I’ve not seen that (nor, does it seem, are they forkig the code for the PiM2 despite a different chipset and mulitcores… but just sort of living with the bugs and complicating the code for now).

    So yeah, for the R.Pi I think the notion is that the code base available to the public is the “stable” and only a few delopers really get the “unstable” via a source tree. Personally, I’d rather that there were more release levels on line, but I’m a packrat ;-)

    Dist-upgrade is for changing what “distribution level” you are using (so a move from Wheezy to Jessie). Not sure what it would do with Raspbian as I’ve not explored how releases are done there and if there are ways to get different releases…

    And yes, if you “upgrade” to a broken package you are kind of screwed until you figure out what and how to back it out. The one thing I’d like to see that isn’t in ‘upgrade’ is an automatic “rollback” feature where you could issue a command, or on first boot if it failed to get to the right run level it would auto-roll back. But it hasn’t been enough of a priority for the developers to do it, and I’ve not been on Debian enough for me to do it… (instead I’m building a PXE boot server and I’ll just change the boot string when I ‘upgrade’ via putting a new build level in the boot server and to roll back is another string change…)

    That “Spin Right” site is interesting. Looks like a “Recovery CD” using FreeDOS instead of Linux. Interesting idea. I’ve typically had enough copies of data on enough media that a disk failure is just a “hardware swap and melt the old one” event. We did send out a disk once to a site somewhere up near Seattle? who specializes is recovering the unrecoverable (down to even taking the platters out and reading the data with new hardware if your old hardware died…). Expensive but it worked. I’ve recovered a couple of disks (when at Apple) via a swap of electronics. For a while some hard disks would have the electronics die after a few years. Just swapping the controller board from an identical disk would recover it. Looked like FM to everyone else ;-) But as long as their was no “screech of death” from a head crash, or no slow degradation in the error logs from the oxide flaking off and slowly sanding the surfaces (where most data can be recovered, but some is just “in the wind” inside the disk) it was often a 100% recovery. Not had that happen for a decade or two … Have had a bearing freeze up in storage and an old archived disk be a “no go”. (Sometimes can be restarted by a hard torque of the disk in the plane of rotation when powered. Inertia keeps the platter still while the body rotates and can get the bearing grease to loosen a bit… then warm and go.) Ah, the good old days ;-)

    Why I have often said “tape is your friend”, though lately it’s tended to be a TB of USB disk in a drawer somewhere ;-) Always one copy not plugged into anything so EMP, lightning, rogue code, whatever doesn’t fry it.

  6. E.M.Smith says:

    Got the NTFS file system on the USB disk to NFS export / mount read-write!
    more on that here:

    Raspberry Pi M2 Unboxing and Setup

    Basically needed to install the ntfs-3g file system driver for NTFS.

    Now I’ve got a Real File Server farm started… Oh Boy. I’ve also installed Apache and tested it, have it running dnsmasq and doing both DHCP / DNS for that ‘back room network’, and I’m ready to start the configuring of PXE boot. With luck, sometime tonight, I can try “variety booting” the EVO via PXE. A BIG time win, as I can stop screwing around with the OS on it, and just “boot whatever works” via a PXE pointer swap. I already have my “home directory” on a removable drive and can put it on any box. With NFS archives now, too, it’s “any files available anywhere” time.

    At that point I can boot the OS Du Jour on “whatever” compute server, have my home dirs and archives hanging around, and don’t care what breaks. (Restore home dir from backups if that device has issues. Swap CPU / system to boot and mount files. Change OS at will. Etc.)

    I’ve got more “polishing” to do as this install has been a bit “fast and loose” so some loose ends to clean up, then put things in ‘proper order’ and post the best path through this process. As I have a 2nd empty 64 GB SD card, I may just have a ‘do over’ of the whole process following my “script” and make sure it works right. This SD card has be fragmented into 5 or more OS installs (Raspbian, Arch, 2 x media servers, Pidora…) and that’s left Debian with “only” 12 GB free. While that’s plenty if I put the OS copies on the NFS file system, or just have a couple of PXE copies on the card, I’d rather have a straight server card set up (and then imaged to archives…) and it would be a good test that I didn’t’ miss something in my notes. That would also give me about 40 GB of space for “OS Du Jour” to net-boot, and that ought to be plenty.

    After that, and about another week of weeding out old duplicate crap copies of things, I can probably proceed to setting up a RAID like storage set on the file server (as of now, if a spindle dies, (a disk) I need to go digging in offline archives to recover what I can. I’d rather have a bit of RAID spinning so if I lose a disk, I just plug in a new one and let it rebuild…)

    In a way, it’s almost scary to have so much infrastructure coming together and have the cost be so ‘nearly nothing’. At the moment, I have 6 cores on 3 machines up and running with 1/2 TB of disk spinning. There’s another 3 whole machines doing nothing (with 5 OSs between them) and 4 TB of offline storage not spinning at the moment.

    Maybe I ought to start actually doing something with it all instead of just building “infrastructure”
    ;-)

    I think that by the end of the week I ought to be ‘nearly done’ with the infrastructure bits. Then I can start in on the GIStemp re-test re-port polish and maybe even see if I can port it to the R.Pi.

    For now, I’m going to “take a break” and just do non-root browser and file triage stuff for a few hours. It’s been a long Friday to Sunday…

  7. Paul Hanlon says:

    Fair play to you, E.M.
    It’s hard to credit that even with a 2A wall wart, it didn’t have enough “oomph” and you ended up having to power it from a hub. I’m sure I read in a forum somewhere that they bumped up the power available at each usb port on the RPiM2 to 500ma, which should have been adequate.

    Getting the NFS working was a major milestone for me. Being able to have all important stuff in one place totally changed the way I do things. I’ve put a Git server on it, and there’s still a bit of work to do on it and more files to put on it, but I’m now able to go to one place and know that the file I’m working on is the very latest and greatest. That’s incredibly liberating.

    I found a PHP Git server, which is very small and easy to configure, called viewgit. It works fine, but it was abandoned before all the functionality could be added to it, such as adding a file to the staging area, but it’s good enough for my needs because I just wanted to find out how the messages are passed around so I could incorporate it into what I’m doing.

    Another thing I’ve been looking at is ncurses programs. Yes, they’re clunky, but the idea that you’re almost getting a GUI directly from the command line, just appeals to my sense of minimalism. There’s Midnight Commander for files, htop for top with purdy colours, hnb (or Hierarchical Notebook) for nested notes, iptraf and iftop for network diagnostics. It’s amazing how useful hnb is.

    There’s another one called alsamixer (which comes with alsa-utils, which should already be on your disk, but if not, should be available from the Raspi repo), and I wonder if it would be any use to you to troubleshoot your audio problems. I haven’t used this, but I just figure that with the extra information, or even an explanation as to why it fails, might give some insight into why you’re having difficulties with the sound on that board.

  8. E.M.Smith says:

    @Paul:

    Yes, I’d tried the ALSA stuff. That was where I’d even found a nice script on line to do all the commands for you and ‘set things right’. The problem seems to be that even with the absolutely right commands, the ALSA mixer doesn’t set the volume above mute. Done by hand. Done by script. Whatever. The “mixer” is the problem and I can inspect it and see the “forced mute” setting. It just won’t change.

    Since sound isn’t a big issue for me, I’ve not worried it much. I can always use other boxes if I’m really wanting sound (having been profoundly deaf for a year or two makes sound a bit optional in your world view ;-) but since I now have eardrums again… I do like sound. But the Cromebox does it fine when I want it. (As do several other boxes I’ve got… so not hurting).

    I’m more “driven” to get my data archive cleaned up, get GIStemp (several versions) running again, and have a SILENT browser experience. (As now, with the R.PiM2 being absolutely silent as I type this on it…. I really developed an appreciation of the beauty of actual quiet when deaf… I often miss it greatly… )

    ncurses is one of those things I’ve been meaning to look at for years, but never got there. Maybe I’ll look at it “soon” ;-)

    Oh, good point on GIT! I need to set up a GIT archive / server on this thing too… Been meaning to do that and completely blanked on it…. Thanks!

    Per power:

    Well, in fairness, this thing does have 4 cores in it, and I’m running a wireless USB to the keyboard, and a wireless dongle, and mouse and HDMI… so adding a big fat disk sucking power like crazy was too much… OK, I can see that. Would likely work fine headless without all the other power draws on it (HDMI… KB mouse…) but I already had the hub… (In fact, it has been powering my RPi B model and not doing anything else… so I just swapped it to where I could actually use the hub part of it too. I’m using a $5 2 A USB plug thing to drive the board, and the hub for disks and such. It has something like 5? more ports in it so we’ll see where it hits a wall ;-)

    At this point, I’m very much a “happy camper”.

    As soon as PXE boot is up, even more so. But, frankly, as of right now I’ve got 90%+ of what I wanted. Just sound and “PXE boot for other boxes” to play with left to go. I have my files / archives available and sharable to any other box. A stable and working Linux world to play in. A browser that’s fast enough and works well for web page reading / posting / blogging. AND it does a variety of “back room” tasks like caching DNS and such. For $60 all up? I put that much in the gas tank yesterday and it will be gone in a week… The Chromebox sits unused for 3 days. The Debian Evo is idle and has been for 2 days (even though I now have a way of making it stable… with the GPU offline in it, the RPiM2 beats it! for experience quality). The Centos 64 bit box is shut down (as it whirrs something fierce from too much fan…) All that “stuff” being outdone by a pack-of-cards sized box that cost less than a tank of gas or dinner out with the spouse.

    So they all have become “special uses” and this is now the “daily driver” (with the Chromebox for “daily driver for AV stuff” as needed). Makes a fellow happy 8-)

  9. Paul Hanlon says:

    Great stuff. That PXE booting looks very interesting. I looked a little round the web. Would that allow you to have a “cluster” image on the network drive, connect all your machines to it to download the image and then with a small bit of configuration have a Beowulf cluster?

  10. E.M.Smith says:

    @Paul:

    Yes.

    One image for the Master control station, another for slave compute nodes. Commonly done, btw, as configuring 2000 nodes by hand or even “automated but local disk installed” is a royal pain…

    much easier to have a Master that also PXE Boot serves images to the slave nodes. Then adding nodes is just setting the BIOS to PXE…

  11. Pingback: Raspberry Pi Build Script | Musings from the Chiefio

  12. Pingback: Raspberry Pi GIStemp – It Compiled | Musings from the Chiefio

  13. beng135 says:

    EM, on the grc site, try out the security tests on the “Shields Up” link to test an array of possible security issues on your connection — a DNS “spoofability” test, a router “crash” test, open-port tests, etc.:

    https://www.grc.com/x/ne.dll?bh0bkyd2

  14. beng135 says:

    EM, look here for a fascinating, for me, program — Dnsbench.exe (a Windows prog):

    https://www.grc.com/dns/benchmark.htm

    Does quite an analysis for such a small program. Results show I have some much faster DNS servers available to me than I’m using.

  15. E.M.Smith says:

    Just as a warning and FYI:

    I’d used the R.PiM2 for about a week with no problems. So decided to rearrange the ‘lab’ for more long term use. In the process, the old R.Pi B+ got moved off of the USB hub that had been powering it. I put a couple of disk on that hub and moved the PiB+ onto the power brick from the RaPiM2. I had a USB cheap ass power adapter with 2 usb outlets and 2 A printed on it, and decided to use it for the M2. Powered up and everything was fine.

    There was a rainbow splash panel that showed up at boot, but I figured that was just part of the OS upgrade I’d done just before powerdown. I was wrong. But who ever heard of “rainbow” meaning “danger danger Will Robinson!”…

    There was also a cute little rainbow square that showed up in the upper right corner just under the CPU meter. It would show up and brighten, then fade, roughly with bursts of CPU usage. I guessed it might be some kind of I/O or CPU use or ‘whatever’. Time passes.

    After about 2 days, I noticed that when using 2 browsers at once and doing things that loaded it up some, a browser would crash. Just close up shop and be done. At first I thought it was a Chromium bug, but the Epiphany did it too, and IceApe… I thought maybe this wasn’t as useful a machine as I’d first thought… I was wrong again.

    A bit of digging on “what is that rainbow square” led to the explanation that it is a “low volts” meter. It would have been VERY helpful to have had the word “volt” printed in it… Icon communication can be very fast and effective but only once the icon meaning is a shared understanding. Words have the advantage that you know what to look up and often can guess it.

    Moving the B+ onto that power cube seems to work OK (doesn’t have 4 cores, so no added burst of power demand, and nearly nothing plugged into the USB ports for power) and the M2 is back on the shipped power brick.

    Here’s some useful info link:

    https://www.raspberrypi.org/forums/viewtopic.php?f=29&t=82373

    by dom » Sun Jul 20, 2014 4:08 pm
    The B+ has an under voltage detect trigger which results in the power led going off when voltage drops below about 4.65V.
    The signal is also available on a gpio line (GPIO35).

    Latest firmware update will display a warning symbol in top right of display when this is detected.
    It will also disable turbo mode while the warning is displayed to try to reduce the chances of crashing.

    I’ve also added a warning symbol to the existing over-temperature condition (> 85’C), which also disabled turbo mode.

    Currently the symbols are:
    Red square: over-temperature
    Rainbow square: under-voltage

    As usual you can override the behaviour in config.txt if you understand the risks:
    avoid_warnings=1 removes the warning overlay.
    avoid_warnings=2 additionally allows turbo when low-voltage is present.

    For testing you can make the temperature warning trigger more easily with “temp_limit=50”.
    You can probably trigger the under-voltage check by using an insufficient power supply (perhaps USB socket from PC), or a dodgy micro-usb cable from ebay.

    Run rpi-update and report back if it behaves as expected.
    You will need a B+ to test the under-voltage state. The over-temperature should work on any Pi.

    There were folks on another link arguing over what to call it. “Rainbow Screen Of Death” or “Rainbow Square Screen Of Death” or…

    But at least now you know. The Rainbow is NOT your friend…

  16. Pingback: Cloning USHCN Daily Data | Musings from the Chiefio

  17. Pingback: Well That Was Fun, sort of… | Musings from the Chiefio

  18. Pingback: RaTails – Draft High Level Steps | Musings from the Chiefio

Comments are closed.