Posts Tagged ‘gadgets’

h1

Air Punches!

November 26, 2014

My accelerometer FINALLY arrived (hint: don’t pay for expedited shipping until you know when their ship cutoff time is). It does not work. I am quite cranky about that.

This gets me to thinking about that fourth possible mode (three others flowcharted in previous post, flowchart is a verb, right?). I am pretty certain I can set thresholds to get an interrupt on a sudden motion, such as the very end of a punch (even an air punch). So… the ring is going to say “KER POW”, “BIFF”, and “THWACK” when that happen.

This amuses me very much. I thought it might amuse you. I plan to make it little screens with edges, Batman style, not just words. I suppose I have time to do that artwork and put it in the code. Since my accelerometer is DOA. Hmph!

 

h1

Planning ahead

November 24, 2014

The Adafruit accelerometer did not arrive in time for my birthday and I really wanted to wear my ring to my party. I went to RadioShack and got a small momentary pushbutton. I charged my 50mAh battery, clipped the leads and used tweezers to coil the stripped wires around power and ground. A few more tiny wires and it was working.

I wore my ring several times over the weekend. It was pretty functional and didn’t need charging (yay for sleep mode!). The wires were a little fiddly so if I took the ring on and off or handed it around, sometimes it would reset and be flaky but pushing the ring blank back on usually fixed it.

As I was passing it around or fixing it or just playing with it, someone asked if it could do Magic 8 Ball instead of vocabulary and down the rabbit hole I fell.

With a button, well, it can only do one thing. But the accelerometer identifies (interrupts on) taps, double taps, and portrait/landscape changes. It can also do thresholds so I suppose it would recognize punches as well (air punches! real ones would definitely break the wiring!).

Right now, I have 200 words, some of the definitions are poorly formatted, there are only 60-ish characters allowed so if the definition is longer it gets cut off. I tried to prevent that but the cutoff is probably 62 instead of the 66 I used so a few definitions are missing the last bit. However, with the 130 GRE vocabulary words and the 70 strange wordnik words, it is a fairly amusing mix.

MicroView ring

 

For some reason, though, the ring really likes the word ‘turpitude’ (which means depravity or wickedness). The randomness is working well except for that word coming up more often than I’d expect. I’m trying not to read anything into it.

Anyway, I still have about 5k of flash space. Magic 8 ball responses will be easy, they are small. It can do a portrait/landscape interrupt as I turn my wrist around so I’ll put up “Think of a question!” and then another turn back and forth (P/L interrupt) will get the random yes/no/maybe response. Though really, a tap or double tap might as well get the response.

But, what should it do with a double tap? (I just thought up a punch so I’m going let that percolate a bit.) My husband asked if the ring could play pong, using the angle of the ring to move the paddle I thought about that and found that someone has already done that work for me (video!). I only need to replace their pot with tilt sensing.

After getting a little frustrated with trying to make the state machine work from inspection, I decided to stop doing that thing where I don’t apply professionalism to my personal projects. Thus, I made a flowchart to decide how it will work.

flowchart

I need UPS to arrive with the accelerometer so I can test the implementation of this mini-beast. In the meantime, I probably should make a few more ring blanks, these are all probably a bit small to work with the accelerometer and the battery.

 

h1

Let’s Get Wordy!

November 20, 2014

I got a MicroView: a tiny Arduino with a nice OLED screen. I want to make a ring with it. When I tap the ring, it should give me a word. If I tap it again, the ring shows the definition. I’ll call the ring WORDY and vocabulary geeks all over the land will rejoice.

I’m sure you are wondering how to build this (and not why I would want to). The critical component is the MicroView. Here, have a picture to see how big it is on my hand.

MicroView on my hand

It fits reasonably well on my ring finger, easily on my pinky. Now all I need is:

  • A battery
  • An accelerometer
  • Ring to mount it on
  • Connecting all that together

