Category Archives: DIY

Proto-netbook

While rooting around one of the labs to clean up for E-Day earlier, I ran into the pile of old Compaq Aero 4/25 subnotebooks the group has never disposed of, and played with one for a few minutes. Here it is next to my current machine:

Aero 4/25

A Compaq Aero 4/25 next to my T510


These charming little things are the forerunner to the modern netbook, and, like many of the early subnotebooks, have something of a following. These particular examples spent much of their lives as The TTL Papers Microcluster, and are hence in surprisingly good physical condition for 15 year old hardware. They are set up to dual boot the tweaked MS-DOS/Windows 3.1 environment they ship with, and, unless interrupted, automatically continue into Linux via loadlin, an arrangement I suspect has to do with the lack of an obvious user-accessible BIOS layer. I once coaxed the PC Compatibility card in a Powermac 6100/66 to boot Linux, this appears to entail similar acrobatics, with “quirky” hardware and a bizarre boot sequence.
The machine is remarkably usable and responsive, especially under Linux, despite the fact that the “4/25” in the name refers to the 4Mb of RAM and 25Mhz 486sx that form its tiny little heart. It makes a terrible reminder of how bloated software has become. Someone clearly put some care into the OS on ours around 1997 and built a pretty nice system, with a 2.0.27 kernel, reasonable selection of utilities, remarkably attractive monochrome DIR_COLORS (which I spirited off), GCC, and Vim, in addition to the AFAPI/PAPERS materials. There is no X server (which is to say, the installer wasn’t obviously insane), but there is also no screen or workalike I could find. I don’t see much evidence of any distribution I know was around at the time, and the kernel is clearly custom built, so it may well have been a fully hand-rolled system. The fact that the internet is full of stories about how uncooperative Aeros could be, and that the leading digits of the kernel version being “2.0” strongly suggest it is a seriously, incompatibly old-school setup, indicate that while it would be fun to tinker with, it probably isn’t a good idea.
The little machine brings home the point that a keyboard, a screen, and a roughly POSIX-like environment in a portable package is, was, and will continue to be most of what a portable device needs to be a desirable thing.

Posted in Computers, DIY, General, Objects, School | Leave a comment

HAK Wired

To follow up the previous post, the group finished wiring HAK Friday afternoon… and into the evening. About 480 runs of Cat5 for both the FNN and a separate network for monitoring and provisioning. It’s an interesting looking network; because of the way it was designed, it is unusually symmetrical for an FNN, so the core has trunks for the rack-crossings on each network, and is therefore rather neat:

Unfortunately, this does mean that all the cables in each wing are passing through the small slot in the center… which looks about like you would expect from the back:

It should produce some interesting results.

Posted in Computers, DIY, General, School | Tagged , | Leave a comment

HAK Wiring


I’ve spent a good fraction of the last several days helping with the preparation and assembly for a cluster the research group is building from 96(+4) old Athlon XP nodes to conduct network research on. The machine is named HAK for “Half-powered Athlon cluster in Kentucky, referring to the fact that every pair of nodes is sharing a power supply (notice the flipped cases). This design is both to save power (switching power supplies are most efficient when heavily loaded), and save power supplies, since that is the part that has had the highest failure rate in the pool of machines used to build it. After a couple passes of repairing nodes, homogenizing network cards and the like, we got to the photogenic part today: attaching the network. In the picture, there is a standard tree topology 100Megabit Ethernet network across all the nodes (the yellow and pink wiring), which will be used for administration and provisioning, and began sticking a full FNN (the bundles of red cable snaking around… those are the first 3 sets of 32, the other 9 are the colored bundles on the floor). That machine is set up to have it’s network swapped out with a FFNN (Fractional Flat Neighborhood Network) and SFNN (Sparse Flat Neighborhood network), but requires this initial fully populated Universal FNN as a baseline for comparison.

Posted in Computers, DIY, General, School | Tagged , | Leave a comment

Nokia Plan B

To follow up the last post, this is pretty cool – a shareholder driven concept for a slimmer, more directed Nokia that remains in control of their core platform. I’ve read through and am in near complete agreement with their plan, and it sounds a lot better than “Become the next Kin.” I don’t directly own Nokia stock (apparently I do indirectly hold some through mutual funds), but I would be seriously considering it if I did, and I hope they succeed. I’d also like to add a proper citation for the previous claim that Microsoft’s mobile partnerships are a string of painful failures.
In more pleasant news, some users have hacked together another new patch set for the Diablo/OS2008 maemo release the n810 runs, and now that I’ve got a new battery and rid myself of the BME bug I hope to play with them. I’m thinking I’ll be a little more cavalier with my use of alternate OSes and software on my n810 now that it is getting problematically obscelescent.

