You are currently browsing the March, 2011 archives.

Random Updates

Posted 2011.03.30 16.41 in Pointless Blather, Uncategorized by Stephanie

Following up from Sunday, the older version of Xcode (3.x) solved all my problems. I haven’t gotten thick, it was just the awfulness of Xcode version 4.x being so bad that I couldn’t see past it to the actual work I needed to do. Downgrading to 3.x has made me happy and I was able to get back at my next big thing.

The issue now is that it seems I left this half-finished app with a lot more unfinished work than I had thought. So I really need to get busy if I want to get it released on schedule and with all the planned functions and features.

#elxn41 – after holding out for many years, I’ve finally gone and signed up on Twitter. Of all things, it was politics that pulled me in. I wanted to follow the Green Party and keep ontop of what’s going on. In addition to political stuff, I’ve figured out how to follow some friends, some electronics gurus and some hacker geeks. Just have to figure out now if I have anything to say that’s tweet-worthy.

And in other news, my DIY Thermostat continues to be the most bestest thermostat ever, and makes me happy several times each day. I’m going to try and draw up some schematics and then maybe make a page entry for it. It’s just that cool.

Brain Drain

Posted 2011.03.27 8.45 in Computers/Internet/Technology by Stephanie

It’s very frustrating. I’ve just resumed working on an iPad app, after a 4 or 5 month hiatus, and once again I can’t figure the darn stuff out.

Last time I got back into iOS coding, it was after more than a year away. Things had gone through two major revisions; I had learned coding in iOS 2.x and when I went back to it, they were at iOS 4.x – there were some huge changes.

This time, it’s not like that. I got about halfway through this project in October or November, working against 3.2 and 4.something. Certainly, 4.something was the current level that I was compiling against. And now were’ just at 4.3 so it’s only one or two minor changes.

But this time around, they’ve completely — completely — changed the IDE. I mean utterly, it’s a strange and unfamiliar new beast, and I frakking hate it. I think it’s ugly, stuff is hidden, it feels like they’ve removed things I was accustomed to.

They probably have some positive-sounding marketing spin, but what they’re really doing is slowly moving towards this full-screen one-app-at-a-time bullshit on the Mac. It works on the iPhone / iPad because of the limitations there, and I get that it makes life easier for non-technical people. But if you’re writing code or doing development, then by definition you are kinda technical, yeah?

So I’m really resenting what they’ve done to Xcode.

It’s foreign and ugly and I look at my half-finished project and can’t make head-nor-tails of it. The language hasn’t changed but I can’t figure out what the heck I’m doing. I don’t know if this means I’ve gotten dumber in the last 4 or 5 months, or if I’m just blocking it out because I find the interface so shitty.

Either way it is frustrating and bothersome.

The project has a self-imposed go-live deadline of April 30th. There’s at least a month of work left on it. I know I shouldn’t have left it so late to get back to it, but all that other stuff was happening and this got set on the backburner.

Bah. I’m just venting. Though I fear this is indicative of the direction Apple is taking overall with their desktop OS and I don’t like what I’m seeing. I didn’t like the preview of Lion, either.

Update: Yay, a quick scan through the developer forums revealed that the old Xcode was still available — just hidden. So I’m off downloading that. Later today I’ll find out if it was just the crappy new interface, or if I really have gotten stupider over the last few months.

The Randomizer

Posted 2011.03.24 21.43 in Computers/Internet/Technology by Stephanie

After 3 months of on-and-off working on my thermostat project, it seems kind of funny to pop this one out in a couple hours in a single evening.

My second from-scratch Arduino-based project, is more or less an electronic version of the ‘Magic 8-Ball‘. Press one of the buttons and the screen fills up with random characters or numbers as it ‘randomizes’ ¬†itself, then after you release the button it presents the result on its LCD screen.

It has around 20 8-Ball-ish responses, though they’ve been edited to fit on the screen, modified a little to fit the format of The Randomizer speaking in the third person. For no good reason whatsoever.

Eagle-eyed obsessive readers (I know who you are) will recognize the enclosure and button board are from the 0.1 version of the thermostat. Having 4 buttons (the little one is just a reset button) and the 8-Ball only using one of them, I quickly came up with a use for the other three.

Forgive my nerdiness… when pressed, buttons 2, 3, and 4 will produce the result of rolling percentile, 1d20 and 1d10 dice instead of an 8-Ball phrase.

While on the subject of geekiness, for some extra geek points (and battery savings) the LCD screen’s backlight only comes on when in use, then after 30 seconds of disuse the backlight switches off.

Each of the 4 buttons goes to a digital pin, and there’s still some additional pins available so it could be expanded further. Though even with only the four existing buttons, it could be expanded by reading multiple buttons at once.

The Randomizer runs on 4 AA batteries, which will probably last for 2 or 3 kilo-whiles. You can build one of your very own; all you need is an Arduino, an LCD, a couple buttons and a box.

Here’s the source code, for your enjoyment and tinkering pleasure.

Rooster Sauce