Let’s start with the battery.  It has to be small. When I measured the MicroView as consuming 330mA (5V), I was bereft. Of course, where was it putting the 1.5W without burning things? Once I read a handy book with a section on how to measure current correctly with an ammeter, I found that the MicroView consumes about 13mA with the screen lit and can be put to sleep to consume 0.13mA. And once I stopped trying to use STUPID math (thank you tymkrs IRC!), that meant I could expect a 50mAh battery to last for about 100 hours, far beyond my minimum goal of 3 hours.

Tangent: When I work on client projects, I’m quite disciplined, writing things down, looking them up, and double checking my math. It seems that on my own projects, I keep trying to shortcut to the most obvious solution. Maybe it is because this is Arduino-based so I think it should be easy. That’s dumb because I’ve used the ATmega328, it is not a simple chip. Adding a layer of niceness doesn’t make for an easy system, it just is one layer of niceness.

The next thing to add is an accelerometer. I like accelerometers: they give a layer of flexibility that is just lovely. I could say I want to “tap to activate” and have that mean: tap, move above some threshold, double tap, change orientation, etc. I could work out the user interface details after my prototype was functional.

Or it would mean that if I didn’t keep blowing up accelerometers. Naw, that’s not right, if I’d blown up the accelerometers in tiny little explosions, that would be better. Instead, I tried to use the Sparkfun MMA8452 breakout board. There is plenty of example code for this accelerometer on an Arduino. Funny thing though:  the standard Arduino board uses 5V but has 3V out. And there were some writings about adding resisters to decrease the voltage that the 3V accelerometer part would see on GPIOs.

Perhaps I should have paid more attention. Though I did read it several times. I should have looked several plus one or two. I would never just try it if I had an EE to talk to, which I would at a client’s. (Sadly, my best EE friend moved to Seattle. He’s happy but I have no one to take to that Japanese place next to Baskin Robbins and bribe into telling me I’m about to do something moronic.)

Anyway, that accelerometer is dead. I forgot to do the voltage limiting resistor trick on my interrupt line. Whoops. (Since I need a low signal to get out of sleep, I used the internal Arduino pull ups. Anyway, that accelerometer is dead.)

However, Adafruit makes me think I’m not the only one with this particular issue as they sell the same accelerometer in a 5V tolerant breakout board. Two things you should know: it isn’t the same part (MMA8451 instead of 8452, mostly the same but not, you know, the same); and the address line is not 5V tolerant. I couldn’t get it to respond to the “who am I” register query so I kept moving the address line until that time I missed the 3V (output from the Adafruit board) and the GND, putting it on the 5V that is between them on the pins.

breadboard with dead accels

Here you can see a picture of my little breadboard with my two dead accelerometers. A new Adafruit accelerometer will be here tomorrow. My driver is in a better state (it worked right before the accelerometer stopped working) so I’ll be leaving it in the default address state.

However, this Adafruit bread board is just a wee bit too big. I mean, just a tiny bit too big.

photo3

My plan involves a Dremel tool (and safety glasses and a mask). Should be no problem right? Actually, the top of the board has several 3-4mm of unnecessary board. I only need to shave off 1mm and it will fit.

In the meantime, the button works really well. If something happens to the accelerometer tomorrow, I’m going to radioshack to see if there are any tiny press buttons.

Stumbling along in the project, I have ring blanks. I made them out of freaky “cloud” clay I found at the hobby shop (D&J is awesome). I was hoping they’d have small LiPos, only in other things and long-thin ones for aircraft but they did have this cloud clay.

It is pliant when dry and super light. It says it doesn’t shrink but it totally does. It smells like hair conditioner. Nail polish works really well on it so even though I got white, my rings aren’t staying that way. It isn’t rubber like Sugru but it seems reasonably durable. I would like to 3D print a ring base but I’m pretty happy with my cloud clay blanks. Though I might try Sugru too.

Now, connecting it all together. Hmm… the new battery will have a JST connector. I can’t see how to keep that which means cutting that off and stripping the wires. But how to route them? I’d like to put them in something with a connector but then I have to run wires around my finger since the connectors are sorta big.

