<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-272856919762973504</id><updated>2024-09-01T21:32:43.721-07:00</updated><category term="Arduino Processing LabVIEW"/><category term="ARM"/><category term="LCD"/><category term="Maple"/><category term="display"/><title type='text'>Hacking Electronics</title><subtitle type='html'>A blog describing my personal experience with the world of electronics hacking.&#xa;&#xa;You&#39;ll find Arduino stuff, FPGA and VHDL coding and other sorts of hardware and software hacking here. I will try to focus on simple machine vision and image processing!!</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>9</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-272856919762973504.post-6786767598103565681</id><published>2012-10-16T13:08:00.003-07:00</published><updated>2012-10-16T13:09:08.715-07:00</updated><title type='text'>Recent changes</title><content type='html'>So it has been ages since I last wrote on this blog... ages as in time, distance and multiple other parameters. I even changed my location from sunny California to freezing Netherlands... but well you do what you have to do. I will not comment about those kind of changes. So now I am living in &lt;a href=&quot;https://maps.google.nl/maps?oe=utf-8&amp;amp;client=firefox-a&amp;amp;q=eindhoven&amp;amp;ie=UTF-8&amp;amp;hq=&amp;amp;hnear=0x47c6d91b5579c39f:0xf39ad2648164b998,Eindhoven&amp;amp;gl=nl&amp;amp;ei=1Lx9UPb9JKKn0QWc9IHABw&amp;amp;ved=0CIsBELYD&quot;&gt;Eindhoven&lt;/a&gt;, a little (200K people) town in the south of Holland (yep, back in old Europe!!). If you know a little bit about Eindhoven you will know the following facts&lt;br /&gt;
- It is the &lt;a href=&quot;https://www.intelligentcommunity.org/index.php?src=news&amp;amp;srctype=detail&amp;amp;category=Press%20Coverage%202011&amp;amp;refno=634&quot;&gt;smartest region in the world in 2011&lt;/a&gt;. Hopefully it will remain this way after my arrival :-).&lt;br /&gt;
- More than 50% of the patents in the Netherlands come from this city&lt;br /&gt;
- Most of the people are engineers&lt;br /&gt;
- Most of the engineers work for either Philips or ASML. I do not work for neither of them, at least directly.&lt;br /&gt;
- It is 2h by plane from my hometown (instead of the 18 hours of California).&lt;br /&gt;
&lt;br /&gt;
Other than the distance, the time zone, and the weather, I also changed jobs and started working with Microcontrollers!!! Well working as in working full time on a paid job as a firmware engineer.&lt;br /&gt;
For the first time I got in contact with the famous and popular MSP430 (90% of my daily job for the last 6 months is coding for MSP430s) and its tool chain through IAR. So far I cannot complain much (compared to PICs and ATMELs through arduino).&lt;br /&gt;
&lt;br /&gt;
So far, as I was saying I have not been fully satisfied with the toolchain for the MSP430 as it is somewhat clunky and it crashes often. I have to admit I am not careful enough to stop debugging before unplugging the JTAG, and that kind of stuff.... but anyway... it is always good to get in touch with different hardware.&lt;br /&gt;
&lt;br /&gt;
Although I would not like to talk much about my professional 
life, let&#39;s say I work on firmware for medical devices in the wireless 
sensing arena. &lt;br /&gt;
&lt;br /&gt;
On another side note I just noticed it has been more than a year since I wrote in this blog about the&lt;a href=&quot;http://hackingelectronics.blogspot.nl/2011/09/memory-imaging-and-arduino.html&quot;&gt; Arduino DUE&lt;/a&gt; and its ARM core. Well still waiting, and apparently it is not even close. Of course the new era of Raspberry Pi&#39;s is already here (still did not quite get one for testing). Anyway several interesting things happening on the embedded world and it is almost impossible to keep track of them.&lt;br /&gt;
&lt;br /&gt;
Other than that, the IndieGoGo campaign did not work, my son is growing like crazy (starting to speak in dutch alredy), it is the year I had more vacations in my after-school life (Hawaii and a lot of Spain) and I hate bureaucracy more and more every day!! Unfortunately, also, I had to add some ads to the blog to help me support&lt;a href=&quot;http://www.mosaicyourself.com/&quot;&gt; my side business&lt;/a&gt;... because now that I moved out of the US, it sort of needs a revival campaign. &lt;br /&gt;
&lt;br /&gt;
Write to you real soon!!</content><link rel='replies' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/6786767598103565681/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hackingelectronics.blogspot.com/2012/10/recent-changes.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/6786767598103565681'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/6786767598103565681'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/2012/10/recent-changes.html' title='Recent changes'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-272856919762973504.post-3101726206000080410</id><published>2012-01-07T12:57:00.000-08:00</published><updated>2012-01-07T12:57:11.912-08:00</updated><title type='text'>First IndieGoGo Campaign</title><content type='html'>Hi all,&lt;br /&gt;
&lt;br /&gt;
this post is again something that has very little to do with electronics, but a lot to do with my &#39;other&#39; hobbie which recently turned into a business: &lt;a href=&quot;http://www,mosaicyourself.com/&quot;&gt;MosaicYourself&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
Particularly in this post I want to gather as much attention as possible because we just launched &lt;a href=&quot;http://igg.me/p/55093?a=373324&quot;&gt;our first ever crowd funding campaign through IndieGoGo&lt;/a&gt;. &lt;br /&gt;
&lt;br /&gt;
Why do we need funding? Well we believe that there is a lot of people that can use and benefit from the design services of MosaicYourself but &lt;b&gt;it is hard for us to reach them&lt;/b&gt;. Not only individuals but specially groups who can be part of an awesome artwork that connects people.&lt;br /&gt;
&lt;br /&gt;
We obviously want to meet our objective ($5500) but in the process we will offer great perks such as&lt;br /&gt;
&lt;br /&gt;
- Having your face in a mosaic&lt;br /&gt;
-Getting printouts, posters and big posters of the funding mosaic (where you will be a tile)&lt;br /&gt;
- T-Shirts&lt;br /&gt;
-Discounts&lt;br /&gt;
- Having your face show up in our banner&lt;br /&gt;
&lt;br /&gt;
And other interesting perks.&lt;br /&gt;
&lt;br /&gt;
Check us out in the link below!!!&lt;br /&gt;
&lt;br /&gt;
&lt;iframe frameborder=&quot;1&quot; height=&quot;400px&quot; scrolling=&quot;no&quot; src=&quot;http://www.indiegogo.com/project/widget/55093?a=342628&quot; width=&quot;210px&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Thanks for contributing!!</content><link rel='replies' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/3101726206000080410/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hackingelectronics.blogspot.com/2012/01/first-indiegogo-campaign.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/3101726206000080410'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/3101726206000080410'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/2012/01/first-indiegogo-campaign.html' title='First IndieGoGo Campaign'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-272856919762973504.post-2308558618552709312</id><published>2011-12-08T11:26:00.000-08:00</published><updated>2011-12-08T11:26:36.821-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Arduino Processing LabVIEW"/><category scheme="http://www.blogger.com/atom/ns#" term="ARM"/><category scheme="http://www.blogger.com/atom/ns#" term="display"/><category scheme="http://www.blogger.com/atom/ns#" term="LCD"/><category scheme="http://www.blogger.com/atom/ns#" term="Maple"/><title type='text'>Embedded display is getting easier and more affordable !!!</title><content type='html'>This post will be kind of short, but I wanted to share my excitement for a recent video I saw on the &lt;a href=&quot;http://leaflabs.com/devices/maple/&quot;&gt;Maple from&amp;nbsp; Leaflabs&lt;/a&gt;, although it is particularly the Itead version of the opensource board, called &lt;a href=&quot;http://iteadstudio.com/store/index.php?main_page=product_info&amp;amp;cPath=50_53&amp;amp;products_id=472&amp;amp;zenid=53ngersrgpnevu55j4nu91k8b1&quot;&gt;Iteadmaple&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
TKJ Electronics got one of the Iteadleaf boards and ported libraries to control a simple LCD display (&lt;a href=&quot;http://iteadstudio.com/store/index.php?main_page=product_info&amp;amp;cPath=18&amp;amp;products_id=473&quot;&gt;2.4&quot; SPI display for $25&lt;/a&gt; is a pretty good deal) with the Iteadmaple.&lt;br /&gt;
&lt;br /&gt;
The video below is the result, scroll to 8:00 minute to see the demo on the Maple.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;iframe allowfullscreen=&#39;allowfullscreen&#39; webkitallowfullscreen=&#39;webkitallowfullscreen&#39; mozallowfullscreen=&#39;mozallowfullscreen&#39; width=&#39;320&#39; height=&#39;266&#39; src=&#39;https://www.youtube.com/embed/45REQYLyjMg?feature=player_embedded&#39; frameborder=&#39;0&#39;&gt;&lt;/iframe&gt;&lt;/div&gt;&lt;br /&gt;
As you can see it is pretty impressive. The sine wave generation is pretty cool and super fast to update.&lt;br /&gt;
&lt;br /&gt;
Given that the cost of the two components does not exceed $60 it is a pretty good deal to do easy user interfaces for embedded systems.&lt;br /&gt;
&lt;br /&gt;
I am looking forward to getting a hand on the ported libraries (TKJ mentions he is going to release them soon after a few rounds of reviews) to start working on my next little project!!!&lt;br /&gt;
&lt;br /&gt;
I am also interested in getting imaging working on that maple board because it looks like it is much more powerful and as easy to code as the Arduino.&lt;br /&gt;
&lt;br /&gt;
Some notes and after thoughts&lt;br /&gt;
&lt;br /&gt;
a) The only drawback of the maple board is that it outputs 3.3V (good for the screen as it takes that voltage).&lt;br /&gt;
b) I know it is kind of ugly that china and Itead are selling LeafLab&#39;s boards for cheaper than themselves, but I guess that is something inherent from the OpenSource industry. Kudos for LeafLabs, but unfortunately most of the people will rather pay $15 less and get a clone. Less than $35 for an ARM board is a pretty good deal.&lt;br /&gt;
c) Arduino DUE should better hurry. Timing is key (they should know better than anybody else) and maybe by the time Arduino DUE is released and it is stable, most of us are already on board the Maple ship!!&lt;br /&gt;
&lt;br /&gt;
I thought that was worth sharing for all the electronics hobbyists!!!&lt;br /&gt;
&lt;br /&gt;
Let me know your thoughts.</content><link rel='replies' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/2308558618552709312/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hackingelectronics.blogspot.com/2011/12/embedded-display-is-getting-easier-and.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/2308558618552709312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/2308558618552709312'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/2011/12/embedded-display-is-getting-easier-and.html' title='Embedded display is getting easier and more affordable !!!'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-272856919762973504.post-7762421932810644743</id><published>2011-11-02T23:27:00.000-07:00</published><updated>2011-11-02T23:27:20.507-07:00</updated><title type='text'>The Human side of Arduino</title><content type='html'>As I mentioned in previous postings I have been pretty busy keeping up with my life. Why? Usual suspects: work, family and hobbies. I am proud to announce though that I somehow (together with my wife) managed to gave it a shot to the making a business out of one of my hobbies.&lt;br /&gt;
&lt;br /&gt;
Unfortunately the hobby I am talking about is not the one all the readers of this blog are aware of (Electronics) but building face photomosaics. What? yes Face photomosaics. And what are those, well keep reading to find out.&lt;br /&gt;
&lt;br /&gt;
We recently started &lt;a href=&quot;http://www.mosaicyourself.com/&quot;&gt;MosaicYourself &lt;/a&gt;an online based service that makes mosaics. You will say, but there are already services out there making mosaics. Yes but at MosaicYourself we make &lt;b&gt;Face Photomosaics&lt;/b&gt;. That is mosaics where the tiles are faces.&lt;br /&gt;
&lt;br /&gt;
Why faces? Well pretty easy, because faces are recognizable even if they are small, and based on our experience faces are small enough to be tiles of a mosaic but big enough to be something recognizable that gives it a personalized appearance.&lt;br /&gt;
&lt;br /&gt;
Well cut the talk and let&#39;s get to the point. I thought that in order to somehow make a tribute to the Arduino&amp;nbsp; and takin advantage of the LinkedIn option of MosaicYourself, we generated the mosaic we call &lt;b&gt;THE FACES OF ARDUINO&lt;/b&gt;.&lt;br /&gt;
&lt;br /&gt;
This mosaic (see below) depicts the popular microcontroller as a base images and it features the faces from the people at the &lt;a href=&quot;http://www.linkedin.com/groups/Arduino-Playground-1268377&quot;&gt;Arduino Playground group on LinkedIn&lt;/a&gt; as tiles.&lt;br /&gt;
&lt;br /&gt;
The picture below does not show enough detail to appreciate the details of the tiles, follow&lt;a href=&quot;http://www.mosaicyourself.com/ArduinoFaces&quot;&gt; this link to see the picture in the website with a mouse drag enabled zoom to see the details&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;http://www.mosaicyourself.com/sites/default/files/styles/mosaiczoomin/public/arduino171-40.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;221&quot; src=&quot;http://www.mosaicyourself.com/sites/default/files/styles/mosaiczoomin/public/arduino171-40.jpg&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;br /&gt;
There are exactly 171 different faces and chances are that if you are a member of this group, you have a profile picture and our face detector likes it, you might be part of the picture!!&lt;br /&gt;
&lt;br /&gt;
But that is not all, because in order to use the double effect of the mosaic (detail vs overall picture), at MosaicYourself we also offer zoomout videos like the one below, where we go from detail to full picture to have a better effect.&lt;br /&gt;
&lt;br /&gt;
The zoom-out video example below is also a picture of the Arduino we used from &lt;a href=&quot;http://www.danielandrade.net/2011/09/07/arduino-in-highdef-macro-pictures/&quot;&gt;Daniel Andrade&#39;s HD pictures&lt;/a&gt; from the Arduino. This particular mosaic contains 190 faces from the same group on LinkedIn, so if you did not find yourself in the last mosaic, you might in this one!! (See links below). See the &lt;a href=&quot;http://www.mosaicyourself.com/ArduinoMacro&quot;&gt;mosaic with zoom tool here&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;iframe allowfullscreen=&quot;&quot; frameborder=&quot;0&quot; height=&quot;360&quot; src=&quot;http://www.youtube.com/embed/jB7S0oAs3fM?rel=0&amp;amp;hd=1&quot; width=&quot;480&quot;&gt;&lt;/iframe&gt;&lt;br /&gt;
&lt;br /&gt;
So hopefully you like the concept and want MosaicYourself to use your picture library to extract faces and build a nice mosaic for you. Or maybe use the faces of your LinkedIn contacts to make the logo of your company.&lt;br /&gt;
&lt;br /&gt;
If you are interested we make the business by selling the printouts (or file versions) of the mosaics, so you can purchase any of those two Arduino mosaics at our store, or directly from the links below&lt;br /&gt;
- Purchase the &lt;a href=&quot;http://www.mosaicyourself.com/ArduinoPrintout1&quot;&gt;Faces of Arduino mosaic in a poster&lt;/a&gt;&lt;br /&gt;
- Purchase the &lt;a href=&quot;http://www.mosaicyourself.com/ArduinoPrintout2&quot;&gt;Arduino Macro mosaic in a poster&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
If you are interested in the details of the Arduino mosaics follow these links&lt;br /&gt;
&lt;a href=&quot;http://www.mosaicyourself.com/ArduinoFaces&quot;&gt;www.mosaicyourself.com/ArduinoFaces&lt;/a&gt;&lt;br /&gt;
&lt;a href=&quot;http://www.mosaicyourself.com/ArduinoMacro&quot;&gt;www.mosaicyourself.com/ArduinoMacro&lt;/a&gt;&lt;br /&gt;
&lt;br /&gt;
If you liked it (purchase from us) Like us on Facebook!!&lt;br /&gt;
&lt;br /&gt;
&lt;div id=&quot;fb-root&quot;&gt;&lt;/div&gt;&lt;script&gt;
(function(d, s, id) {
  var js, fjs = d.getElementsByTagName(s)[0];
  if (d.getElementById(id)) {return;}
  js = d.createElement(s); js.id = id;
  js.src = &quot;//connect.facebook.net/en_US/all.js#xfbml=1&quot;;
  fjs.parentNode.insertBefore(js, fjs);
}(document, &#39;script&#39;, &#39;facebook-jssdk&#39;));
&lt;/script&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;fb-like&quot; data-href=&quot;http://www.facebook.com/pages/MosaicYourself/132214350212250&quot; data-send=&quot;true&quot; data-show-faces=&quot;true&quot; data-width=&quot;1000&quot;&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/7762421932810644743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hackingelectronics.blogspot.com/2011/11/human-side-of-arduino.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/7762421932810644743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/7762421932810644743'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/2011/11/human-side-of-arduino.html' title='The Human side of Arduino'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://img.youtube.com/vi/jB7S0oAs3fM/default.jpg" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-272856919762973504.post-7421632171736960552</id><published>2011-09-19T13:34:00.000-07:00</published><updated>2011-09-19T13:34:24.582-07:00</updated><title type='text'>Memory, Imaging and Arduino</title><content type='html'>Hi All,&lt;br /&gt;
&lt;br /&gt;
I am not sure at this point if anybody will be looking at the blog now that I am not showing anything interesting or documenting any project. Unluckily I did not have time to hack around with my electronics for several reasons.&lt;br /&gt;
&lt;br /&gt;
My main reasons are work (as everybody&#39;s), family (I just have a kid that is going to turn 9 months in a couple weeks) and the start of my new little business of making mosaics out of people&#39;s pictures, using faces as tiles. Check it out under &lt;a href=&quot;http://www.mosaicyourself.com/&quot;&gt;www.mosaicyourself.com&lt;/a&gt; , still working on the website but I do not seem to have time to keep up with Drupal, php and being webmaster.&lt;br /&gt;
&lt;br /&gt;
Anyway, other than apologizing for not posting for the last couple of months, I wanted to highlight some of the events that have huge impact in the Electronics Hardware Hacking world (if you read this blog you are probably already aware of those anyway). Specially to what I am interested&lt;br /&gt;
&lt;br /&gt;
a) &lt;a href=&quot;http://arduino.cc/blog/2011/09/17/arduino-launches-new-products-in-maker-faire/&quot;&gt;Arduino goes ARM - ARDUINO DUE&lt;/a&gt;&lt;br /&gt;
That is great! I am really excited about this. I have been looking for a more powerful Arduino for a while, specially for imaging purposes in a small and affordable platform. Having Arduino in a faster form factor will allow us to do image acquisition. The chip powering the Arduino Due (SAM3U from Atmel) counts with 96MHz with 256Kb of Flash, 50Kb of Sram, 5 SPI buses, 2 I2C interfaces, 5 UARTS, 16 Analog Inputs at 12Bit.&lt;br /&gt;
As you all know &lt;a href=&quot;http://hackingelectronics.blogspot.com/2011/06/acquiring-images-from-analog-camera.html&quot;&gt;Imaging on the Arduino&lt;/a&gt; requires a lot of memory (128*96/8 bytes). Now with 50KB we can even hold a color image!! &lt;br /&gt;
A couple of comments on this&lt;br /&gt;
- That might screw the plans from &lt;a href=&quot;http://leaflabs.com/devices/maple/&quot;&gt;LeafLabs &lt;/a&gt;which I closely followed. I consider using them for my image procesing platform. Now (sorry guys) I will provably wait for the efford by Arduino.&lt;br /&gt;
- I am not sure how the programming interface will be on the Due but it potentially means that some of the shields will not be (fully or at all) compatibles. Also forget about assembly coding and restart with a new device, so the shields relying on that, such as the Video Experimenter Shield will not be compatible.&lt;br /&gt;
&lt;br /&gt;
b) Memory expansion for the Arduino&lt;br /&gt;
Two different approaches recently came up at &lt;a href=&quot;http://hackaday.com/&quot;&gt;hackaday &lt;/a&gt;to extend the memory on the Arduino. I wanted to give my particular point of view on those and how do they relate to the little &lt;a href=&quot;http://hackingelectronics.blogspot.com/2011/06/acquiring-images-from-analog-camera.html&quot;&gt;imaging project I did on the Arduino&lt;/a&gt;.&lt;br /&gt;
- &lt;a href=&quot;http://andybrown.me.uk/ws/2011/08/28/512kb-sram-expansion-for-the-arduino-mega-design/&quot;&gt;Expanding the RAM on Arduino Mega&lt;/a&gt; - Unluckily this approach is not going to help much in our case as the Video Experimenter Shield, as mentioned in my blog post, is not compatible with Mega. Hackaday suggested using that expansion for image acquisition (thanks for the quote), but unfortunately that is not possible.&lt;br /&gt;
- &lt;a href=&quot;http://majolsurf.net/wordpress/?page_id=368&quot;&gt;Using a CPLD to get more memory&lt;/a&gt; - I am sorry to say but it looks like an overkill to use programmable logic to expand the memory of Arduino. I personally think I could code the CPLD with no Arduino anyway to get my image processing platform. It is versatile but I do not believe is a good solution (anybody could say that Arduino is simply not meant for image processing, I sort of agree but, still want to pull it!!). This leads to my next point:&lt;br /&gt;
&lt;br /&gt;
c) Getting an Arduino-like platform on FPGA&lt;br /&gt;
That is definitely something I have been looking for for a while. &lt;a href=&quot;http://leaflabs.com/devices/&quot;&gt;LeafLabs are sort of pursuing that goal with the Oak&lt;/a&gt;, I do not want to jinx it but maybe somebody comes first or a bigger platform oversteps it (like the Due). But as always it is good to push the industry, specially the open source, although sometimes the outcome is not the best.&lt;br /&gt;
A kind of neat player in this platform is the &lt;a href=&quot;http://www.xess.com/prods/prod048.php&quot;&gt;Xula Board&lt;/a&gt; by Xess. I am kind of afine to Xess as I had them as a reference in my VHDL coding for firmware on FPGAs before, so I think they are great. The Xula Board is an Open Source effort lead by Xess to solve problems microcontrollers cannot reach (wow it looks like imaging falls in that framework).&lt;br /&gt;
Other than the technical I like this Xula board because&lt;br /&gt;
- It is cheap&lt;br /&gt;
- It does not need programmer&lt;br /&gt;
- You can use free software (the Xilinx Webpack)&lt;br /&gt;
- It uses FPGAs I am already familiar with&lt;br /&gt;
&lt;br /&gt;
I also want to mention that Dave, at Xess is a great guy. I particularly like his &lt;a href=&quot;http://devbisme.webfactional.com/blogs/devbisme&quot;&gt;blog &lt;/a&gt;and the way he mixes documentation and blogging. He was supper cool to send me a Xula board for my evaluation (sorry Dave for the reasons mentioned above no time yet, but I will soon get to that, I hope!).&lt;br /&gt;
&lt;br /&gt;
This is it for my roundup. I have a couple of short term projects in mind I will try and pull out soon. I will keep you (reader) posted!!&lt;br /&gt;
&lt;u&gt;&lt;b&gt;&lt;br /&gt;
&lt;/b&gt;&lt;/u&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/7421632171736960552/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hackingelectronics.blogspot.com/2011/09/memory-imaging-and-arduino.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/7421632171736960552'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/7421632171736960552'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/2011/09/memory-imaging-and-arduino.html' title='Memory, Imaging and Arduino'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-272856919762973504.post-3159890891714600388</id><published>2011-06-10T18:53:00.000-07:00</published><updated>2011-06-10T19:18:06.488-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Arduino Processing LabVIEW"/><title type='text'>Update on Arduino imaging - Processing Sketch + Video!!!</title><content type='html'>Hi all,&lt;br /&gt;
&lt;br /&gt;
As promised in &lt;a href=&quot;http://hackingelectronics.blogspot.com/2011/06/acquiring-images-from-analog-camera.html&quot;&gt;this post&lt;/a&gt;, I am posting an update on the video acquisition for Arduino. Well so based on the &lt;a href=&quot;http://hackaday.com/2011/06/07/capturing-video-with-an-arduino/#comments&quot;&gt;constructive comments&lt;/a&gt; on the different spots this blog was highlighted, I coded a simple Processing Sketch.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Here you can see a couple of images taken from the Processing Sketch&lt;br /&gt;
&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh91WrLVYBdSlMB0Pjq2GKR-CgeOcm0I7rmDb5RbvJahnqRY6ibdeedgeXgsrdFxofmaRCcHQ16MHotSt7Hf6xpL_FQUJ8mjt4lpo3c7E6oq9LPEjNnu0PYJHn6lxDT4Qa1wZ0YxATHN6g/s1600/Carlos-Processing.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;253&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh91WrLVYBdSlMB0Pjq2GKR-CgeOcm0I7rmDb5RbvJahnqRY6ibdeedgeXgsrdFxofmaRCcHQ16MHotSt7Hf6xpL_FQUJ8mjt4lpo3c7E6oq9LPEjNnu0PYJHn6lxDT4Qa1wZ0YxATHN6g/s320/Carlos-Processing.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;Me in Processing (3 bits, 128x96 SCALE 5)&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUI_3AM5KVM6_6UBi2yh6swZcW_ihVw7c3fMgrU6yXSERGKtSlngTmNGuHjGiPctAczRCnfdgHN8UCXB6qiV_6hzzyCvo8lSX6KwZntLK4vSifHtBhO0kN1MPcL2A6DbNBUIv7Umcqovg/s1600/MM-Processing.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;253&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhUI_3AM5KVM6_6UBi2yh6swZcW_ihVw7c3fMgrU6yXSERGKtSlngTmNGuHjGiPctAczRCnfdgHN8UCXB6qiV_6hzzyCvo8lSX6KwZntLK4vSifHtBhO0kN1MPcL2A6DbNBUIv7Umcqovg/s320/MM-Processing.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;My Fluke MultiMeter in the same format&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;a href=&quot;https://webfiles.uci.edu/cagell/docs/Arduino%20-%20Image%20gathering%201-1.rar&quot;&gt;HERE YOU CAN DOWNLOAD&amp;nbsp; A COMPRESSED VERSION OF THE PACKAGE&lt;/a&gt;&lt;br /&gt;
Including Arduino, Processing and LabVIEW drivers, images and the hardware schematics&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
WARNING: It is the first code I write in Processing. So it is super inefficient.&lt;br /&gt;
&lt;br /&gt;
Keep in mind the following limitations&lt;br /&gt;
a) It takes about 8 seconds to acquire a single image.&lt;br /&gt;
b) The target of the image needs to be still, othewise each little level change will come from a different image and the result will be messed up.&lt;br /&gt;
&lt;br /&gt;
This code needs optimization in the following items&lt;br /&gt;
a) Make the arduino pack the data in bytes (it currently &lt;i&gt;wastes&lt;/i&gt; room by sending a bit per byte, but there is a story about why I do that, I&#39;ll post the solution when I get to it in the future).&lt;br /&gt;
b) Modify the processing sketch to read that format.&lt;br /&gt;
c) Currently the code acquires an image, idles for 1 second and loops. It might be wise to have some trigger event, but that is up to your application. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Video (shot with my Ipod Touch so hence the funny aspect ratio). &lt;br /&gt;
&lt;br /&gt;
&lt;object height=&quot;344&quot; width=&quot;425&quot;&gt;&lt;param name=&quot;movie&quot; value=&quot;http://www.youtube.com/v/HeqVv-U4okc?hl=en&amp;fs=1&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowFullScreen&quot; value=&quot;true&quot;&gt;&lt;/param&gt;&lt;param name=&quot;allowscriptaccess&quot; value=&quot;always&quot;&gt;&lt;/param&gt;&lt;embed src=&quot;http://www.youtube.com/v/HeqVv-U4okc?hl=en&amp;fs=1&quot; type=&quot;application/x-shockwave-flash&quot; allowscriptaccess=&quot;always&quot; allowfullscreen=&quot;true&quot; width=&quot;425&quot; height=&quot;344&quot;&gt;&lt;/embed&gt;&lt;/object&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Down the road, my plans are&lt;br /&gt;
- Making the optimizations mentioned above&lt;br /&gt;
- Trying the flash/SD temporary storage approach&lt;br /&gt;
- Others&lt;br /&gt;
&lt;br /&gt;
Leave comments if you guys do something related to this!!</content><link rel='replies' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/3159890891714600388/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hackingelectronics.blogspot.com/2011/06/update-on-arduino-imaging-processing.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/3159890891714600388'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/3159890891714600388'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/2011/06/update-on-arduino-imaging-processing.html' title='Update on Arduino imaging - Processing Sketch + Video!!!'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh91WrLVYBdSlMB0Pjq2GKR-CgeOcm0I7rmDb5RbvJahnqRY6ibdeedgeXgsrdFxofmaRCcHQ16MHotSt7Hf6xpL_FQUJ8mjt4lpo3c7E6oq9LPEjNnu0PYJHn6lxDT4Qa1wZ0YxATHN6g/s72-c/Carlos-Processing.PNG" height="72" width="72"/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-272856919762973504.post-7873813232000361200</id><published>2011-06-08T12:42:00.000-07:00</published><updated>2011-06-08T12:47:41.246-07:00</updated><title type='text'>Successful first couple of days!!!</title><content type='html'>Hey world,&lt;br /&gt;
&lt;br /&gt;
Thanks for visiting. I am personally positively surprised that my last post got so much attention. So far (less than 48 hours after) the stats are impressive:&lt;br /&gt;
&lt;br /&gt;
- More than 2500 visits to the site&lt;br /&gt;
- More than 1800 unique visitors&lt;br /&gt;
- People visited from all the continents&lt;br /&gt;
- People visited from more than 50 countries&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVe-RwMCnt4DMWSjP_WNGTFBQO-tW0Ew0apEwxViZRDLzZXjKfMB12SoskD9ZZl_GAy4_IXKyGeHGJeEutBLqDATSPcM8zu5_4uqeU2hshmVDTbcmxCdpVEhSWJiGjb40FGEAw_wFTK_w/s1600/map.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;206&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVe-RwMCnt4DMWSjP_WNGTFBQO-tW0Ew0apEwxViZRDLzZXjKfMB12SoskD9ZZl_GAy4_IXKyGeHGJeEutBLqDATSPcM8zu5_4uqeU2hshmVDTbcmxCdpVEhSWJiGjb40FGEAw_wFTK_w/s400/map.PNG&quot; width=&quot;400&quot; /&gt;&lt;/a&gt;&lt;/div&gt;Here is a map of the last 500 visits as of noon of June 8 (I cannot graph more than 500 with my service).&lt;br /&gt;
&lt;br /&gt;
Anyway it is all in part because I submitted it to some of the most active websites for electronic hacking. I am proud that I made it to&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;font-family: &#39;Tahoma&#39;,&#39;sans-serif&#39;; font-size: 10pt;&quot;&gt;- Hackaday -check it out&amp;nbsp; &lt;a href=&quot;http://hackaday.com/2011/06/07/capturing-video-with-an-arduino/&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;&lt;br /&gt;
- Make Magazine&#39;s blog - check it out&amp;nbsp; &lt;a href=&quot;http://blog.makezine.com/archive/2011/06/using-arduino-to-pull-images-from-an-analog-camera.html&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;&lt;br /&gt;
- Dangerous prototypes - check it out&amp;nbsp; &lt;a href=&quot;http://dangerousprototypes.com/2011/06/07/image-acquisition-from-an-analog-camera-using-arduino/&quot; target=&quot;_blank&quot;&gt;here&lt;/a&gt;&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
If somebody actually reproduces my experiment please let me know!!!&lt;br /&gt;
&lt;br /&gt;
Thank you all for reading my post!!!</content><link rel='replies' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/7873813232000361200/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hackingelectronics.blogspot.com/2011/06/successful-first-couple-of-days.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/7873813232000361200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/7873813232000361200'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/2011/06/successful-first-couple-of-days.html' title='Successful first couple of days!!!'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgVe-RwMCnt4DMWSjP_WNGTFBQO-tW0Ew0apEwxViZRDLzZXjKfMB12SoskD9ZZl_GAy4_IXKyGeHGJeEutBLqDATSPcM8zu5_4uqeU2hshmVDTbcmxCdpVEhSWJiGjb40FGEAw_wFTK_w/s72-c/map.PNG" height="72" width="72"/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-272856919762973504.post-1540362586996851954</id><published>2011-06-06T15:00:00.000-07:00</published><updated>2011-06-06T17:31:06.267-07:00</updated><title type='text'>Acquiring images from an Analog Camera using Arduino</title><content type='html'>&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;Incredible but true, I managed to acquire images from an analog camera using an Arduino!!!! I had the inestimable help of Mike from &lt;a href=&quot;http://nootropicdesign.com/&quot;&gt;Nootropic Design&lt;/a&gt;, who helped me modifying hardware and software from the &lt;a href=&quot;http://nootropicdesign.com/ve/&quot;&gt;video experimenter shield&lt;/a&gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;div class=&quot;separator&quot; style=&quot;clear: both; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7-ijxJpriX1ITQlwR-VgIRmiK3GpVb91lOqS7v2PdwfjvA94x-kxktILaG14Z3dHL99wpl2B-ugeu_LNx4yaYchUYSUBgLPRmWuOjdQZIrkwdlOKCQheKcOzCDimIPEbmk_d_Kr6x55s/s1600/Picture.jpg&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;320&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7-ijxJpriX1ITQlwR-VgIRmiK3GpVb91lOqS7v2PdwfjvA94x-kxktILaG14Z3dHL99wpl2B-ugeu_LNx4yaYchUYSUBgLPRmWuOjdQZIrkwdlOKCQheKcOzCDimIPEbmk_d_Kr6x55s/s320/Picture.jpg&quot; width=&quot;240&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;If you are interested (I bet you are) you will get the chance of doing it yourself because I am giving all the code so that you can do that at home (at your lab or for your favorite robot!!).&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;Feel free to skip the sections you want to skip, but I though a little bit of background is important for the whole understanding of the project.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Introduction&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;This project is based on the video experimenter shield by nootropic design. The idea behind this project is to be able to capture images from an Analog Video source and send them to a computer.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;Big challenges&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Memory limitation on the Arduino&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Speed (perfomance) of the 8 bit microcontroller&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Dynamically changing the threshold on the board.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Limitations&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;- The images acquired are low&amp;nbsp; resolution (128*96)&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- The bit depth is adjustable. BUT THERE IS A TRADEOFF... the higher the bit depth the longer it takes to take an image.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- MONOCHROME ONLY no color. &lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- The code provided acquires images of 3 bits depth (8 levels). Getting more levels is pretty straighforward.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- The code is provided as is, you can use it as long as you quote me on your sources/publications. You can also contact &lt;a href=&quot;http://www.movimed.com/&quot;&gt;MoviMED &lt;/a&gt;to get my &#39;professional&#39;&amp;nbsp; services (not for free).&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- For the time being the PC side is coded in LabVIEW (easiest option I had available). A Processing code is on the way.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Concept&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;The idea behind this project was to modify the assembly code provided by Nootropic Design to&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;b&gt;- &lt;/b&gt;Send thresholded images back to a PC via serial&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;b&gt;- &lt;/b&gt;Dynamically change the threshold so that different thresholds give different images that can be reassembled back in the computer. That is because the arduino does not have memory enough to store more than one thresholded image.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;b&gt;- &lt;/b&gt;Initially the idea was to software control the threshold but the wise advise from Mike led me to use an external DAC (&lt;a href=&quot;http://en.wikipedia.org/wiki/Resistor_ladder&quot;&gt;resistor ladder&lt;/a&gt;)&lt;b&gt; &lt;/b&gt;to externally force thresholds.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;This means that the code does the following&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Wait for a serial character to trigger the acquisition&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Set the threshold for an image&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Acquire that image&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Re set the threshold for another level and iterate&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Once all levels have been acquired (8 in the example) idle&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;The counter part (PC)&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Sends a character&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Waits for the images to come&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- Reconstructs the image&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;The images&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;Here are some images of the&amp;nbsp;&lt;b&gt; &lt;/b&gt; &lt;a href=&quot;http://www.movimed.com/&quot;&gt;MoviMED&lt;/a&gt; crew (me, John, Jesi and Dave) so that you can see the kind of resolution and bit depth images you can achieve. See below&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit; text-align: left;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBaAB2p9XC-n2iJFD7T0jDTcuSv_HRIuzrlidLXtOCxtEpBNmihdTZowyNFgfb2zlSIrB-RwHn-9Wg5GVV4dF9g9loJLSGeqK8Hf-Ac83PE7xNVIiYp0gpl_P7HOfDZ_JhwqjSpmTgEwE/s1600/Carlos3.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjBaAB2p9XC-n2iJFD7T0jDTcuSv_HRIuzrlidLXtOCxtEpBNmihdTZowyNFgfb2zlSIrB-RwHn-9Wg5GVV4dF9g9loJLSGeqK8Hf-Ac83PE7xNVIiYp0gpl_P7HOfDZ_JhwqjSpmTgEwE/s1600/Carlos3.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;background-color: black; clear: both; color: white; font-family: inherit; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguriqsXKKaaa7QtB0zIu-polnHlGkVGk9u6pXFtFZThK0D8a9DPbqEe8QlLEal3n2mn22WBgwsbPC__xY6f_OQsoPsQvBynu5hxGo-CFQTtqri7d99Icv-LNnHmEp5dNFjoLNxbXOx3Dw/s1600/John.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEguriqsXKKaaa7QtB0zIu-polnHlGkVGk9u6pXFtFZThK0D8a9DPbqEe8QlLEal3n2mn22WBgwsbPC__xY6f_OQsoPsQvBynu5hxGo-CFQTtqri7d99Icv-LNnHmEp5dNFjoLNxbXOx3Dw/s1600/John.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;background-color: black; clear: both; color: white; font-family: inherit; text-align: center;&quot;&gt;&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;background-color: black; clear: both; color: white; font-family: inherit; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieyMDD38Sl0-EQ5nFNo5IrrZvcMj_xTfwvLHBGiCYvA4PHqf0klloT6ClPr03QD10WgrVz9fJ7MYIVROWwT-1RyFolFng_omNXed-jhRErHtH1fChhpU5wwW4NUmrfg1aeXEfYu5tJnyo/s1600/Jesi3bit3.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEieyMDD38Sl0-EQ5nFNo5IrrZvcMj_xTfwvLHBGiCYvA4PHqf0klloT6ClPr03QD10WgrVz9fJ7MYIVROWwT-1RyFolFng_omNXed-jhRErHtH1fChhpU5wwW4NUmrfg1aeXEfYu5tJnyo/s1600/Jesi3bit3.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;background-color: black; clear: both; color: white; font-family: inherit; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCOHxbj6sHpnLf09z1W_UOk908M4OpeLnL_T459CQ7GzmDBxGPjLGoxQ0yZ2ONqk4Zmw4arcuLy8LUWJgohPhB_OTZougQtJiGONMKIMlVm_vtccM1UgAzlVuQ3qSXT1fOvT7rMckoDLw/s1600/Dave.png&quot; imageanchor=&quot;1&quot; style=&quot;clear: left; float: left; margin-bottom: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgCOHxbj6sHpnLf09z1W_UOk908M4OpeLnL_T459CQ7GzmDBxGPjLGoxQ0yZ2ONqk4Zmw4arcuLy8LUWJgohPhB_OTZougQtJiGONMKIMlVm_vtccM1UgAzlVuQ3qSXT1fOvT7rMckoDLw/s1600/Dave.png&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;What do you need?&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;b&gt;&amp;nbsp;&lt;/b&gt;Here is the list&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;b&gt;- &lt;u&gt;Arduino &lt;/u&gt;&lt;/b&gt;- I used the uno, it should work on the diecimila but my diecimila does not like it. My board is old (2006) though. Might try it though. It will not work on the Mega, &lt;a href=&quot;http://nootropicdesign.com/ve/whynotmega.html&quot;&gt;see why&lt;/a&gt;.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- &lt;u&gt;&lt;b&gt;Video Experimenter Shield &lt;/b&gt;&lt;/u&gt;-&amp;nbsp; I do not work for Nootropic Design but I recommend you buying this because it will open up lots of possibilities for your Arduino projects!!!&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- &lt;u&gt;&lt;b&gt;1% Resistors&lt;/b&gt; -&lt;/u&gt; Yes 1% is important. I used 95.38K resistors but any value should do. It is relevant that they are acurate for the kind of conversion needed.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- &lt;u&gt;&lt;b&gt;A potentiometer -&amp;nbsp; &lt;/b&gt;&lt;/u&gt;The value should be in the ballpark of the resistors mentioned above.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Hardware Rig&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;Here is a picture of the eagle schematic of what you need to assemble on top of the video experimenter shield&lt;/div&gt;&lt;div class=&quot;separator&quot; style=&quot;background-color: black; clear: both; color: white; font-family: inherit; text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7jFZmoLDTur7pWd6zgjFGR5m0_Yj087c7wnwbzYQJr_VixYjycoH32OMQnSEHagfW18Eule37ahZAv_OpZbBqsVfTeJoUqvMY_fjoMQWZNNQZYB0aP5W_uJGd1YngD9mDo6iX9oMqJ-Y/s1600/Schematic.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: 1em; margin-right: 1em;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;200&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEh7jFZmoLDTur7pWd6zgjFGR5m0_Yj087c7wnwbzYQJr_VixYjycoH32OMQnSEHagfW18Eule37ahZAv_OpZbBqsVfTeJoUqvMY_fjoMQWZNNQZYB0aP5W_uJGd1YngD9mDo6iX9oMqJ-Y/s320/Schematic.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;You can also download this image and the eagle schematic from &lt;a href=&quot;https://webfiles.uci.edu/cagell/docs/Arduino%20-%20Image%20gathering.rar&quot;&gt;this link&lt;/a&gt;. See comments on the file behind the link below.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Arduino Code and LabVIEW counterpart&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;Find all the code you need to run this in &lt;a href=&quot;https://webfiles.uci.edu/cagell/docs/Arduino%20-%20Image%20gathering.rar&quot;&gt;the same link as before&lt;/a&gt;. Some comments on that though&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;background-color: black; color: white; font-family: inherit; margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhptfQulGPJZoeZL9Jv1xuaWREOX_NOBUmUsZ7Ceqp5Man1iAWArXkzb9KhyphenhyphenLPSTPjzsqp3gNuabdVT2uXzXQ2TefkIgMU-_duyh1VAHmkUw_kLoafKqUij75Ruhi10Q9Be2vRfPPBP3NY/s1600/Front+Panel.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;160&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEhptfQulGPJZoeZL9Jv1xuaWREOX_NOBUmUsZ7Ceqp5Man1iAWArXkzb9KhyphenhyphenLPSTPjzsqp3gNuabdVT2uXzXQ2TefkIgMU-_duyh1VAHmkUw_kLoafKqUij75Ruhi10Q9Be2vRfPPBP3NY/s320/Front+Panel.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;LabVIEW front panel of the image acquisition&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;table align=&quot;center&quot; cellpadding=&quot;0&quot; cellspacing=&quot;0&quot; class=&quot;tr-caption-container&quot; style=&quot;background-color: black; color: white; font-family: inherit; margin-left: auto; margin-right: auto; text-align: center;&quot;&gt;&lt;tbody&gt;
&lt;tr&gt;&lt;td style=&quot;text-align: center;&quot;&gt;&lt;a href=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_b91oQg3z5kHBtt4pVwEs7ZoRx0dK4GZ8A8-QeHU1DSaA3GOSL49WfGAy7ynda-c7wKoUCc9lJ7JSYzxIH_TRafR6C-rlCI44O4xgwPic14YHcbr8tUvUKEjhMJ833EEyD06IsA9UAXc/s1600/Labview+code.PNG&quot; imageanchor=&quot;1&quot; style=&quot;margin-left: auto; margin-right: auto;&quot;&gt;&lt;img border=&quot;0&quot; height=&quot;104&quot; src=&quot;https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEi_b91oQg3z5kHBtt4pVwEs7ZoRx0dK4GZ8A8-QeHU1DSaA3GOSL49WfGAy7ynda-c7wKoUCc9lJ7JSYzxIH_TRafR6C-rlCI44O4xgwPic14YHcbr8tUvUKEjhMJ833EEyD06IsA9UAXc/s320/Labview+code.PNG&quot; width=&quot;320&quot; /&gt;&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;tr-caption&quot; style=&quot;text-align: center;&quot;&gt;LabVIEW code&lt;/td&gt;&lt;/tr&gt;
&lt;/tbody&gt;&lt;/table&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;- The code is provided as is. No guarantees and I will not support it, but I can provably give you some guidelines.&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- Performance - It takes about 1 second to acquire an image, so 8 level images take about 8 seconds. I can get it better by packing more info per serial packet (I am only sending a bit per byte). I will do that when I get some extra time. So far I wanted to prove the concept. &lt;br /&gt;
- I am planning to code the same thing in Processing. I do not program in processing but I know several other languages so I guess it is not going to take long.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- The LabVIEW code requires LabVIEW 2009 and NI Vision.&lt;br /&gt;
- Thanks Mike for your help!!!&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Where to go from here&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt; &lt;br /&gt;
Personally I am going to work on the processing side of things so that this code is useful for the none labview guys too.&amp;nbsp;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Adding more levels should be straight forward. But keep in mind, more levels, more time to acquire an image. If you move while acquiring you might get funny pics.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;Great projects from here (I am already planning to do them, I will post the results here, let me know if you get there before I do).&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- Store your images in a flash chip (from microchip for instance).&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- Store your images in a SD card&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- Do image processing, such as filters, line profiles, edge detection, etc with multi level images&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- Make your little pan and tild track an object based on vision.&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- Get a Maple from LeafLabs to acquire a multilevel image (major project). &lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;- Other&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;br /&gt;
&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: large;&quot;&gt;&lt;b&gt;Thanks&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;-Thanks to Mike from Nootropic Design for the help on the technical side of things&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; color: white; font-family: inherit;&quot;&gt;&lt;span style=&quot;font-size: 10pt;&quot;&gt;&lt;b&gt; &lt;/b&gt;-Thanks to &lt;a href=&quot;http://www.movimed.com/&quot;&gt;MoviMED&lt;/a&gt;, I used the cameras from work to test this code out. Check out our website and consider our &lt;a href=&quot;http://www.movimed.com/AF1501-framegrabber.htm&quot;&gt;AF-150x&lt;/a&gt; for your next RIO project!!! Consider us for any Machine Vision project!!&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; font-family: inherit;&quot;&gt;&lt;span style=&quot;color: black; font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;&lt;div style=&quot;background-color: black; font-family: inherit;&quot;&gt;&lt;span style=&quot;color: black; font-size: 10pt;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/1540362586996851954/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hackingelectronics.blogspot.com/2011/06/acquiring-images-from-analog-camera.html#comment-form' title='7 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/1540362586996851954'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/1540362586996851954'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/2011/06/acquiring-images-from-analog-camera.html' title='Acquiring images from an Analog Camera using Arduino'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEg7-ijxJpriX1ITQlwR-VgIRmiK3GpVb91lOqS7v2PdwfjvA94x-kxktILaG14Z3dHL99wpl2B-ugeu_LNx4yaYchUYSUBgLPRmWuOjdQZIrkwdlOKCQheKcOzCDimIPEbmk_d_Kr6x55s/s72-c/Picture.jpg" height="72" width="72"/><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-272856919762973504.post-5984431997453619886</id><published>2011-06-06T12:55:00.000-07:00</published><updated>2011-06-06T12:56:25.702-07:00</updated><title type='text'>Initial Post</title><content type='html'>Hello world!,&lt;br /&gt;
&lt;br /&gt;
Well maybe I should say&lt;br /&gt;
&lt;br /&gt;
&quot;println(&quot;Hello world&quot;)&quot;&amp;nbsp; as this is should mainly be a blog about hacking electronics with Arduino.&lt;br /&gt;
&lt;br /&gt;
I guess it is one of the thousand blogs about electronics and Arduino out there but I somehow wanted a spot to display to the world some of the interesting projects I am doing.&lt;br /&gt;
&lt;br /&gt;
Mainly this blog is going to contain hardware and electronic circuits I sort of put together (hack) so that I can do interesting stuff.&lt;br /&gt;
&lt;br /&gt;
A little bit more about myself can be found on &lt;a href=&quot;https://webfiles.uci.edu/cagell/index.htm&quot;&gt;my website back at Grad School at UC Irvine&lt;/a&gt;. It is all outdated but there are some interesting (basic and outdated) and useful tutorials on Arduino, AGVs, Matlab, Google Maps and Google Earth etc.&lt;br /&gt;
As far as my personal info, the description on my website is pretty accurate for my pre-industry experience, but anyhow that should give you a little bit of background on where I come from.&lt;br /&gt;
&lt;br /&gt;
I am currently working for MoviMED &lt;a href=&quot;http://www.movimed.com/&quot;&gt;(www.movimed.com) &lt;/a&gt;mainly on Image Processing and Machine Vision solutions for the industry. I am lucky enough to get to hack with electronics on my job so I can call myself fortunate.&lt;br /&gt;
&lt;br /&gt;
The professional bias (as you will see in the blog) points me to develop either automation or vision projects as that is what I would say my main interest is focused on. So expect Arduino, LabVIEW, image processing, electronics hacking and cameras to be the usual vocab on this blog.&lt;br /&gt;
&lt;br /&gt;
Thanks for reading, I assure there will be not many frequent updates because I do not usually get free time to do my things, but I will definitely post the projects I think they are worth pursuing.&lt;br /&gt;
&lt;br /&gt;
Give some feedback (that is always positive) so that I can improve/modify my posting.&lt;br /&gt;
&lt;br /&gt;
Thanks in advance for reading.&lt;br /&gt;
&lt;br /&gt;
Carlos</content><link rel='replies' type='application/atom+xml' href='http://hackingelectronics.blogspot.com/feeds/5984431997453619886/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://hackingelectronics.blogspot.com/2011/06/initial-post.html#comment-form' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/5984431997453619886'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/272856919762973504/posts/default/5984431997453619886'/><link rel='alternate' type='text/html' href='http://hackingelectronics.blogspot.com/2011/06/initial-post.html' title='Initial Post'/><author><name>Carlos A.</name><uri>http://www.blogger.com/profile/12741928822711707275</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjmbHCp5uzyZykLmicjbFebfk-FYj1LQMH4iJwuYy23y7a3KaLkem8k0YuNkRmFfNcqefXIFisMKSMSIoVvd_q1QUk2irXMq98o1pG9tfOBCVMq_b6dbPGjeN01Eu_pwg/s220/Carlos3.png'/></author><thr:total>1</thr:total></entry></feed>