A week’s worth of updates for whosoever is interested:
A whole new tower is going up in the Carleton Arboretum, complete with solar panels, ultrasonic snow depth sensor, and more anemometers than you can shake two sticks at. Naturally, I’ve spent the week grappling with such pressing problems as: can we get our TS-4200 to talk like HAL-9000? and should we put a satellite into orbit to transmit the data we gather?
Work on satellites and text-to-speech aside, here’s what’s been going on. The new tower will require a new macrocontroller (Freya, whose cousin Vor I’ve been working on in anticipation of Freya). First project was ensuring compatibility of the various libraries we’ll need. Vor is a TS-4200 mounted on a TS-8200 baseboard running stripped down Debian “squeeze” with Python 2.6.6 (and staying that way) and pySerial. Unfortunately, the RTC does not appear to be functional, which is a bummer, as it means we’ll have to rely exclusively on ntpd to keep system time correct in the case of power loss, and my tests suggest that ntpd can take up to 7 min on startup to sync the system time. I’m thinking right now that the startup script that runs our data collection program should include a call to ntpd, to make sure that happens first. Of course, as Doug has pointed out, if the internet’s down when power is restored ntpd will not fix the time and we’ll have mis-timestamped data. I think the way to fix this is to backfill any data gathered without ntp server access, as per Bruce Duffy’s suggestion. If I do get the RTC working, it’ll be trivial to sync it with ntp-checked systime so that when power returns systime can be set to what the RTC (which is battery-backed) thinks. This would be the ideal option.
I have also been looking into the “end-of-unix-time” bug (short version: 32-bit signed integer holding time_t datatype will roll over in 2038, pushing date back to 1901). Conclusion: the bug is so deep in the debian operating system and even the board’s embedded code that nothing short of replacing the board with a 64-bit time compatible one by 2038 will save us.
Last vor-related thing: hackers are thwarted. I tweaked the host config files to stem the deluge of failed password attempts that were filling our auth.log files (over 10% of available space in a few weeks!) and did a whole lot of other fiddly bits to try and optimize the board for our purposes — saving space and whatnot.
Have been thinking some about the structure of the data collection program, which we’ll start writing next week. We’ll soon also have a PIC to practice talking to, so I’ve written some testing code for that and learned up on serial communication. That’s all!
–Soren (new student worker 1/2)