ring blanks

Yeah, those wires are pretty hideous. I guess I’ll  wrap wires around pins and use a little bit of electrical tape method. I don’t like that either as it becomes a construction project to charge the battery but, hey, 100 hours means a lot more play time than the 3 hours I thought. Though, since the clay did shrink, some of the ring blanks don’t fit all of the pins (as shown). I can make some new ones, I like playing with the clay. (Did I mention it is a little freaky? It is weirdly weightless.)

As for the code, it is pretty simple. I’ll post a link. The flash based wordlist that gave me the most trouble (again because I went for the easy looking path instead of what I know to be true about the ATmega). Also, I want a much better word list. The GRE vocab list I started with is interesting but I know most of these words. Wordnik has a lovely set of lists and words but they aren’t easy to download (maybe there is an API?), On the other hand, the sleep and low power code went in without a hitch.

So, this is what I’ve been working on. It has been amusing and difficult. I’m ashamed of myself for blowing the accelerometers but sort of pleased with myself for using my downtime to learn things, even build things.

 

h1

Why this should win the Hackaday Prize…

November 11, 2014

I was a judge for the Hackaday Prize. The contest was to build something awesome (and connected). The first prize was a trip to space (or the ~$200k they thought it would cost). All of the top five finalist rewards were pretty incredible.

I judged the 50 semi-finalists, scoring them on openness, wow factor, connectedness, reproducibility, innovation, and user experience. Once we had the top five, they got another month to work on their projects and we re-judged, adding manufacturability to the judging criteria.

It was hard. While I thought all of the top five belonged, there were many of the top 50 that could so easily have been in the top five. Now that Hackaday is about to announce the prize winner, let me advocate for which one(s) I think should win, in no particular order.

SatNOGS aims to build a global network of ground stations to listen to satellites. Their new finalist video was great, a perfect introduction to the problem (and the team). And this, unlike the other finalists, was a clearly team effort: a huge project with lots of parts to it (hardware, mechanical, embedded software, servers, UIs).  Still, the application to readers was nontrivial: in my backyard, I could build one of their widgets and help people around the world listen to the satellites.

Enabling technologies are tough to make appealing. It is easy to fall into the lure of a personal satellite (e.g., cubesat) but listening requires more infrastructure than most non-governments have access to. This is exactly the sort of problem that needs to be crowdsourced. The SatNOGS team made it easy for people to join. Their fantastic documentation leaves lots of options for building; it is a good instruction set that still lets me customize to my particular interests (and parts available). It would be fun to build this with a middle or high school student to get them interested in space technology. Between their excellent build instruction, good use of other open source components, and their topic (space-oriented so therefore prize-related), SatNOGS should win.

In the RamanPi project, the creator makes a spectrometer. OMG, you guys, I have ALWAYS wanted a spectrometer!!!!! (This is a total OMG Ponies! moment.) What’s even better, after reading the documentation, I feel like I could build one. Before Christmas. I could have my own little gadget to tell me what things are made of. I could take it with me and explore the water components around the bay or the soil composition. I could be a SCIENTIST.

Err… sorry, where was I? Ahh, right RamanPi. Not only was RamanPi a great item to build, the way the creator did it was great. Being new to the area, the project logs show the real sort of two steps forward, one step back that is a part of engineering we hide too often. Even better, the use of 3D printing to avoid expensive optical benches is something I’m going to be using myself. I like that the home 3D printer is being put to use to create this level of awesomeness. This project was all about what is possible and kindles the desire to explore: RamanPi should win.

The PortableSDR project is a software defined radio. It is small (truly portable) and has a well thought out display (aka I loved the waterfall display). I very much want a kit of this. Though I may use it as a portable spectrum analyzer instead of a way to listen to all of the radio bands at once.

