Square Thoughts

an engineering student's blog

Archive for the category “General”

PicWand – an easy to use Air Printing Technique

I undertook a real fun project in the December of 2011. Today, when shuffling through my project repositories, I found its schematic files and source code. It is fantastic! It allows a person to write text, draw images and create super cool effects in the air. Yes AIR. Air printing. Or more closely related to light painting. I named it the PicWand, back then. All you need is a camera with low shutter speed, a computer and the PicWand.

The hardware of the PicWand is simple and expandable. It consists of strip of 8 RGB LEDs, one 74HCT164 shift register and an AVR ATtiny44 microcontroller. It has two onboard LM1117 5.0 volt regulators and can be powered by a single 9V battery. Why two? Each RGB LED requires about 120mA of currrent (40mA*3), so total of eight, when lit simultaneously requires about 960mA. The 1117 provides regulated output up to 800mA current draw. So, using two regulators on the same board made sense as it allows me to achieve unmatched brightness levels.

Multiple strips of the PicWand PCB can be connected to each other. The controllers interact over the I2C bus and all the strips share the common voltage supply and ground. So the design can be extended to a maximum of 127 (limited by the 7-bit I2C address) strips all connected together to form one huge wand with each RGB LED individually addressable.

The software model is simple. The content to be displayed is broken up into pixels and each RGB LED represents one pixel. The LEDs are then multiplexed to display all the pixels in one column of the content. As the PicWand is moved laterally in front of a low shutter speed camera, the wand displays all the pixels in the subsequent columns. At the end of the shutter time, an entire 512 color image is obtained.

I tested the PicWand by writing my own name. The shutter speed was set to 8 seconds and each color in the RGB LED was varied across 8 intensity levels using PWM techniques. The content to be displayed is stored in the flash memory of the microcontroller. You can grab a copy of the schematic and the code files from my Github page.

A Stranger

This may not interest all, but something unusual happened yesterday. I met a person: dark complexioned, 5feet 6inch tall, having two beautiful children and a gorgeous looking wife, I met a stranger!

To tell you more about this, let me recapitulate an incident which happened with me two months back.

It was 26th of February, 2010 and I was headed to Vasant Kunj via bus route 764 with my friends Prashant Mital and Abhinav Yadav. We took the bus from NSIT bus stand (Dwarka) and occupied the last row seats of the bus. We talked about our colleges, our falling grades, girls and alcohol. After about ten minutes, there was some commotion in the bus. A completely drunk person boarded the bus and came to sit with us. He was talking to himself in an angry tone and murmuring words which only he could understand. After continuing all this for sometime, he realized we were sitting next to him and giving him more-than-needed attention. So, he started talking to us.

Kahan se ho bhai?

None of us bothered to reply, mistaking him for talking to himself again. He repeated his question.

Arrey kahan se ho tum log?

We still didn’t care. Replying to his question would mean we were to get ready to answer some of the most weird questions we had ever answered.

Mai bass thoda sa out hoon, zyaada nahi piya maine. Tum toh mere bhai jaise ho, kabhi koi problem ho toh turant phone kar dena.

He was getting way too friendly.

Ek kaam karo, tum mera number likh lo, call karna mujhe.

I took out my phone, and entered the number he gave me thinking he may stop bothering us after that.


Likh liya?

I nodded to his question.

Yeh number toh aajkal bandh hai, doosra likh lo.

What the fuck? He just made a fool out of me. I took down the other number he gave me. Typing it on my phone and deleting it at that very instant without him knowing. I thought at least now he would stop.

Tumne mujhse naam toh poocha nahi, phir jab phone karoge toh kya bologe? Phone toh mera bhai uthayega.

I didn’t have the answer to his question. I preferred to keep quiet.

Mera naam “kishan” hai. Tumhaara kya hai? Mai ghar jaake apne mobile mei save kar loonga.

I didn’t want to tell my name to a stranger. So I just made up a name, and told him that my name was “Ravi”.

Ab toh humein ek doosre ka naam pata hai, ab toh hum dost hai. Ek dost hi doosre dost ki maddad karta hai, koi bhi problem ho toh mera number ghuma dena. Tum mujhe zaroor call karna.

He continued speaking for the next 15 minutes. We didn’t care, we just ignored him. and he got down from the bus at Palam. We just took him to be a drunkard and didn’t think of him ever after that incident. He was totally out of our mind.

It was totally normal on our part to ignore everything he said. How many of us are there who actually listen to drunk people? None of us.

And yesterday, April 26th, 2010 at 1630 hours, I met that person again. This time in the Delhi Metro. I boarded the train from the Dwarka Mor station. I took the unreserved seat next to the ladies seat. And there he was, a person whose face was at first difficult to recall but then I could totally remember him. He was staring at me. I tried to avoid him and started looking the other way round. He came up to me and took the the seat next to mine.

Bhaiyya pehchaana?

Definitely I had recognized him, but I refused.

Hum mille the! 764 mei, uss din mai thoda tull tha. Aaj bilkul theek hoon. Aapne mujhe call hi nahi kiya?

Shit! He remembered that I was to call him. So I at once showed that I was happy to meet him.

Agar uss din maine kuch galat bola tha, toh mujhe maaf karna. Zindagi badhi dhokebaaz hai, bahut kuch hua tha mere saath uss din.

Trying to act a little concerned, I asked him what happened that day?

Humaari naukri chali gayi thi. Hum par chori ka jhoota ilzhaam lagaya gaya tha. Bina naukri ke hum apne biwi baccho ki kaise dekhbaal karte. Yeh ameer log kabhi nahi samjhte ek gareeb ko. Hum badhe pareshaan the. Ghar jaane ki himmat nahi tha. In sab ke beech thodi daru chadha li thi. Koi chahiye tha baat karne ke liye, ek bhai jaisa insaan, jo humein samajhta.

And….. I felt like hitting myself on the face, jumping out of the moving train and die. Why did I ignore him? He just wanted someone to talk. A few lines of condolence would have helped him. My heart felt heavy. He introduced me to his family of three, his two children and his wife. The innocence on their faces and an agreement with what all they had, just made me feel awful. He had got his job back and earned five thousand a month now. We talked a little more and then he got down at Janakpuri East. He de-boarded the train asking me to call him at least once. I gave him an assurance that I would, but deep inside I knew I can’t call him even if I want to, I never stored his number.

So moral of the story is, never mistake a drunk person with a thief or douche bag. All of them have a story to tell. If you ever come across a drunk person who starts talking to you, spare out some time and listen to what he has to say. Don’t just ignore them. Someday, you might change someone’s life.

Post Navigation