|
|
standards used just by me Tuesday, November 27 2012
There was a coating of light snow on the outdoors this morning, giving the day the exiting feel of potential that I remember feeling when I'd have a weather-related day off from school. Back in those days, there was no telling what I might accomplish over the course of whole day of unexpected free time. Of course, today's feeling was pure nostalgia. For me, every day has all the potential of a snow day, tempered only somewhat by work and chore requirements.
In between small amounts of actual work-work (the kind that pays money), my main project today was to devise a series of snap-together digital electronic modules designed to be controlled by a customized breadboard running software in the Arduino environment. The Arduino itself is supposed to be one such model, to be added to with so-called shields, but I don't find that level of modularity to be particularly useful. An Arduino can usually only be attached to one module at a time, and their connectors and size are such that they tend to be expensive. The kind of modularity I wanted would use smaller, easier-to-wire connectors and, where possible, the connectors would serve as N-stackable buses. I'd standardize on certain pinouts and interfaces, and build components to those. Mind you, these will be standards only available in equipment that I build for myself, but they will allow me to mix and match components as I choose.
In my Arduino-based solar controller, I'd already standardized on a pinout for the fabulously-useful I2C bus, which really is an N-stackable bus that. Like USB (which requires hubs and is not N-stackable), I2C uses only four wires to accomplish two-way communications between two devices, so I wanted to add a four-pin I2C connector to the "test Arduino" at my computer desk. But I also wanted a new standardized interface allowing me to attach an LCD display to my test Arduino and any other Arduino-based devices I build in the future. LCDs range in size from two by sixteen to four by twenty characters; I only have interest in the latter kind because they are large enough to display an interactive menu of the sort I built for the Arduino-based solar controller. All such LCDs can be controlled with six logic pins which, when combined with a ground and positive five volts, comes to eight pins. I happened to have a large number of snap-together ten-pin IDC connectors I'd bought months ago (back when I was building my Makerbot), but finding them proved difficult in the chaos of my laboratory. It turned out they were in a glass jar on a shelf that I looked at several times, but I actually had to take everything off that shelf and deliberately look into every container before I realized that I'd been ignoring the connectors because they were in plastic bags inside the jar, and the bags were giving the mass of black connectors an organic shape.
I noticed today when I was soldering wires to the various pin grids (all spaced at reasonably-macroscopic pitch of 0.1 inch) that my eyes weren't as good as they'd been the last time I'd done similar soldering. I had trouble focusing on the solder pads unless I had a lot of light shining down on them. Further complicating matters was the crappiness of my soldering irons (I tried two different ones). Their tips seemed unusually obstinate in imparting solder-melting heat to the things they touched. I made a terrible mess of the ten-pin pin array designed to receive the connector from the LCD, but somehow I managed to get it working. I also installed the I2C connector on my test Arduino, but it was such a simple thing that I didn't even feel the need to test it.
Another project that I worked on in parallel to the new test Arduino connectors was the installation of Debian Linux on my old Evo N410c laptop (which had been my main laptop until June of 2010). I've been using that old laptop to automatically FTP webcam images to a web server while Gretchen and I are away, but it's been unreliable in doing so, usually only working for two or three days and then crapping out (that would be terrible performance for anything except perhaps a Venusian space probe). So, thinking maybe the problem was Windows XP (combined with crappy webcam junkware), I did what I always seem to end up doing. I find myself installing Linux on some computer every six or nine months, and usually I find there's been an evolutionary improvement since my last install. That was somewhat true of today's Debian install, though there was also an uptick in free-software absolutism in the lastest version, and this meant that devices that had been supported without any special effort (such as the ethernet port) were left disabled.
And even after all that work was done, the laptop was no more reliable than it had been when running Windows XP. If anything, it was less reliable. Over time I've come to realized that Windows XP is a nice, reasonably-reliable lightweight OS. Too bad it wasn't forced into the public domain as part of the Microsoft's anti-trust settlement (back when it could still reasonably be considered a monopoly). Still, it was good to see that there is plenty of webcam support built into Debian. If, as may be the case, the problem with the Evo N410c is actually hardware in nature, Debian might prove to be an excellent choice for use as a webcam controller.
For linking purposes this article's URL is: http://asecular.com/blog.php?121127 feedback previous | next |