While the tech on PortableSDR was neat, what I liked most was teh humanness of the creator. While the finalist and semifinalist videos were clean (I liked that the finalist video was outside, where the PortableSDR is likely to live), there was at least one video with a messy bench and cartoons running in the background (I suspect a kidlet). This was a person who had an idea, who put it on Hackaday because it was neat. Now he’s a finalist and people want kits and finished products. I don’t know what he meant to do next in his career but he’s probably changed the course of his life by following through on his idea. I want to see what happens next. PortableSDR shows the best side of Hackaday: follow your dreams and the rest will follow. PortableSDR should win.

The ChipWhisperer project is one I keep sending to all of my hardware friends and saying, “see! look!” The project uses power analysis to crack software security in chips… which is to say that this gadget breaks most of the security on most of the devices we all use right now. It is terrifying. On the other hand, these sorts of tools already existed, they just cost a lot. Now it is cheap ($1500 for the prebuilt kit, as low as $100 for DIY pieces) but we were never safe in the “secure because math” mindset.  While this makes my job more difficult, it will make everything better in the long term.

Even as scary and important as this project is, there were many other things going for it. It takes a complicated topic and makes it sound easy and interesting.  Many people want to know where to get started with FPGAs. This is a great project for that. It would be hard to do this power analysis in a microprocessor or single board computer. This is a good use of FPGA to solve a non-contrived problem. It would be useful to read the code (which was well written, at least the stuff I looked at). There are lots of pieces here: desktop software, the embedded, hardware, and FPGAs. I’m impressed that he didn’t stick to his hardware, he talked about how to reproduce with other kits. Hackaday has traditionally been about breaking things open to see how they worked. ChipWhisperer takes that ethos and puts a rocket behind it; ChipWhisperer should win.

The Arducorder is an “open source science tricorder”. I think the most important thing in there is “science” though I could see it doing a smackdown with “tricorder”. The author took a lovely display and a tiny Arduino based board, added a dozen (seriously) sensors. I truly want one of these.

Let me pause here to say that I don’t think I’ll be going to Mars. This makes me sad. I don’t even think I’ll get to the moon. I can only hope that someone in my future goes to at least one of these places. But unless we stop teaching kids that science means boring memorization, no one is going to go. Space will become a cold, dark, empty wasteland.

Back to Arducorder… by having a charming display, easily extensible software, and all of these neat sensors, it lets people walk around saying, “how is this different than that?” It fosters curiosity and reminds us that science is about discovery. Talking about gravity as acceleration is a lot more fun when you can see the data. Arducorder enables science education in a way that is just brilliant: Arducorder should win.

 

h1

Things I want

September 24, 2014

I suspect that these this exist. Or that I could build them if they don’t. And yet, I’d rather someone send me a link where I can just buy them.

  • A tiny board that I can hook to my computer to download sounds, then hook to a button + battery to play them. My neighbor down the street has some action figures that would be hilarious to mess with. Should run for a long time off a coin cell battery. Also, possible bonus points for making it BTLE updatable (but cheap is important too so it is only possible bonus points). [Update: Adafruit just announced what I want: Audio FX Sound Board. It is a little bigger than I’d hoped but everything else is pretty good. I just hope they get on with the rest of my list.]
  • A USB rechargeable ring of battery, 3.3V and at least 350 mAh. Would be nice if it was already the right size (and shape, with connectors) to plug a MicroView into. And by “ring”, I mean, should fit my index or thumb.
  • An LED that follows along with music, can tell me if my singing along is sharp or flat. Must work in the car, with the radio. Second version should work in shower, no external music, just whether I’m in a key (any key).
  • A handheld microphone that wirelessly (BTLE? iphone dongle?) connects to my phone to be used in live podcast recording. Also, an app with few bells and whistles but the ability to reliably record. Bonus points for an accelerometer in the mic that causes two channels to be recorded separately, depending on angle of mic.
  • 2 and 4 AA battery holder with (very efficient) power switchers that provide clean 3.3V power.

Let me know when you finish or find them.