old laptops as serial terminals
Tuesday, February 12 2013
Now that I had the hardware in place (a copper-plumbing-based capacitance probe and an additional connector on the Serial Slave) and had written and debugged code on the Serial Slave, I decided to try the whole arrangement out in the fuel tank. To get this all to work, I would need a computer that would allow me to talk to the Serial Slave over its serial link. The Serial Slave never speaks unless spoken to, although I quickly found I needed to give it a mode which would allow it to automatically send capacitance readings without being interrogated.
I had a difficult time finding an appropriate laptop to communicate with the Serial Slave. Neither of my two modern (6 years old or younger) laptops have serial ports. And while I've made it so my 27 year old Tandy Model 102 can serve as a serial terminal for such purposes, I found that for some reason the Serial Slave was ignoring all the commands I was trying to send to it. An old Toshiba Tecra9000 (already 12 years old) had a working serial port and even batteries that would hold a charge for long enough to run some tests, but after a few minutes, the data in the serial terminal would become garbled, a condition from which it couldn't recover. Ultimately, the laptop that seemed to work was my trusty old Evo N410c, which (at 11 years old) is old enough to have a serial port but is also lightweight. Since my Evo N410c runs Debian Linux, I did my terminal monitoring in CuteCom (which must be run as a superuser in order to have access to the serial ports, duh!).
Once I could finally watch the Serial Slave responding to the capacitance of the probe, I could do things like pull the probe up out of the fuel and then push it back down into it to see if the capacitance changed with the changing level of fuel oil dielectric. Indeed it seemed to, though the signal was a bit noisy. With some shielding and an appropriately-sized discharge resistor (socketed so I can change it), I think this thing might actually work.
This evening I reworked the firmware for the other Atmega328s in the Solar Controller so that the raw capacitance measurements could get to the Master, where it could be turned into a fuel level, logged, and perhaps acted upon. It's always a bit of a bitch to reprogram first the Menu Slave (which gets data from the Serial Slave) and then the Master, since both of those are programmed through the same long serial link, but to switch that link between them I have to go all the way down to the basement. Ideally I'd have a robot or perhaps a human slave to flip that switch for me, but today I found I could save a lot of trips to the basement if I trained a webcam on the Solar Controller's LCD. Since the LCD is controlled directly by the Menu Slave but also displays crunched data from the Master, it could give good indications of whether or not my latest code changes had crashed or otherwise done bad things to the system. One such system-crashing code change came when I changed the size of the data packet sent from Menu Slave to Master via I2C. Evidently 34 bytes was just a bit too big, though 32 bytes was perfectly okay.
It being Charles Darwin's birthday, Slate ran an interesting article about Ken Ham and his Creation Museum. That museum attempts (through dioramas and Biblical quotes) to explain all of Earth's history as a divine bit of magic pulled off within the last six thousand years. According to the article, Ham and his colleagues had hoped to use profits from the Creation Museum to fund a "life-sized" recreation of Noah's Ark. But, unfortunately for the Creation Museum, tourist dollars are down and it's looking increasingly likely that Noah's Ark II will never be built. The article explains this as being a consequence of the unique problem of "Creation Science" in our society. People who believe in Creationism tend to be less educated and less wealthy, and such people tend to see less value in visits to museums generally, even museums lending support to their absurd views of the world. (They do, however, see real value in tractor pulls, demolition derbies, and Mid-Atlantic Wrestling.) I would venture to add that museums cater to the curious and those with an open mind, precisely the kind of people who will find evolution a far more richly satisfying intellectual meal than the thousand-year-old stale bread of Creationism (even if it has been sweetened with dinosaurs).
Gretchen and I reguarly watch Jeopardy every weeknight; it's our preferred programming while eating whatever it is that Gretchen has cooked. I'm not a huge fan of the special Jeopardy series such as the celebrity showdowns or the various tournaments, but the teen tournament that had been going on for the past few days had become unexpectedly engrossing. We usually root for minorities playing non-minorities or for nerds playing jocks, and so of course this thinking dictated who our Teen Tournament heroes would be. The other day, a very poorly-considered final jeopardy wager by our minority (and probably gay) hero resulted in the exceptional: a game where all three contestants wound up with zero dollars. This cleared the field for another hero who would have otherwise not had a place in the championship: a very dark lad with a big messy afro named Leonard Cooper. To make Leonard even more of a hero, he was up against a supremely overconfident lad with a modulation problem named Barrett Block. Barrett had consigned himself to Jeopardy villainy the other day when he said he wanted to be president and explained that somehow he would be more competent than everyone in Washington these days.
Though we were rooting for Leonard, he'd only scored $3000 in yesterday's game (about an eighth of what the other contestants had scored), and the final score would be yesterday's figure added to today's figure. So we found ourselves hoping Barrett could be stopped by the third guy, Nilai Sarda, a big-eared 8th grader who looked about ten years old but seemed to know an awful lot of information. What happened instead was that Leonard played an incredible game, got to $18200, and then hit a daily double. At that point he bet $18000. A gasp went up from the studio, but it was a risk he was wise to take. After he got that answer correct, he had $36200, eventually going into final jeopardy with about $37000. At that point Leonard did a calculation and determined that he didn't need any more money to win, so he bet $0 and wrote something clever on his board saying he'd just won $75000. It turns out that had Nilai bet enough and gotten final jeopardy right, he would have actually won, but he didn't bet enough and he got it wrong, so what Leonard had written was right. He'd won the whole thing! Gretchen was so overjoyed that she jumped to her feet screaming. It really was the best episode of Jeopardy we'd ever seen; indeed, it was the first time Jeopardy had ever quickened my pulse rate.
For linking purposes this article's URL is:feedback
previous | next