Jul 142018
 

Old hardware can be fun to keep going, especially when one of the branded and expensive operating systems stops support on otherwise very good hardware. For a few friends I have installed Xubuntu 16.04 LTS and act as support and tutor. Recently I picked up a discarded 2004 Toshiba and gave it a try. Well, I think there is a limit to how old a laptop or computer I want to do much work with.

For my friends I suggest they do what I do, hence the Xubuntu installs. This way I can also answer some questions on very short notice and perform rescue if there is a glitch or mistake or a badly needed update. I know the menu and main applications and I can look up others in the repository. These people have acquired a decent machine or even buy one, maybe on sale or re-furbished. My current preference is for a 64-bit, 4GB ram and any hard drive that is newer, these are now measured in 100’s of GB’s. The 2004 Toshiba had a 60 GB hard drive and that was enough for installation in 32-bit, but there were other problems.

The old 2004 machine, excellent in its day, was very limited: only one available slot for ram and an early Celeron(tm) processor, not even a Celeron M(tm). Processors are constantly improved and every decade make a leap of 2^5th, if they double in speed every two years, and therefore allow increase demands from the applications. The 2004 could not do multi-threading and was limited to the 32-bit and single core, single thread processing. As a tool it was limited everywhere one would expect increased ability. The Peppermint 8 OS was maybe not the best choice – it is geared toward Internet connectivity and processing which demanded too much from the bus and processor. The games, for instance, were opened by the ICE-SSB links. The “ICE” name for the launcher is the Peppermint nod to an earlier nickname of their OS. It uses the launcher to open a “single site browser,” that is Chromium locked to a single site and without toolbars.  This technique is used elsewhere for Internet test centers an other kiosk-like controls on the user to focus on only allowed activities. For example on a test of scientific knowledge taken via the web, the browser locks me on the test and I cannot access an encyclopedia to find the answers. Unless I also have a cellphone in my hands, too. The effect of the added overhead on the processor of browser plus controls was too much for the 32-bit processor and ram. Locally installed games worked much better, as one would expect. Typically I could play Solitaire and watch the sensors [‘watch -n 10 sensors’] and see the machine cool down. It heated up when browsing and shut down once when I was not paying attention to the heat. Clearly I was asking too much of this old device.  I have assigned this old machine to re-cycling; taking a few choice working sub-assemblies out for use in newer machines I can get to function reliably.

I have the “Net Install” version of Debian on disk and will be using it on 32-bit machines. The Ubuntu threat to cease 32-bit support makes sense for any really workhorse machine; 64-bit, multi-core, multi-threading and larger ram are expected for Internet and visual applications. Still I know that the 32-bit machine with enough ram and bus speed can adequately do most of what I commonly use my computer to do. Currently I have a Dell from 2005 which has the CeleronM(tm) processor and 2 GB ram and it seems to run much better with the Peppermint OS or the Debian 9, Stretch. I am using the Debian Stretch to see just how well it will work and so far it does well, handling local and network access creditably. It will do as a demonstration machine to bring to meetings, though a bit heavy when compared to current portables. And, alas, the optical drive is noisy, but working for now. Unless I find a replacement that is not quite so worn out I won’t use it for audio disks. All in all it shows that 32-bit is sufficient when given enough ram and is used for the basic tasks of e-mail and Internet browsing and running applications made for the installed OS. It can certainly do as a standby machine to access e-mail if I’m doing repairs for myself or someone else. We have become so accustomed to being connected it seems a necessity.

While experimenting with Peppermint I discovered Quod Libet, a music player with built-in browser and accumulator of Internet streaming audio. This ran well on all the machines tested, even the 2004 Toshiba. I have re-discovered the fun and the frustrations of streaming radio as it exists outside of the services that include an algorithm to play what it thinks I want to hear. You know the ones, you join and put in an artist or song and voilà, hours of homogenized music. Instead, the streams collected by Quod Libet seem to be independent radio stations around the world, always interesting, sometimes almost randomly playing music so disparate as to jar the ear. It is some fun to listen for a while to New South Wales, Australia or Paris, France and get a take on pop and hip hop I might otherwise never imagine. The browser claims over three thousand stations, though I suspect some duplication, still, many more than I can get via fm radio in Santa Fe, NM, USA.

Nov 072013
 

Tonight we recovered a beagleboard! Many months ago we tried to install Debian and lost video and network access to the device. Obviously, U-Boot wasn’t able to boot the broken Debian install attempt.

beaglebone-black-serialWe attempted to re-flash using the SD card and that didn’t work. So, we thought it was broken at a deeper level and thought serial access would be helpful. A few meetings ago we attempted to build a serial cable that would interface with the BBB. We tried a standard rs232 serial cable and matched the pinout to the BBB board serial pins. Much continuity testing with a multimeter was required to match up pins. Yet, nothing we did worked. Then we realized that its not rs232 and is in fact TTL Serial (a description of the difference). Sam bought a TTL to USB controller and we used a ribbon cable and a breadboard to hook them up.
bbb-ftdi
Once we successfully connected to the BBB over serial we saw the BBB was outputting the character “C”. CCCCCCCCCCCCCCCCCC…..
We asked on irc.freenode.net #beagle and the user magyarm told us that the C output means that the BBB can’t boot and all we need to do is re-flash the eMMC from a SD card. We previously had tried this and it didn’t work so the consensus was that we did it wrong. We retried the flashing of eMMC using the SD and we are happy to report a success!

