Posts Tagged ‘gadgets’

h1

Music generator idea

June 25, 2013

OMG, the peeping bird. The Peeper. Sometimes called the FP. It starts at dawn in early April: PEEP PEEP PEEP. It only knows that one sound. And what it lacks in variety, it makes up for with volume. The PEEPs echo off the surrounding houses, giving them resonance. It is unbearably loud, particularly as I’m supposed to be sleeping.

Eventually, in late May, it is joined by another bird, affectionately known as the car alarm bird. Probably a mockingbird, its song is a car alarm: whoop whoop whoop, eee-urr-eee-urr, raaan-raaan-raaan. The first time, it sounded a lot like a car alarm. This year it sounds like a bird’s musical rendition of a car alarm, as though the birds have been playing telephone. It almost pretty, definitely funny. Still, not the way I want to wake up, especially with the FP playing rhythm peeps in the bird band.

Take that as part one of “necessity as a mom” and let’s move on to part two.

When I’m working, I like music but only boring music, music that doesn’t impinge on my consciousness. And I don’t like noise, whether it is the fan of my officemate’s computer or the dishwasher running or the peeping bird (less obnoxious in the office but still quite audible). I know I can buy white noise generator to block the sounds or get noise cancelling headphones. And sometimes I just turn up my music. Those solutions each have some definite drawbacks.

As I was reading about Bug Music and the author’s attempts to play an instrument in line with the symphony of cicadas or even harmonize with the beat box rhythm of a cricket, I started to wonder. Could I make a music generator that would listen to ambient noise and generate some cover for ongoing sounds?

Say the peeper is PEEPing. It is pretty rhythmic as well as tonal. So could my gadget make horn sounds to cover the peeper? And a soft swingy, jazzy riff underneath to maintain musicality? And when the whine of a fan is going, could it take that 8kHz whine and add some arpeggio to relieve the monotony?

There was an iphone app called Ambiance that would play a huge range of sounds- oceans or bird calls or whatnot. It was to help people relax. This would incorporate exterior sounds into that, layering them into the intended soundscape.

And the music generator would let you hear some sounds: a siren going by won’t mix in right away, the music generation processing would need time to acclimate to new environmental sounds.

Of course, I’m just blithely assuming music generation is easy, that improvising is trivial for a computer. But that is an exercise left to the implementer. Anyway, when you are done, please let me know so I can buy your gadget.

 

h1

Tools sometimes define the problem

May 23, 2013

When I have a bug of the sort “nothing is working” or “the peripheral is acting like the processor isn’t talking to it”, the digital multimeter (DMM or DVM) is the tool I start with. It sits on my desk, all the time, even after a clutter purged. It is easy to use but a very yes/no, working/not working sort of tool. It is kind of binary, like a hammer. It is either hitting the nail or not.

If something is not working, the next tool is an oscilloscope. Like a microscope for electrons, an oscilloscope will let me see what is going on. However, to get an oscope, I need to call an EE friend and ask if I couldn’t please borrow his scope (he always says yes). Then I head over to his house after he gets home from work (I think his wife is afraid of the garage) and pick up the scope. I usually get it for a week or two, depending on whether he’s got a weekend project planned. (This is Phil of Weekend Engineering so he often has weekend projects planned.)

Where I’m going here… using an oscope requires planning. It requires me to admit my bug can’t be solved by just trying something else, that typing another line of code or doing a recompile isn’t enough. An embarrassing amount of my time is tweaking my code to do one thing just a little different. Admitting I can’t do that until it magically works, well, it takes a little while.

Even when I have 24/7 access to a scope, using it still means figuring out where to attach the probes to the board and configuring the scope. Admitting I have a problem, a real problem and not just a typo, is oddly difficult. I should just be able to figure it out.*

*This is a myth. A complete and total myth.

When I worked at HP, there were plenty of scopes around. But they all weighed 40-60 lbs (and dropping it would have been *bad* because they were hideously expensive (like 1/2 year salary expensive)). So in addition to admitting to myself I needed help, I had to find a big strong man to carry the thing for me. Who would inevitably offer to help me connect it to my board and then take credit for the solution. (Why didn’t we just put the darn thing on wheels? As I look back, I’m a little frustrated by that idiocy.)

There was another tool I used a few times there, one that I think was on wheels: the logic analyzer. It hooked up to dozens of digital signals and would help me figure out what was going on all over the system. But it was a very difficult tool to use (its manual was about four times longer than the oscilloscope manual and it cost a whole year’s salary). So to use the logic analyzer, I had to admit the problem was big enough to stop my normal work for three days, get someone to help me transport it, get another someone to modify my board so the signals were available, set up the analyzer, and then, within a few hours of getting the information, solve my bug.