EDIT: It was a hoax.. The issues are real though.

Posted in Computers, DIY, General, Objects | Tagged , , | Leave a comment

Hackbiscus

I’ve had the idea of a “Hackbiscus” emblem rattling around my head for a while, and I was contemplating it again as a possible option for theming the new blog. The idea is to have a hibiscus with it’s stamen arranged in the pattern of a glider(⠠⠵).  The glider has been suggested, and weakly accepted, as a suitable emblem for hacker culture.  Even better, most Hibsicus really do have five Stigma, so it is biologically correct.  With my affection for Aloha shirts and both Hawaiian and Hacker culture, it seemed like a good sigil… and the pun on “Hacker Stigma” is too good to pass up.
It should be an easy trick to make; take one of the common outline images of a hibiscus (It turns out there are about 10 of them from which nearly all prints/stickers/etc. are derived), pull it into GIMP and massage the dots representing the five stigma into the correct pattern.  The problem with this plan is I’ve never found an example of the separated-stamen pattern larger than an oddly aliased 400×400 gif. The solution to that problem arrived the other day when my advisor showed me how to use the Trace Bitmap tool in Inkscape, during a discussion about preparing images for the Silhouette SD cutter the group bought recently to use in some projects (more on that later, hopefully).   I’ve never had good luck working Inscape in the past, but decided to try it to get a nice resizable smooth-edged Hackbiscus. I got excellent results with only a little bit of parameter fiddling, as shown above (although, that is 400×400 like the source image. It scales up indefinitely, promise).

Posted in DIY, Entertainment, General | Tagged , , | 1 Comment

Notes on Migrating Flatpress to WordPress

I’m going to post up some notes on the process of migrating my content from the Flatpress (wordpress-like flat-file backed CMS) instance at my old blog to a WordPress (the dominant CMS for blogs, MySQL backed) instance here at pappp.net.  The short version? It is seriously aggravating. Long block of text follows.
Continue reading

Posted in Computers, DIY, General, Meta | Tagged , , , | 2 Comments

Blog Move

This blog is in the process of moving in from it’s previous location at http://www.engr.uky.edu/~pseber0/ to it’s new home at pappp.net on bluehost. This current page will no doubt be repeatedly created and destroyed in the process, as I try to explain to the terrible migration tool about internal linking, resources, categories, and a variety of other things it is doing it’s best to lose or mangle. Things should be up and running in a couple of days, when the links will be updated, and the relocation notice will go up at the old location. This post also has a full set of categories, to force updates.

Posted in Announcements, Computers, DIY, Entertainment, FoodBlogging, General, Meta, Music, Navel Gazing, Objects, OldBlog, School | Leave a comment

Pionier Button Hacking: Step 2

It took over a year for me to get back to it, but I finally sat down and made some progress on hacking the Buttons Pionier was giving away at SC09.

When I last posted about it, I had drawn out all the USB identification information, as well as disassembled one, identified all the hardware components, and tracked down data sheets for the important bits.

Now that I have a Bus Pirate, I decided to dump the 24c64 EEPROM. A 24c64-type EEPROM speaks standard I2C, with the addition of three dedicated address pins (for banking chips), and a hardware write protect pin.

My first attempt was a little troublesome, because attaching the chip in-place was (as is often the case) powering the whole board, leaving two I2C bus masters, and confusing the situation.

The following is basically a reference for communicating with 24c32/64 EEPROMs.

To remedy the problem, I simply desoldered the 24c64 from one of the buttons, soldered pins 1-4 (one full side) to a bit of wire, so I could ground GND, A2, A1 and A0 with a single clip, and attached the bus pirate leads to the floating chip (Yes, SOIC8 packages are rather small):

24c64dump_sm.jpg

To be specific the connections are GND to pins 1-4 (Gnd, A2, A1, A0) 3.3V to Vcc (8) and WP(7), CLK to SCL (6), and MOSI to SDA (5) like so:

24c6pins_sm.png

To write the ROM, the WP pin would need to be grounded instead of powered, but preventing writes is a good safety measure when exploring.

