You are currently browsing the build tag archives.

Mark III Rev D – It’s Alive!

Posted 2012.10.21 10.40 in Computers/Internet/Technology

The ISEB-6 Mark III revision D is alive! I put the finishing touches on the soldering this morning. All that’s left now is finalizing the software. And making the actual leather bracer. And mounting the electronics. And building a slick enclosure. And…

Ok there’s a lot more to go yet. But still – look!

Isn’t it kewl?

The only real bother I ran into was the display’s only got 3 bolts instead of 4. It’s still sturdy, the data connections are all soldered solid. The problem was when I routed all the traces, I forgot to leave room on both sides of the board for the hardware. So the top-left corner under the screen has two SMD resistors that would short against the nut, and the bottom of the board has two traces that would be cut if I counter-sunk the hole to accomodate the flat-head bolt. Bummer.

Apart from the problem with that one bolt, everything else went together fairly smoothly. Mostly.

The image below shows it almost ready for the screen – the BMP085 is in place for sensing temperature and air pressure; the ADXL345 is in place for measuring accelleration. I’ve also added a white LED to serve as a flashlight, and with some creative snipping and soldering, I fit the Lillypad Vibration motor in underneath the screen too!

When the whole thing’s done and finished, I’ll be posting everything (code, board layout, BOM, assembly) so anyone can make their own ISEB-6.

Also noteworthy: there are still two available analog inputs (A0 and A1) and three available digital IO ports – B2, C2, and C3. Expansion possibilities!

I positioned C3 near the ICSP port so one could add a SPI peripheral by using C3 as a slave select (the display is already using the default SS pin). C2 is on the sub-board with the buttons, to allow expansion there. The other three available I/O pins, along with the I2C bus and power are available at the top edge of the board for easy expansion.

The Fun of It

Posted 2012.06.04 22.25 in Computers/Internet/Technology, Pointless Blather

So last week I did a write-up about my ISEB6, parts of which ended up making the rounds on various maker / tech blogs. I noticed a lot of people were wondering why someone would bother doing this? Why ‘waste’ so much time, money, energy, and effort making something like this?

The simplest answer is, for the fun of it.

Sure, there’s a level of enjoyment to be had from simply having the finished product, from using it. There’s the utility of it – it was designed to do a thing, and it does that thing. There’s the sense of novelty, that one might get from any new toy, be it a cellphone, computer, tv, or whatever. In this case all that is augmented or magnified by the fact that I built it myself.

When you build something yourself, you have the sense of achievement, in seeing something through from initial concept to final build. You have the knowledge and experience gained, from learning the hows and whys and whats. And you have the pride of knowing that you made something – you set a goal for yourself, and you accomplished it.

And there’s the sheer fun of solving problems and challenges. Physical computing projects like these give you the opportunity (or the challenge) to work with very limited resources. How many functions can you include, how many features can you code, when you are limited to 32kB in which to fit your entire program? And when you have only 2.5kB of RAM in which to execute that code?

Wearable projects add two more dimensions of limitations: Size and Power. How many features / peripherals can you add without making the whole thing too big / heavy / unwieldy? And how much power does everything draw? How long will it run before you need to recharge, or do you need bigger batteries?

I’ve seen a few comments that basically asked, why not just strap a smartphone to your wrist? The simplest answer there is, that’s not what I wanted. That might work for some people, of course. Find something that someone else has built that’s close enough, or good enough, buy it, settle for it.

Why settle though? I live in a world where if you want a specific product to do something the way you want it, if noone else has built exactly what you want, you build it yourself. Build it yourself and you have exactly what you want, the way you want it. And if it ever breaks, you have the know-how to fix it.

(A close runner-up is, buy something that’s mostly there, then hack it to make it perfect. Add those features, fix those functions, and get exactly what you want that way.)

Stuff does break of course. Especially when you’re building and experimenting and learning, all at the same time. Sometimes it’s part of the fun of the challenge, sometimes it’s less fun but you still roll with it. Last week the OLED screen died, I never figured out why but luckily I had a spare so I just replaced it.

Two days ago the Micro-USB port snapped off the LiPo charger. I consider that a component failure since it’s supposed to withstand plugging and unplugging. I didn’t have a spare charger board, so I’ve contacted the manufacturer to ask about a replacement, and in the meantime I did some delicate solder-surgery to enable me to keep using the broken one, for now. (That was less-fun.)