Once I admitted the scale of the problem warranted a tool of that magnitude, and put in the diligent effort of setting up the tool, the solution was always obvious.

Now logic analyzers are tiny widgets that plug into USB ports and take all of ten minutes to set up. (I did it (almost) live unboxing of the Saleae Logic on my new podcast.)

But I still have to admit I need it. I wonder if I’m going about this wrong. In the past, I’ve always waited for a problem to happen. Then I’ve waited until I determined I couldn’t solve it the easy way (poke, poke, poke). Then I grudgingly admit it won’t fall to trivial debugging. Then I pull out whatever tool will help, grudgingly (still) hook it up and configure it. Then (usually), the problem falls fairly quickly.

First, the grudgingly parts… the fact that I can’t type my way out of a problem doesn’t make me stupid. I know that and yet… this is what programming is to many people.

Once I got my itty-bitty, super cheap new analyzer set up, I left it in place. And now I’ve moved on to other issues, just adding more signals. It is really handy. I can look at things whenever I want… before I start tippy typing randomly and pressing the recompile clean button for no reason.

But some tools take time and they don’t look like forward progress. It is hard to know when to throw in the towel on being a monkey typing randomly (and when to stop hoping Google, Stack Overflow, and caffeine can solve your problem). On the other hand, reading the manual or getting the right tool or taking a class… well, sometimes it is necessary to take a step to the side to get on to the fast track to the solution.

h1

What I want from a watch

May 6, 2013

There is a lot of talk (and rumors) about watches.  I keep thinking “we don’t need no stinking watches”.

I like not wearing a watch. Having something on my wrist decreases ease of melding with my computer. I like the flow-state where it is just me and the bits, working together to make each other work.

Thus, if I was to give up my previous wrist space, it would have to be for a good reason.  It would not be a pedometer ( lives in my pocket), a GPS (lives on my phone), or a sports anything (lives nowhere on my person).

I’d consider a health monitor but I don’t think the technology is there. I’d want it to monitor core body temperature, heart rate, glucose levels, and blood pressure. Basically, it would be a wrist mounter tricorder. None of those are easy to do on the wrist (also, noninvasive was implied) so this seems like a pipe dream.

But I’m not completely unreasonable. I’d settle for an auxiliary screen for my phone. It would have to be light, more like one of those rubber cause wrist bands (i.e. livestrong) than a proper watch.

I’ve heard rumors of Apple and a slap band style. I could get into that. Say it is two inches wide and eight inches long. When flat, it could show me movies via, I dunno, Bluetooth (or BTLE). My headphones would plug into my phone so the wristband doesn’t need a jack. Though it could have one which would let me watch movies with someone, that’d be neat.

Given my goal “watch” is now about 2″ wide and 8″ long, the screen could be about 2″ x 4.5″ which would show movies in widescreen (16/9).

I could see using the wristlet in flat form as a display, using my phone’s screen for a larger keyboard. But I don’t have any problem with typing and seeing on my phone (most of this blog post was written on my phone).

When the wristlet is in coiled mode, it should show time and some chosen info from my phone: texts, emails from VIPs, tweets, etc. I’d like to be able to press something and say show me more and dismiss (also pause, forward, and back for movies). I don’t know if that means I need a touchscreen or just a few buttons on the end. With feature creep, I could see a stopwatch but I don’t really need a features I’ve got elsewhere.

I understand a lot of people are trying to make a wrist based phone and I can understand that. But even if they succeed, I don’t want that. How about instead of another me-too product, we get something really spiffy?

If you want my wrist, be innovative.

 

h1

Embedded systems podcast?

April 23, 2013

At the embedded systems conference, Star Simpson, Jen Costillo, and I did a talk called Start Tinkering. The goal was to get people interested in doing hobby projects: why we do it and how to get into it. We did a radio show, I announced at the inaugural podcast.

But if it is the inaugural, that indicates there would be more podcasts. So what would we do podcasts about?

This one was very high level, an introduction to getting involved. I think I'd want to do a deeper dive into technical things, but still with a hobbyist bent.

I'd like to have a podcast that was just Jen and me, getting a box from Amazon that contains an Arduino and maybe one other board (accelerometer? ThingM LED?). We'd chat and open the box and download the software to make Arduino work. We'd do the normal Hello World to make the LED on the board work (that code is included when you install the compiler), and then change it so the LED blinks at a different rate and all the stuff we'd want to do to get started. Then we'd make the other board (accelerometer? LED?) work to show a few more things. Then, I think we'd rip the Arduino part off and treat it like an Atmel processor. Jen and I would chat over all of this, talking about what we were doing, talking about why we'd do this instead of that, mentioning AVR Freaks and other helpful communities.