Software-side, I ended up following the communication instructions in the Bookly 24c64 datasheet, because I found them asier to interpret, but the datasheets from Atmel or any other manufacturers that make a compatible part will do as well. Start with the usual bus pirate setup of ‘m’ for menu, ‘4′ for I2C, Chose a clock (I used 100kHz for fear of interference from the long-for-I2c leads), ‘P’ to turn on pull-up resistors, and ‘W’ to turn on the power supplies.

Then, to read out a 24C64, you feed it (this is a commented log of the terminal session)

I2C>[0xA0 -- Start, Send 1010, the Values on the A2-A0 pins (000 if grounded), Followed by 0 write for and 1 for read -- dummy write to set address pointer
I2C START BIT
WRITE: 0xA0 ACK
I2C>0x00 -- Send the start address to the chip, the 24c64 ignores first three bits. 0x0000 to start at the beginning of the ROM.
WRITE: 0x00 ACK
I2C>0x00
WRITE: 0x00 ACK
I2C>[0xA1 -- Starts, then random read (same as first byte of dummy write, with R/W high instead of low)
I2C START BIT
WRITE: 0xA1 ACK
I2C>r:255 -- Sequential read out the whole ROM (Overflows most terminal's history, I pulled 256 or 512 at a time.)
READ: 0x5A  ACK 0xA5  ACK...

I dumped it twice to cross-check that I didn’t make any dumb mistakes the first time, then massaged the dump with some regexes to get rid of the communication details and extract a pure hex dump. Only the first 4608 bytes of the ROM are written, so there is even room to tamper, if I can figure out the encoding. Note that the posted string is NOT S-records or Intel HEX, but raw ASCII-encoded two-characters-per-byte hex. In order to get it into an 8051 disassembler for further analysis, I will either need to figure out how to coax the Bus Pirate to generate a formatted dump, or write a script to segment and prefix the existing string, but neither has happened yet.

Giving analysis a first pass, I looked for pieces of the string it prints when activated as ASCII and raw USB HID Scancodes, but didn’t find them… which either means there is a problem with the dump (byte order?), or some clever and inconvenient encoding was used. I’m not terribly familiar with 8051s and their associated tools, so that will be the rather large next step. If nothing turns up in analyzing the dump, I may have to sniff the bus while the board is in operation to see if there is some funky data layout obfuscation.

Posted in Computers, DIY, Electronics, Objects, OldBlog | Tagged , , | 1 Comment

Pacman Brownies!

I’ve had the idea of icing classic video games onto brownies rattling around in the expanse between my ears for a while. I haven’t tried to pipe ice anything in quite some time, and it never has come out terribly well, but it’s fun tedium damn it…
I made a measurement mistake somewhere, so it compressed toward the bottom, and I forgot some flanges on the edging, but for a roll of parchment paper, a tub of white icing, and a pack of food dye, it worked out pretty well. I suspect in two or three tries I could make it look good instead of merely fun.
pacmanbrownies_sm.jpg

Posted in DIY, Entertainment, FoodBlogging, General, OldBlog | Leave a comment

Spiffchorder rides again

I’ve been putting a couple hours every evening into the long, long list of hobby projects that haven’t been touched for the last 10 or so weeks. One of the successes on this front is getting to touch the Spiffchorder I was working on.

I had to pull the reusable parts (always socket your uC…) and trash the one I assembled on perfboard; after all the modifications and false starts it was a non-functioning mass of solder balls and lifted pads. I then threw one down on a breadboard, as other had reported sucess starting that way even though breadboarding something with a 12Mhz clock is a little bit electrically dubious.
bbspiff_sm.jpg
I got this version working on the second try, and second only because the version of the code I modified to work with a (generally drop-in compatible and easier to source) ATMega 328p, instead of the 168 or 8 recommended by the original design is still not working properly. I suspect it is more of the issues with V-USB interrupt behavior on -p type chips, but haven’t attached it to anything that can trace fast enough to watch USB. That said, the code works fine on the one 168 I have in the parts bin (I think it was stolen from an updated arduino diecimila?), and the crappy first-pass keyboard I made for testing is… good enough to feel out the chords on, but not much else. The chord-set is actually pretty easy to work with, and I can see how it would be a comfortable (particularly in terms of “not further accelerating the joint damage to my hands”), convenient and fast input system.
spiffuse1_sm.jpg
Now to build a working board, a better keyer/keyboard[s], and fix the 328p code so I’m not tying up my only 168.

Posted in Computers, DIY, General, OldBlog | 3 Comments