And since that write-up last week, I’ve made a dozen revisions and upgrades to the software, changed / improved some of the leather work, switched out the dull dark hardware for shiney brass, and added brass snap closures to keep it on my wrist instead of the elastic string I had started with. I still plan to redo the top leather layer to make it more attractive.

That’s part of the fun too – projects like these are never really finished. You can go on improving them, enhancing them, upgrading them, until the next big idea comes along.

Thermostat Three

Posted 2012.05.09 21.27 in Computers/Internet/Technology

This might just be the fastest project I’ve ever done. Saturday morning I started the hardware build, by Saturday evening I had also begun the software. By Sunday afternoon I was halfway through. Sunday evening saw it 90% completed. Monday was finishing touches and adding some extras just because. Tuesday I finished it. This afternoon I installed it.

Some of the things that aren’t obvious in a still photo: The the block above the screen has two RGB LEDs behind it. These aren’t programmable, but one cycles through the colours slowly and the other does so quickly. Together they provide a sort of swirly multi-colour effect that I think is reminiscent of ST:ToS effects.

The red circle ‘red alert light’ is wired to the XBee’s RSSI so when the XBee receives a wireless command, the red light comes on for a few seconds.

The white gridded rectangle is the DHT22 sensor (temperature and humidity). I felt it would ‘blend in’ enough that it should be mounted right up front for all to see. The little black hole to the right of the DHT22 is for the light sensor.

Why is there a light sensor? Why not? Also: because I had an extra one laying around.

The screen display is mostly self-evident. Time, day, date. Heat/Cool. Run/Hold/Override. Target temp (small) and actual temp (large). Fan status (on/auto) and humidity.

The last line is EV (exposure value) and free memory. That’s 657 bytes. Not kB or MB, just bytes. It probably won’t ever change but it’s there just because there was space for it.

The following images have some more build details / information:

The sketch code, and a text file with lots of my design and build notes, can be downloaded here: Thermostat_3.zip

Tinkerers’ Rules

Posted 2011.05.15 10.34 in Computers/Internet/Technology

Brought to us by Wondermark.com

Quoth the Maker: If you can’t open it, you don’t own it.

Hacking My Brain

Posted 2011.04.03 21.19 in Computers/Internet/Technology

I just built a Brain Machine kit from Adafruit. Originally designed by Mitch Altman, it reminded me of a bio-feedback brain device I had built some 20-25 years ago, after reading about it in a issue of Radio Electronics magazine.

The basic premise in both cases is that you can guide the brain to synchronize with external stimuli oscillating at a rate that matches one of the brain’s normal wave patterns – Beta (awake / consious), Alpha (dreamy / trancy), Theta (subconsious), Delta (creative), Gamma (intense thought, problem solving).

The Brain Machine is designed so that you can program it with an entire sequence of patterns, changing the waves and durations as desired for a given program purpose. The kit comes with a 14 minute meditation program already written to the microcontroller.

The stimulus given to the brain is in the visual and auditory areas, by way of two red LEDs (one per eye) and a set of standard stereo headphones. The LEDs alternate-pulse at the desired brain-wave frequency while the left and right speakers of the headphones each play a different tone; the offset between the tones (binaural beats) is also the desired brain-wave frequency.

Personally, I found the headphones a bit distracting so I won’t use them as much. Maybe it’s just me but I only experienced the ‘binaural beat’ thing a couple isolated moments, otherwise I just heard two different (slightly annoying) tones. Useful for blocking out external noises, but my home is already a quiet environment, usually.

Using the brain machine is… trippy. I would love to be able to share images of what I saw, but in lieu of that, here are some attempts at describing a few moments.

  • Predominantly I experienced a lot of geometric patterns that were repeated infinitely across my field of view; waves of triangles, squares, pentagonal and hexagonal forms. Sometimes superimposed, eg. my left eye was seeing hexagons while my right was seeing pentagons.
  • Then it was like floating through outer space, surrounded by stars. While flying through a meteor shower. With TRON special-effects. As viewed through a kaliedescope.
  • I became able to see the individual cells of my own eyelids.
  • Then I could see the electrons travelling through my optic nerves, all buzzing about in frantic bio-feedback.
  • Then everything fell away and I could see the entire Milky Way galaxy above me, moving in accelerated time.

It’s amazing just how many colours you can actually experience, given that the only colour used is red. I was seeing blue, green, purple, red, and white, and to a lesser degree, yellow and orange.

After taking a couple trips with the default meditation program, I am thinking it would be cool to create a bunch of different programs. The ATTiny25 chips are inexpensive so you could actually burn a number of them, each with a different program. Then just pop in the one you want at the moment, and let it run.

