[{"data":1,"prerenderedAt":284},["ShallowReactive",2],{"i-lucide:menu":3,"i-lucide:arrow-up-right":8,"i-lucide:moon":10,"i-lucide:sun":12,"i-lucide:rss":14,"i-simple-icons:github":16,"i-simple-icons:linkedin":18,"post-\u002F2013\u002Fteensy-moonica-the-8-legged-gift-for-a-developer":21,"surround-\u002F2013\u002Fteensy-moonica-the-8-legged-gift-for-a-developer":271,"i-lucide:arrow-left":280,"i-lucide:arrow-right":282},{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":7},0,24,false,"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 5h16M4 12h16M4 19h16\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":9},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M7 7h10v10M7 17L17 7\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":11},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":13},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Ccircle cx=\"12\" cy=\"12\" r=\"4\"\u002F>\u003Cpath d=\"M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41\"\u002F>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":15},"\u003Cg fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\">\u003Cpath d=\"M4 11a9 9 0 0 1 9 9M4 4a16 16 0 0 1 16 16\"\u002F>\u003Ccircle cx=\"5\" cy=\"19\" r=\"1\"\u002F>\u003C\u002Fg>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":17},"\u003Cpath fill=\"currentColor\" d=\"M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":19,"hidden":20},"\u003Cpath fill=\"currentColor\" d=\"M20.447 20.452h-3.554v-5.569c0-1.328-.027-3.037-1.852-3.037c-1.853 0-2.136 1.445-2.136 2.939v5.667H9.351V9h3.414v1.561h.046c.477-.9 1.637-1.85 3.37-1.85c3.601 0 4.267 2.37 4.267 5.455v6.286zM5.337 7.433a2.06 2.06 0 0 1-2.063-2.065a2.064 2.064 0 1 1 2.063 2.065m1.782 13.019H3.555V9h3.564zM22.225 0H1.771C.792 0 0 .774 0 1.729v20.542C0 23.227.792 24 1.771 24h20.451C23.2 24 24 23.227 24 22.271V1.729C24 .774 23.2 0 22.222 0z\"\u002F>",true,{"id":22,"title":23,"body":24,"category":244,"comments":245,"date":251,"description":252,"excerpt":253,"extension":254,"image":253,"meta":255,"navigation":20,"path":256,"readingTime":257,"seo":258,"stem":259,"subtitle":253,"tags":260,"wordCount":269,"__hash__":270},"posts\u002F2013\u002Fteensy-moonica-the-8-legged-gift-for-a-developer.md","Teensy Moonica, The 8-Legged Gift for A Developer",{"type":25,"value":26,"toc":237},"minimark",[27,47,60,65,68,71,78,81,84,89,132,136,156,160,166,169,177,181,184,188,191,197,200,207,211],[28,29,30,31,36,37,41,42,46],"p",{},"A ",[32,33,35],"a",{"href":34},"http:\u002F\u002Fwaher.net","good friend of mine"," had a birthday coming up and I found myself socially obligated to do something about that. The idea - use my skills as a developer to ",[32,38,40],{"href":39},"http:\u002F\u002Fmakershed.com","MAKE"," something developer-ish. This was a collaborative project with ",[32,43,45],{"href":44},"http:\u002F\u002Fsokeri.org\u002F","Valeria",".",[48,49,50],"blockquote",{},[28,51,52,53,56],{},"I buy more things than I make. I used to think it was a sign of some kind of capitalistic progress to be able to buy food and gifts instead of making them myself, but I’m not sure anymore. When it comes to difference making there is a different trend line. Money can come and go, but my time on this planet is finite. How I spend my time, or who I spend it with means more than anything else in my universe. From at least the selfish view, giving my time is the most valuable gift I can give.",[54,55],"br",{},[32,57,59],{"href":58},"http:\u002F\u002Fscottberkun.com\u002Fessays\u002F49-how-to-make-a-difference\u002F","Scott Berkun, essay #49 - How to make a difference",[61,62,64],"h1",{"id":63},"idea","Idea",[28,66,67],{},"Build hardware that can interface with a computer (via the USB port) and send input commands to the PC that can be detected and processed. As a bonus, include output devices such as LED-s that could be activated from code.",[28,69,70],{},"The idea came from the fact that I found myself typing PHPUnit commands for different test suites manually way too often. Wouldn't it be great to activate a test suite with a press of a button and have a green LED light up when everything is done? (or a red on in case of a failure). \"Normal\" people would go \"???\" about this, but trust me, for a developer, this is good stuff.",[28,72,73],{},[74,75],"img",{"alt":76,"src":77},"UI draft","\u002Fcontent\u002F2013\u002F06\u002Fui-draft.jpg",[28,79,80],{},"I came up with a rectangular-shaped control panel. Really fancy stuff, like you see in sci-fi movies or airplanes. Excited, I got in touch with a mutual friend who also happens to be a designer. A brainstorming session and a couple of hours later and the original idea had been morphed into a much cuddlier version - a USB soft toy.",[28,82,83],{},"The toy would be an octopus with eight legs, each leg would act as a switch. I was to build the electronics innards while she'd do the sewing part.",[85,86,88],"h2",{"id":87},"parts","Parts",[90,91,92,99,105,108,114,117,120,123,129],"ul",{},[93,94,95],"li",{},[32,96,98],{"href":97},"http:\u002F\u002Fwww.pjrc.com\u002Fteensy\u002Findex.html","Teensy 2.0 Microcontroller (with pins)",[93,100,101],{},[32,102,104],{"href":103},"http:\u002F\u002Fuk.farnell.com\u002Fte-connectivity-amp\u002F1-215297-6\u002Fsocket-vertical-1row-16way\u002Fdp\u002F3419174?Ntt=1-215297-6","1-215297-6 Socket",[93,106,107],{},"2x RGB LED",[93,109,110],{},[32,111,113],{"href":112},"http:\u002F\u002Fwww.adafruit.com\u002Fproducts\u002F1010","8x pushbuttons",[93,115,116],{},"1x Piezo Buzzer",[93,118,119],{},"6x 960R resistors for the LED-s",[93,121,122],{},"Some wire for connecting the components",[93,124,125],{},[32,126,128],{"href":127},"http:\u002F\u002Fwww.oomipood.ee\u002Fen\u002Fproduct\u002Fcable-161\u002Fcable-161-usb-2-0-cable-a-male-mini-usb","Mini USB cable for the Teensy",[93,130,131],{},"Heat-shrink tubing in different sizes",[85,133,135],{"id":134},"tools","Tools",[90,137,138,141,144,147,150,153],{},[93,139,140],{},"Adjustable temperature soldering iron and solder, solder paste",[93,142,143],{},"Hot air gun for the heat shrink",[93,145,146],{},"Wire-handling tools: pliers, strippers, clippers",[93,148,149],{},"Digital multimeter",[93,151,152],{},"Breadboard and jumpers for prototyping",[93,154,155],{},"Helping Hands",[61,157,159],{"id":158},"the-build","The Build",[28,161,162],{},[74,163],{"alt":164,"src":165},"Breadboard","\u002Fcontent\u002F2013\u002F06\u002Fbuild.jpg",[28,167,168],{},"Prototyping was quite fast. This was my first bigger build and I had to figure out how to use PWM to control the buzzer and LED brightness. In no time at all, the circuit was assembled on my breadboard. I used the equipment of the robotics lab of EIK to assemble and solder the circuit.",[28,170,171,172,176],{},"Software was a bit trickier. A lot of hours went into refactoring and documentation. The most complex part was serial communication. Initially, I tried to be verbose, sending button events as long strings (\"Button 1 pressed\") and parsing the string in Python. Then I saw ",[32,173,175],{"href":174},"http:\u002F\u002Fwww.youtube.com\u002Fwatch?v=Cy9MIoG5z4s","Saying a Lot with Very Little (Arduino Digital Input to Python"," and refactored the code to send all button states as one byte - much more efficient way of communication.",[85,178,180],{"id":179},"oops","Oops!",[28,182,183],{},"We - me and Val - had hacking evenings on several occasions. During the last one, an accident happened. It turns out that the contacts of microswitches are actually quite fragile (go figure) and do not like to be abused. I managed to break one of the already assembled switches which meant no joy for that evening. All of the switches needed replacement by a stronger version (and also where the solder connections were made at a correct angle to begin with). Adafruit's tactile square buttons fit the build and replaced the less durable buttons.",[61,185,187],{"id":186},"finale","Finale",[28,189,190],{},"Moonica - the name of our animal - was stuffed and wrapped and given to the birthday boy (although by the time the project was finished the actual birthday was two months into the past).",[28,192,193],{},[74,194],{"alt":195,"src":196},"Moonica","\u002Fcontent\u002F2013\u002F06\u002Fmoonica.jpg",[28,198,199],{},"The project was great fun to do and also taught us a lot. I got into electronics in January 2013 and this was the first \"official\", non-prototype build. I learned to program in C \u002F Arduino, got to try out PWM and implement serial interfacing.",[201,202],"iframe",{"width":203,"height":204,"src":205,"frameBorder":206,"allowFullScreen":20},560,315,"https:\u002F\u002Fwww.youtube-nocookie.com\u002Fembed\u002Fa_wgeVvpjbw","0",[61,208,210],{"id":209},"links","Links",[90,212,213,219,225,231],{},[93,214,215],{},[32,216,218],{"href":217},"https:\u002F\u002Fplus.google.com\u002Fphotos\u002F110367256187822089038\u002Falbums\u002F5889699940176485425","Build photos",[93,220,221],{},[32,222,224],{"href":223},"http:\u002F\u002Fwww.youtube.com\u002Fwatch?v=a_wgeVvpjbw&feature=youtu.be","Project video on YouTube",[93,226,227],{},[32,228,230],{"href":229},"https:\u002F\u002Fwww.circuitlab.com\u002Fcircuit\u002Fs6dr46\u002Fteensy-moonica\u002F","Schematic",[93,232,233],{},[32,234,236],{"href":235},"https:\u002F\u002Fgithub.com\u002Fanroots\u002Fteensy-moonica","Source code",{"title":238,"searchDepth":239,"depth":239,"links":240},"",2,[241,242,243],{"id":87,"depth":239,"text":88},{"id":134,"depth":239,"text":135},{"id":179,"depth":239,"text":180},"Projects",[246],{"id":247,"author":248,"author_url":238,"date":249,"content":250},2687,"Katrin","2013-06-17 12:39:02 +0300","Übernunnu!\r\n\r\nIt looks really adorable and I'm pretty sure it can be a very useful tool also for IT system administrators... So good work and I hope that Moonica has won the heart of its new owner and of course the heart of other octopus-electronics-lovers! :) \r\n\r\nAnd a little message from the EIK robotics club (HAL vol 2):\"We hope to see you here again with your new cool projects as well! :)\"","2013-06-17","A good friend of mine had a birthday coming up and I found myself socially obligated to do something about that. The idea - use my skills as a developer to MAKE something developer-ish. This was a collaborative project with Valeria.",null,"md",{},"\u002F2013\u002Fteensy-moonica-the-8-legged-gift-for-a-developer","about 4 minutes",{"title":23,"description":252},"2013\u002Fteensy-moonica-the-8-legged-gift-for-a-developer",[261,262,263,264,265,266,267,268],"python","c#","project","electronics","circuit","teensy","microcontroller","usb",775,"vOFTUZvTZTfWXZ0aUGEcB7nSaC06BWneM9NUYTbRavQ",[272,276],{"title":273,"path":274,"stem":275,"children":-1},"A Week Of Joy And Laughter: FIIF 2013","\u002F2013\u002Fa-week-of-joy-and-laughter-fiif-2013","2013\u002Fa-week-of-joy-and-laughter-fiif-2013",{"title":277,"path":278,"stem":279,"children":-1},"3 Reasons Why One-Off Projects Become Your Dirty Little Secret","\u002F2013\u002F3-reasons-why-one-off-projects-become-your-dirty-little-secret","2013\u002F3-reasons-why-one-off-projects-become-your-dirty-little-secret",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":281},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m12 19l-7-7l7-7m7 7H5\"\u002F>",{"left":4,"top":4,"width":5,"height":5,"rotate":4,"vFlip":6,"hFlip":6,"body":283},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M5 12h14m-7-7l7 7l-7 7\"\u002F>",1790886933643]