I suppose we could do this with Raspberry Pi as well. Oh, MBED, XPresso and MSP430's cheapest board as well. It could be a segment “box to xyz”

And I'd like to do an interview with Jeri Ellsworth, asking her about what she's done and what's she planning. Actually, I'd like to interview all my friends first- Phil over at Weekend Engineering would have a lot of interesting things to say, especially about designing for consumer products. My husband could talk about FDA and UIs and embedded systems. Star could come on and talk about TacoCopter (she's locationally challenged so having her be a regular part might be difficult).

Maybe we could do a radio show of teaching someone to solder. Or talking about software design.

We'll need theme music, I think. And editing software. And good mics. And time. Lots of time. That may be the most difficult part.

h1

Tesla!

February 16, 2013

lt has been a month so I figured I’d talk about the new car, give it a review. And then this week was full of NYT and Tesla arguing like internet n00bs (proving, even if you are the NYT and CEO of a medium-sized company, someone on the internet is wrong).

Let’s recap my views on the Tesla… I thought it was silly and expensive. While C likes bleeding edge technology, I’d rather wait until someone else dealt with the bugs before getting mine. Since I write (err, fix) bugs for a living, well, I understand that it just takes awhile before things are solid.

Also, it is an expensive car. Really, really expensive. We could use that money for something else. Something worthwhile. Maybe three normal cars that we juggle in the backyard using our giant robot.

More than a year ago, I tried to get a friend to convince C it was silly to put down the deposit on a car that wouldn’t ship for a year and would be on the gushing bleeding edge. Said so-called friend told us he’d already put down his deposit; my hope for rationality was quashed.

Then it was like a game of chicken. I figured C would use his refundable deposit to have a stake in watching things. It would be amusing to him. And we’d never go through with it. Because, wouldn’t it be better to have a giant car juggling robot? Or something?

In the end, it is much cheaper to buy the car than to put my foot down and have my husband be unhappy. Clearly, I am a pushover for him.

But I wasn’t entirely a pushover for Tesla.

I didn’t like that Tesla isn’t a car company. While I don’t like the car lots or the dealers, I understand the process. Tesla isn’t that and I’m not confident I can navigate the shoals of an up-and-coming car manufacturer. Plus, I saw Tucker. I know how this story can end. (The Tesla has side headlights that come on when you turn, highlighting where you are pointing. It was eerily familiar after the Tucker movie. Also, quite amusing.)

Tesla did not help their case during the decision-making process. We went to one of their test drive extravaganzas, with balloons, soft-serve ice cream, a DJ, and the opportunity for one of us to drive the car on windy roads while the other one tries not to throw up on the super-expensive backseat. I hated the whole event. I was frustrated I couldn’t talk to the salesfolk because the music was so stupidly loud. I declined to ride along as I tend to get car sick and already knew the road they were taking; it wasn’t going to end well for anyone. I generally made my husband unhappy with my complete crankiness. But he still enjoyed test driving the car.

I was worried that we’d get the car and I’d still be cranky: unable to drive it for fear of hurting it, unable to look at it without thinking how many hours we’d have to work to pay it off, unable to ever bond with something that financially irresponsible.

It took two days. Maybe less. We got the car on Saturday, took it for a long drive, had annoying problems (had to stop at a gas station! oh, the chagrin!) and eventually came home with me liking the car but not loving it (also, slightly carsick). I didn’t drive it until Sunday and then only to pop to the library and back: boring, even in a nice car.

The next day, I took friends out to lunch in it. I accelerated outrageously and cornered hard (I <heart> freeway on-ramps). I showed them the frunk (front trunk). They oooh’d and aaaah’d over the utterly ridiculous retracting door handles. We talked about the car always having a full tank when it leaves the house. They played with the sunroof. I showed them the adorable key (vroom, vrooom!).

In showing them the sweetness of the car, I somehow realized I’d fallen for the Tesla.

It’s name is Electron.

C says it is too dirty for a photo shoot, I’ll just take a picture I’ve been thinking about for awhile…

 

Let's take a look at what's under the hood...

Let’s take a look at what’s under the hood…

Hey! This car is puppy powered!

Hey! This car is puppy powered!

Does anyone have 30-60 hamsters I can borrow? I think that will be even funnier.