Category Archives: OldBlog

Spiffchorder Progress

As I mentioned when the parts arrived, I recently decided I wanted to build myself a Spiffchorder to play with, and, more generally, play with the VUSB Stack, which provides software USB for most AVR microcontrollers, using a few cents worth of extra passive components. This seems to be an excellent generic solution to the “Modern computers don’t have hobby-accessible I/O” problem for most applications. I’ve actually been using a VUSB device for a while since my usbtiny AVR programmer is an ATTiny2313 running VUSB with some additional support chips and code.

When I ordered parts, Newark was out of suitably-packaged ATMega168 chips, and their larger (RAM/ROM), pin-compatible sibling the ATMega328p was so close in cost I would have ordered them anyway. There is a warning(#8) about -p suffix chips (stands for PicoPower, meaning some additional power staving features) and VUSB, but it seems to be a simple problem with naming conventions in the interrupt vectors, and is fixed in recent versions.
I’ve been grabbing an hour here and there to put it together over the last week. So far, I’ve already spent some time on one of my favorite activities…
which produced a nice tight board (The back isn’t quite as neat, and the socket I ended up using suuccckkkks)
which, as far as I’ve discovered, had only one assembly error (the pull-up network on D- was between ground and… ground because I counted wrong), which was easily remedied.
While I was assembling I also put together a half-assed first approximation keyboard to test with
Which will eventually be upgraded… I’m thinking something flexible that can be clipped to the outside of my left pants pocket, or flopped on a flat surface such that the clip maintains the curvature, but I really just want to play with it and see how (un?)comfortable it is to use a chording keyboard. Maybe I’ll get bored and build a key-glove, those always look fun (and useless).

Now for the real problems… even after I fixed the wiring glitch, and touched up the code (minor fixes to make it recognize the 328p and set the fuses correctly), I wasn’t getting anything when plugged into USB. I borrowed a 168 from another project (and transparently swapped in a 328p there) to test the vanilla code, and it resulted in a board that generates a stream of errors like

usb 2-1.1.3: new low speed USB device using ehci_hcd and address 15
usb 2-1.1.3: device descriptor read/64, error -32

when plugged into any of my various Linux boxes. I then decided to upgrade the VUSB version (the one the 0.98 release is built against is truly ancient), which only took a few minutes of tampering to set up the usbconfig.h (and Makefile) to work with the Spiffchorder sources and IDs. Unfortunately, this only fixed the 328p problem… it now does exactly the same thing as the vanilla 168 version, and produces a string of USB enumeration errors when plugged in.

My understanding is that -32 errors are usually something to do with devices that aren’t correctly handled by ECHI (USB2) mode controllers, but a device that requires you disable ehci mode on a modern computer is pretty much useless, and it doesn’t appear VUSB should have that limitation. This is my current working tree, it seems to be at least as sound as the distributed version; when I get it working I’ll ping the original author about the update, and replace these if it turns out to be a software problem. I’m going to hook it up to some instrumentation on campus tomorrow to see if I can find the problem, I suspect something screwy with the voltages on the USB Data lines.

Posted in Computers, DIY, Entertainment, General, Objects, OldBlog | 1 Comment

SC’09 Video

I did a taped group-promotion and demonstration of the MOG Maze at Supercomputing last year, but we were never able to actually find the video posted online. I was doing an unrelated identity-management search while working on Ph.D. applications, and … here it is at, with somewhat illogical search terms. Embedded below.

*obligatory listening-to-recording-of-own-voice cringe*

Posted in Announcements, Computers, DIY, General, OldBlog, School | Leave a comment

The best kind of box

is the kind full of TOYS (or, well, toy parts).

This order has some bits and bobs (optoisolators, limit switches, etc.) for the never-ending milling machine project, a couple spiffchorders worth of parts (more on that later), and some spare ATMega328s, because they seem to be a universal solution to “medium” microcontrollers.

This is the first time I’ve made a personal order through Newark, their “We won’t tell you exactly how much this will cost to ship until you’ve agreed to pay” policy is more than a little customer-unfriendly for small orders, and their website is the furthest thing from user friendly… I AM an electrical engineer, and picking what I want there is a challenge. I made a couple mistakes in this order: I grabbed 15.24 mm (as opposed to 7.62 mm) 28pin DIP sockets (just not reading), and apparently not all 12×12mm MCDTS2 switches can accept the caps described as “Switch Cap; For Use With:12×12mm MCDTS2 Series of Multicomp Tactile Switches; ” because the ones I ordered sure as hell don’t have attachment points for the covers like the picture in the datasheet.

Otherwise, very satisfied. Low price, massive selection, and fast ship. I think I’ll add them to the list. For the curious, my parts usually come from DigiKey, Sparkfun, and AllTronics, which are broad, easy, and cheap respectively, although other vendors don’t have the cachet of the little red Sparkfun boxes.

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

Zero History

(This should be spoiler free)
I just finished reading Zero History, slowly, both because I don’t have much time to do so, and because I was savoring it. That kind of writing is the closest thing to a religious experence those of us who don’t do faith get to have. Note that when I say “slowly” I mean “over the course of 2 weeks, since my copy arrived;” had I not been drawing it out it would have been more like two sittings.

Firstly,do NOT read it without first reading Pattern Recognition and Spook Country. A majority of the characters are common, and are thus introduced without preamble. There are also enritching references to the earlier novels throughout, including several major plot elements which are best left as surprises. On the topic of surprises, I hit an “Oh. Oh holy shit” 335 pages (of 404) in. The first time a book has surprised me in AGES, and it is a wonderful surprise that ties the Bigend trilogy together… and then, in standard Gibson style, entirely loses relevence to the narrative. The revelation is neatly enough laid that one could have figured it out prematurely, but is elegantly enough veiled to discourage such things. Imagine reading Dan Brown and NOT knowing the answer in the first few pages.

Gibson’s writing constantly pushes my vocabulary (which, as one might expect based on how much crap I get for my ordinary diction, is a very unusual thing), and my cultural knowledge (which, again, is unusual; I compulsively consume two news magizines and an unholy lot of Internet every week). I far prefer reading his more recent work with google in reach to fill in the gaps in both, something he has suggested is intentional, or at least approved of.

Looking at the whole trilogy, Pattern Recognition is still perhaps my favorite single novel, and I was disappointed when Spook Country came out, although that may be residual effects from my first attmept to read it in a codeine-induced haze; I literally got the book on the way back from having my wisdom teeth out. There is no disappointment with Zero History – it has all the marvelous locution, and fabulous collection of ethereally related plots that I read Gibson for. In fact, it makes Spook Country better, by tying all it’s plots into a greater system, making them more interesting than they were on their own, like the disinteresting constituent bits of a fascinating mechanical device. I don’t think Zero History stands on it’s own nearly as well as Pattern Recognition, but, particularly as the improved sucessor to Spook Country, it is an excellent novel.

The one nagging concern I have when I think about the Bigend trilogy is about it’s longevity: they are heavily, heavily steeped in ephemera of the moment, to the point that it is partly their topic, and it is unclear to me how well that will age. Pattern Recognition is my favorite largely out of fondness and nostalgia for the ‘now’ it was written in, although also out of a taste for it’s overt topic. It least suffers the problem simply because it predates much of the internet’s collective consciousness, despite having said consciousness as one of its chief concerns. In contrast, Zero History is made up of ecclectic references to Festo’s more eccentric products, iPhones, quadrotor drones, and ekranoplan; things renderd exciting through the fickle fascinations of the interent. Hopefully, like the Curtas and origional toilet seat iBook that filled such roles in Pattern Recogniton they will continue to stand on their own interest.

In short: Go read it, and it’s prequels if you haven’t. It is by far the best novel I’ve read (for the first time) in years, and retains all the enjoyable trappings of popular fiction, despite its literate complication.

Posted in Entertainment, General, Literature, Objects, OldBlog | Tagged , | 2 Comments

MPW Environment

I just set up a BasiliskII disc image with System 7.5.3, MPW, and related goodies. It seemed like fun to have a vintage 68k Mac development environment to play in…

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

Baked Butternut Squash

I discovered the recipe for the squash a couple years ago, and it is amazing. The entire procedure is: cut butternut squash in half, remove seeds, rub flesh with salt, sugar, pepper, and dried ginger, all to taste. Place in baking dish with 1” of water. Bake at 350F for about an hour. It is excellent. The chicken is more of the same, just rubbed with rosemary, pepper, oregano, garlic powder, olive oil… and some other things that were on hand, then tossed in the oven in another pan with the squash. Good seasonal food.

Posted in FoodBlogging, OldBlog | Leave a comment

T60p Repair

I opened up my old T60p for some repairs the other night, just posting to share what I did now that I’m reasonably certain it worked. The objective of this project was to do something about the relatively high temperatures and annoying buzzing noise coming from the cooling system. This particular machine is on it’s third cooling assembly (the assembly was replaced twice under warranty), and based on comments on from other owners, thermal issues and rattling fans are endemic to the model, mostly thanks to a few poor design decisions.
The surgery:

  • * Oiled (I used BSB Speed Bearings Lube, which is probably Sililcone oil with some adulterants to make it Shear thinning) the fan assembly, basically following msb0b’s guide. The only major deviation is that instead of cutting the aluminized tape, I just used it as a hinge and folded back the jacket. I also note that there is some foam insulation tape on my heatsink assemby, presumably added in later manufactured asssemblies to help with vibrations.
  • * Bent (compound bend) the heatpipe to lower the GPU section about 2mm, as some of the folks in this thread suggest. Basically, I put some thermal paste on the GPU, and bent and reseated until the contact area was appropriate. I was a little afraid bending the heatpipe would harm it (efficiency wise), or crack it from metal fatigue, but nothing was damaged and the contact is better. This is a logical fix- those thermal pads never provide very good conductivity, particularly where they are reasonably thick.
  • * Replaced the CPU thermal compound and GPU thermal pad with Arctic Silver Ceramique (my favorite for almost all thermal-conductivity needs). I left the thermal pad on the north-bridge intact, as there don’t seem to be any major thermal issues with that component, and the pad over it wasn’t damaged.

Based on some cursory tests, the system is running cooler (Both overall and CPU-GPU delta) than it did even with a new cooling assembly. Idle, I’m seeing 43/41c (5-10 degree reduction), and a half-assed “Stress Test” running SupCom for a few minutes only produced temps in the low 80s, with the GPU about 5deg hotter than the CPU– my recollection is that the GPU tended to be in the high 90s under similar conditions, and the CPU in the mid 80s. The big win is on noise; the irritating rattle is gone, and the fan is at most a tiny bit louder than a new one, based on a procedure I should be able to replicate for free.

The wonderful thing about Thinkpads is that they are designed to be mostly user-serviceable (Lenovo cooperatively provides the service manuals as PDFs online, and even allows FRU orders), and they are very common machines, so there are lots of other people playing with them and sharing their experiences, making things like Linux support and after-market mods particularly well explored and documented. Even with the slight design issue, the T60p was a solid machine for 3.5 years, and I far prefer serviceable and working well to being unserviceable and being “slicker… until it dies”. Speaking of vendors of unserviceable hardware, I’m considering setting it up as a hackintosh (at least on one partition) just for fun when I get some time…

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

Kim Stanley Robinson on …Reality

This Polygraph interview with Kim Stanley Robinson is pretty fucking amazing. It provides a clear, well educated, intensely lucid world-view, and a solid conception of where we should be going as a society… which I happen to mostly agree with. I’m especially into his thoughts about the scientific community and the political process (not quite as glib as “reality has a well-known liberal bias.” but the idea is the same); I find the amount of high profile anti-intellectualism lately really terrifying (We had a vice president seriously running on the “Those experts don’t know what they’re talking about, look at my folksy wisdom” platform. Come on.) so a clear conception of how the scientific community should handle the situation is an intensely valuable thing. The text of the interview unfortunately also demonstrates the problem with the interface between the scientific community and society at large; it is rather challenging to read

I’m very found of KSR; I’ve read his magnum opus, The Mars trilogy about three times now, and it has seriously shaped the way I think about the world. I think the first time through was when I was about 9, but the repeats were much more recently, after I realized just how much the first reading had colored my own world-view. They aren’t so much about the future as they are about society and the environment, and where it is about the future it is all amazingly plausible, to the point that many of the near-future predictions have actually come to pass. There is a wonderful sort of grim optimism to the whole thing; running on the view that the world is not inherently a nice place, but we can collectively choose to make it so (or not). It isn’t a quick read; the story spans about 2 centuries, 20 some major characters, and 1700 pages, but it is (I really hate this phrase) a life changing read.

We need more KSRs and fewer Sara Palins. Can we elect this man to a position of power instead of the current selection? I’d vote for him.

Posted in General, OldBlog | Leave a comment

HPDL Displays

I was fiddling with an old Logical PROMPRO-8 PROM programmer in the lab I teach in while waiting for one of the students to do something which required intervention, and noticed it had some really neat old character displays on it:
They are absolutely fucking captivating looking in person, in that “It isn’t clear what kind of light this is” sort of way, especially with the red filter lifted off so the dies are visible under the lenses. I was interested enough to closely investigate and make the unit go through some of it’s functions just to figure out what the displays are capible of, then asked the great google god to identify the design. I’m reasonably certian they are Hewlett-Packard HPDL HP-2416 displays (or one of their siblings), which are among the earliest single-die segmented LED displays, before the familiar (7- 14- or 16-) block arrangements became standard. Each package has four tiny 17 segment digits under individual epoxy bubble lenses, and an internal ASCII decoder, character generator, and memory, which should make them really fun and easy to interface. It looks like the division of HP that made the parts went to Aglilent when HP dismembered iteslf, and then was spun off as Avago with most of the other semiconductor buisness in 2005, although Litronix may have been making clones/second-source compatible parts in the 1970s as well.
…I sort of want to find some (which would mean NOS or pulls) to build a funky clock or RSS gadget or other useless status display, just to marvel at them. Sadly, it looks like that would be prohibitively expensive, as the later production drop in compatibles are “boring” 5×7 grids with similar capibilities, making originals exotic enough to be on the order of $20 a piece.

Posted in DIY, OldBlog | Leave a comment

Buzz Widget Breakage

My blog sidebar buzz widget seems to have died at the beginning of the month, and stays dead even if regenerated (some problem with the API?). It is all server-side magic, borrowed from, so it isn’t easily fixable, even if I wanted to deal with javascript. You can follow my buzz postings from my google profile at, I’m just going to theme swap back to the one that didn’t support the buzz widget, and put that URL in the link menu.

Posted in Meta, OldBlog | Leave a comment