We downloaded Robert Nelson’s Debian install image at http://elinux.org/BeagleBoardDebian#eMMC:_BeagleBone_Black

Then;

unxz BBB-eMMC-flasher-debian-7.2-2013-10-25.img.xz

dd if=BBB-eMMC-flasher-debian-7.2-2013-10-25.img of=/dev/sd[x] bs=1M

Then place the microSD in the BBB, hold down the boot button, apply power (use the power cord, because when flashing, the BBB consumes more power than the usb cable can provide), hold the boot button until the first LED comes on (this will boot from the microSD card). Wait for the bank of 4 LEDs to stop flashing and go solidly lit, it takes many minutes depending on the speed of your SD card. Once those 4 LEDs are solidly lit, the eMMC is flashed. Remove power, remove SD card and re-power on. It should now boot from internal eMMC!

Instead of blindly trying to flash, we had the serial output of the BBB and knew exactly what was going on the entire time! YAY! Instead of guessing whats going on.

Hardware options:
https://www.sparkfun.com/products/9717
https://www.adafruit.com/products/284
http://shrimping.it/blog/cp2102-kit/

 

Oct 282012
 

“Updating your BIOS” has a tendency to be a bit of a white-knuckle chore. Fraught with opportunity to use lots of non-free legacy tools and even if you make an effort to use all free software the actual flashing tool (not to mention the code in the BIOS firmware that you are flashing.) is historically non-free software. owflash32.exe? Sounds like something that would make me want to install clamav 🙂

Well, my free software loving friends, that doesn’t have to be the case! You can use
Flashrom

Developed by the same crowd that brought you coreboot; flashrom’s a tool that can read, write and erase flash chips like the ones that typically hold the BIOS image on a motherboard. Sort of like that brikflash32.exe that you used to download from your motherboard vendor, except instead of needing to find that 15 year old bootable floppy disk, it’s just an apt-get away. And you don’t even need to reboot. When things go well it’s as easy as:

#flashrom -p internal -w newbios.rom

You do still want to pay attention, as of course if you do manage to improperly flash the chip, it can be difficult or even impossible to recover. But flashrom is pretty good about keeping you out of that situation. While the software has no mechanism to verify that the image you’re trying to flash is appropriate for your board; it does automatically verify that your source file and the chip’s image match exactly and gives very clear feedback if anything goes wrong.

Uh oh. Erase/write failed. Checking if anything changed.
Your flash chip is in an unknown state.
Get help on IRC at chat.freenode.net (channel #flashrom) or
mail flashrom@flashrom.org with the subject "FAILED: "!
-------------------------------------------------------------------------------
DO NOT REBOOT OR POWEROFF!

Just Kidding! that _never_ happens. (Or at least not often, unless you use the “–programmer internal:laptop=force_I_want_a_brick” option (not kidding that time.)

Unfortunately flashrom will refuse to flash most laptops, as the extra bit of hardware that laptops have, the “Embedded Controller” that handles battery charging and blinkenlights is often intermingled with the BIOS in undocumented and crash-prone ways.
You may have seen, that I’m excited to get coreboot running on some laptops. And that flashrom needs it’s hand held a bit to work in that situation. I’ll tell you that story some time too. (spoiler: it’s working)

But the next time you’re flashing a Desktop BIOS; or did I mention it also works great for updating the firmware on things like RAID controllers or updating the bootrom on your NIC? Give it a try; or haul that machine to the next glug meeting, and we’ll lend some cheerful and wreckless encouragement.

Aug 162012
 

Coreboot (formerly known as LinuxBIOS) is a free software project aimed at replacing the proprietary BIOS firmware with a free system for loading and running the operating system.
There are very few laptops available that are able to run properly when flashed with coreboot. Sam has found a lenovo x60 6365CTO tablet and will attempt to use a program called flashrom to put Coreboot (with a SeaBIOS payload) on this machine.
Unfortunately due to limitations of the IBM/Lenovo factory BIOS, flashrom can not detect which of the many flash chips that were used in the various revisions of these machines is present. At least not with enough specificity to be confident that the flash will be correct. So the solution is to disassembble the laptop and identify the chip visually!

At tonights meeting we worked taking apart the x60 tablet. Sam and Rob (Jason helped some too) dug into the tablet and stripped it all the way down to the motherboard. It was even harder to find the actual bios chip, as we did not know where it would be located on the board. We did know that it would be a SOIC8 chip (8 pins connecting to the motherboard) with extremely small writing on it.

Eventually we found a likely part, but after scraping off a sticker (we’ll assume it had a factory bios revision level or some such on it.) Sam declared; “That’s not it, it is supposed to have some writing on it.” The markings are that feint.
After lots of straining with a magnifier we deciphered “SST25VF016B”.

Hurray, a known part supported by flashrom!