|2000 Code Night (FPGA cipher cracking)|
|1930 - meetup|
|1900 Code Night (x86 asm)|
|1900 Code Night (cracking a OpenCL)|
A North Paw is an anklet that tells the wearer which way is North. The original anklet has been developed in SenseBridge, we want to build our own - cheaper, but with the same functionality! Then, we'd like to experiment with its impact on humans and their daily life, the sense of direction, etc.
The anklet has eight vibration motors around the circumference; the one that points north at the given moment vibrates regularly. The brain adapts to this new input in few days, integrating it and making use of it subconsciously. You may discover that you have perceived many spatial relationships in a distorted way, quickly find your way in unknown city, and so on.
I brought the shift register and sargon provided us some motors (thanks!). We set it up with Arduino and pasky wrote some code to control the shift register. Then we had to connect the motor to our volunteers (eh…), so I made some creature from a drinking straw and scotch tape (see photos). Good for experiments, but we have to invent something better.
After some experimenting we agreed, that we would get mad soon, if we would have continuously vibrating motor on the leg. So I made simple square/rectangle wave generator with a serial interface (it was the first time I've played with Arduino and Wiring, but Wiring is similar to C, C is similar to PHP and I know PHP a bit, so I can code in Wiring ) - see the link below. Pulses with period of ~650 ms and 1:5 duty cycle are much more comfortable than the continuous wave.
I met the plasticity of the brain (as described on North Paw website). After about a minute, when I got used on ~650 ms pulses, I tried to increase the period by ~20 ms. It was very unusual feeling, like the time slows down…
We found out, that calf was more sensible than shin. So it would be good, if brmpaw would have configuration of PWM strength of every motor in EEPROM and maybe some serial interface for set up.
On my way home, I jumped into the wrong way subway. Some absolute direction sensor like this would be really useful .
I met Michal on the Academy of science talk (see their website, some of them are really worth visiting). After some general discussion on brmlab and other experiments, I got a nice idea: BrmPaw user will be able to measure time very precisely. If we set the period to some rough fractions of second (such as 1/2, 2/3, 3/4 or 1, or 120, 90, 80 or 60 1/min), it would be easy to recalculate the measured pulse count to seconds.
Firmware draft (not tested as I don't have required equipment at home)
Untested draft didn't work, I had a mistake in bit shift in packet generation. Corrected in brmlab, see here.
Configuration is now fully settable over serial and stored in EEPROM. Fade out has been implemented in case the heading does not change for certain period of time. The code has been also cleaned up. sketch
Finally, compass is working! I performed some tests on volunteers (me, Michal, ATA) + we had some discussion on signal modulation. Firmware is here. Unhopefully it contains bug in keyboard control mode. Changing period and duty cycle doesn't work. Will be investigated and fixed Friday. TODO: I2C console, better documentation of serial interface (!!!)
BROKEN Firmware with some minor fixes, documentation and cool warning .
ATmega168 working on breadboard. Fixed out-of-memory issue. Schematics done, work on PCB design in progress. Firmware 1.0
PCB done (you can download it here). Everything seems working. Now we have to do some hardware design.
First working prototype! No, this is not april fool . Check photos. TODO: better battery fixation (with velcro sticker, which is not really easy to buy in Prague) and calibration. And maybe shrink tubing (cz: smrštitelná bužírka).
External control API.