More on the Mathematics of Sex Toys

I’ve been posting a bit about the Tormentor, a sex toy I’m designing for the sole and nefarious purpose of not letting the user get off. Quick recap in case you haven’t seen the project so far: it’s a vibrator connected to a programmable microcontroller that’s programmed to run the vibrator in random patterns for random lengths of time with random pauses in between, to keep the wearer sexually aroused but without being q-u-i-t-e enough to allow the wearer to come.

Because, yeah, I’m kind of a bastard.

My sweetie lapis_lazuli beta tested the first standalone prototype, the Tormentor version 0.2, and the biggest problem that arose was that the deice was just too damn bulky.

Part of this was the fault of using a 9V battery to run the microcontroller, but part of t was the fact that the Arduino Uno board I’m using is just plain big.

I mentioned this problem to roadknight last time I was in San Francisco, seeing how he’s also a micorocontroller hacker and general mad scientist. He suggested that I use a Teensy USB board in place of the Arduino, and even gave me a spare that he happened to have handy.

The name doesn’t lie.

Size comparison, top to bottom: 9-week-old Tonkinese kitten, Arduino Uno, Teensy USB

The Teensy is certainly that; it was the second-smallest programmable microcontroller in his collection. (The first was an obscure Chinese something something on a flexible board, about the height of a grain of rice and three times that long.)

I’ve started looking into building the Tormentor version 0.3 around a Teensy. It’ll take a bit of work; the Teensy lacks an on-board voltage regulator, for instance. I’m thinking of using a 6.3v lithium battery to drive both the Teensy and the sex toy; I’ll have to cobble together a recharge/regulator circuit of some sort, but it should let me get the finished gadget very, very small indeed.

The Teensy people don’t understand something that Apple does: User experience matters. The Teensy board is unlikely ever to knock over the Arduino as the reigning champ of DIY microcontrollers, even though the Teensy is smaller and has better technical specifications, because the user experience when it comes to programming a Teensy is, to put it bluntly, abysmal.

You don’t get no Arduino-style all-in-one IDE and device programmer, where you can type code into a window and press a button and bam! The device is working! Oh, no. The Teensy requires you to install a gcc compiler, then type your code in a text editor, run it through gcc with make, and then load the resulting hex file onto the board with a loader program. It’s archaic and barbaric, and it brings back memories of my Programming 101 class in college, in which I wrote 8080 assembly on a CDC Cyber 760 mainframe, compiled it to a hax hex file, copied it onto a floppy disk, then ran it on a CP/M machine using a hex loader.

Someone, please kill me now.

There is, though, an Arduino IDE plugin for the Teensy, and though it’s a bit weird and doesn’t run all Arduino code, it looks like it should work for me.