You could have a chip/program to get your mind stimulated and ready to work; a program for relaxing at the end of the day; a program to get the creative juices flowing; a program to just bounce from one waveform to the next to give your brain a slamming roller-coaster ride. Feed your brain various programs, and see what happens.

Trippy.

Thermostataliciousness

Posted 2010.12.23 9.43 in Computers/Internet/Technology

Last night I got the bluetooth wireless module hooked up and tested it out. It works! My prototype thermostat can be wirelessly queried and controlled!

The bluetooth module is the little red thing at the left edge of the breadboard. It talks serial to the microcontroller and talks wireless to the computer. As far as the computer is concerned, it’s just a standard tty serial port. It’s fairly seamless!

In the above screenshot you can see some debugging info that comes over every 15 seconds, plus I sent the ‘run program’ command (rp) and the DIY Thermostat responded accordingly!

Geeky techy stuff below the fold.

Read more »

The Humble Thermostat

Posted 2010.12.12 12.46 in Computers/Internet/Technology

I’m a big fan of the Thermostat. They’re clever, and all they want is for us to be comfortable.

Even the simplest mechanical ones are really little robots, whos only goal in life is to keep you comfortable. You tell them what you want the temperature to be, and they dutifully turn the furnace (or A/C) on and off all day and night so that your house remains in your comfort-zone.

The programmable ones of course take this to the next level – with a programmable, you don’t even have to tell the thermostat what your desired temperature is. Or rather, you tell it once, what temperatures you prefer throughout the day and the week, and from that point on, it keeps you comfortable. It’s like magic.

What else in the home works so hard to keep us comfortable, yet asks for nothing in return? The only thing that I can think of that comes close, is a chair or a sofa.

Despite all this, however, I’ve been starting to want more, from my thermostat…

The first seeds were planted several years ago. I saw a programmable thermostat that came with two remote controls. It was outrageously expensive, but there is an undeniable appeal to the thought of being able to crank up the heat without getting out of bed, on a cold winter night. The cost, however, was beyond my means at the time. And by the time I could afford it, that unit was no longer available.

Then last year, the local utility company sent out offers to get a thermostat that you could program over the internet. It sounded like a good idea, but at the time, I did not persue it. They sent the offer again this  year however, so I did investigate.

Their unit is a normal programmable thermostat, that has an RF receiver in it – basically a numeric pager unit. This allows one-way communication, so you can send commands to the unit but not retrieve any information. It’s free, but you have to give up some control: they’ll give it to you, if you agree to let them turn off your air conditioner if the demands on the power grid are too high.

Still, it looked hackable so I filled out the application. They never got back to me; I figure its because I use so little power that they’d never recoup their costs of giving it to me.

Finally, last week I spotted a thermostat at Canadian Tire that came with a remote control. It wasn’t too costly so I grabbed it, with the intent of hacking it. It was a Noma model, which I think is CT’s house brand? Whatever. Let’s look inside!

Aside from the generally poor construction, here’s some things to note: The unit uses RF communications, at the 915MHz band. Comms are one way only, with data going from the remote to the base. This allows the base to display the temperature info from wherever the remote is, but the remote cannot display the temperature, mode, current function, or anything else, from the base. The remote allows you to override the base to a maximum of +/- 6 degF (3degC). Finally, both the remote and the base use a cheap thermistor to determine temperature.

So, it’s not perfect. The one-way comms is a real limitation I think. An additional pisser is that you can easily hack into the comms on the base (since the RF is on a daugher board) but on the remote, it would be much harder as none of the communication lines are accessable (damn those black blobs.) So anything you hack in, is easiest to add at the base, meaning you lose the remote aspect – or have to roll your own remote anyways.

Indeed, when I tried to use it as it was intended, it didn’t really work well anyways. It’s a novelty, but not really a very good thermostat. Verdict: Fail.

So what is it that I really want?

Putting together all the various ideas, I want a thermostat that is programmable and runs fine as a stand-alone unit. I also want it to be able to be accessable via remote control, but with two-way communications, so that a remote unit can at least display everything that the base unit can display, plus the remote should be able to alter the temp, maybe switch modes to hold / run, that sort of thing. Finally, it would be really nifty if it could be wired into my home network, so I could access the data and control through my computer, laptop, iPhone, etc.

The solution, then, is to build my own thermostat, from scratch!

Stay tuned, this story is not over.