Posted 2011.03.21 19.33 in Pointless Blather by Stephanie

Wow. The Oatmeal loves his Sriracha sauce just as much as I do.

Image by The Oatmeal

Funny thing is, I’ve been in love with this stuff for years and yet I didn’t notice the rooster on the label till The Oatmeal pointed it out. I actually had to go look in the fridge, to see it for myself. Yep, it’s there.

Other funny thing, it no longer seems all that hot to me. Just tasty.

Updated Already

Posted 2011.03.20 22.10 in Computers/Internet/Technology by Stephanie

I couldn’t leave it alone, of course. Had to take it apart again today and make an update.

That thing with the WizNet module hanging sometimes, I had applied a very makeshift fix to yesterday. See, the WizNet doesn’t have its own power-on reset, but it needs it. They suggest you use a digital pin from your uC but I was out of pins. So I used a 10uF capacitor, which was enough to ground the reset line on power-up or manual reboot.

The problem was, I had my WizNet reset tied to my Arduino / ATMega reset, and the capacitor meant I couldn’t update the programming. At least, not without temporarily removing that capacitor.

So it turned out, I did have a spare pin. I had been holding A3 in reserve. Just incase the temperature readings from the Chronodot remained inaccurate due to the heat from the WizNet, I was prepared to add a TMP-36 analog temperature sensor, and dangle that a few inches below the enclosure. Luckily, with the thermostat mounted vertically on the wall, and the Chronodot a good 1″ out with open air around it, the temperature readings are accurate.

So I pulled it open, removed the capacitor, and unhooked the WizNet reset line from the Arduino / ATMega reset line, and tied it instead to A3. A few quick changes to the software, and presto, no more hang-on-powerup and it can be reprogrammed without any soldering. Yay!

Also, I decided to go ahead and show off the guts. Why not? Just be warned, if you’re easily upset by ugly wiring hacks and poorly-planned soldering and random wires and tapes and dead-bug construction… well just don’t look.

And finally, here’s a link to the updated software. The zip file also contains a text file that outlines the pinout & functions for the ATMega chip, the WizNet module, and the function of the HVAC lines — or at least, how they function in my house.

So Many Eggs

Posted 2011.03.20 10.35 in Aquaria by Stephanie

How do they all fit in there? How does she have enough room for so many eggs inside her shell, without totally displacing her own body?

Snails: bigger on the inside than they are on the outside.

Thermostat Deployment

Posted 2011.03.19 17.09 in Computers/Internet/Technology by Stephanie

Today I went ahead and did it.

There were just two things left to fix and I fixed ’em both. One hardware glitch and one software bug.

That’s it. Done deal. The thermostat is live and installed.

It’s ugly and there’s wires all hanging out of it and it looks like a high-school science project and I don’t care – it works and it’s networked and it does exactly what I want, when I want, how I want, and I built it from scratch!

Now if I’m cold at 2am I don’t have to get out of bed and crank the heat – I can grope around for my laptop or iphone or ipad or whatever is nearby, log into the thermostat and twiddle the dial remotely. I’m almost looking forward to being cold in the middle of the night.

Or hot – come summer, I’ll have just as much control over the A/C as I do the heat.

Isn’t it wonderfully ugly? The red things in the wall are plugs from a previous thermostat. Apparently it was there way back when the wall was last painted, some 9 or 10 years ago.

The red glow on the wall indicates that the furnace is currently on. If the A/C were on, there’d be a blue glow up there. No glow indicates that we’re at the desired temperature.

The thumbnail pic on the left shows a better view of the thermostat in situ in my livingroom. All dangly wires and protruding bits, hanging out for all the world to see. Like it has no shame.

I’d love to share a schematic with you all, but I didn’t make one. The guts are one messy tangled mix of design-and-build-on-the-fly-and-hope-it-works. There’s no internal photos for the same reason. It’d just shock and offend.

I will share the source code though – for those willing to give this a shot yourselves, there’s enough comments in the code to explain how to build the physical side of things. Well, most of it anyways. The rest, you can extrapolate for yourselves.

As mentioned in earlier posts on the subject, it is based on the Arduino IDE, although there’s no actual Arduino inside. The heart of it is a repurposed Serial LCD Kit from SparkFun. It just happens to be a small footprint Arduino-compatible board designed to fit behind a 16×2 LCD display. (updated 1104.18)

Like it’s an Arduino without the Arduino, the network side of it is an Adafruit Ethernet Shield, only without the Adafruit ethernet shield part. That is, all the thoughts and purpose and intent from the Adafruit shield is there, but to save space I didn’t actually use her shield in the final product. Just the Wiznet module, hotglued to the inside of the enclosure.¬†Oh but it is an Adafruit Arduino enclosure, so there you go!

Anyhow, babbling aside, here’s the source code! There’s some extra features I haven’t talked about yet, and some stuff that hasn’t been implemented yet in hardware. And it’s been shelved long enough that I’ve forgot how to use half the functions. And there’s no documentation, naturally.