Monday, April 29, 2013

Automated Piano Lesson with Embeded Systems

To learn Piano, it costs a fortune to hire a pianist to get lessons. So I am building piano teaching device that costs under $70 to teach myself Piano.

The basic idea goes like this: install one LED on each Piano key and turn each LED on/off to show which key to press down for each note in a song. The implementation involves an Android Phone, IOIO Board, and an LED module. I thought I was the only one who came up with the idea but it turns out there was a startup company based on this idea. Booohh

Android cannot control shift registers by directly sending out bits. Intermidiary is needed so the system like IOIO board is needed.   The project is nearly done so I will post a youtube video of me playing piano with the LED module. Standard music media format MIDI is parsed within anroid phone to send bits to the shift registers. This  can be done with external java library found by googling.

This is the photo showing the IOIO board+74HC595 Shift Registers+ Arduino Board. Why do I need Arduino board? Well I forgot to buy power supply so now Arduino's 5V Pin/Ground Pin is being used to power IOIO board. LOL. Above all, JAVA is needed to program Android and even for driving IOIO board. 

(Edited 10/9/13: Comment here if you have questions about the setup.) 


Wednesday, April 24, 2013

Python Powered Bible Reading

For Church, it is good for the church members to read the Bible everyday. 

Previously I made a python script to parse and analyze the Bible. So I launched it into a web application serving my church: if you submit your email address, everyday the web app sends HTML email containing daily bible verses.

The website is powered by Django (Python) on Amazon Web Services EC2 micro instance (Free.)  The server contains the Bible in text file so I made a python script to parse and load into Django.  The script has to run permanently so I used 'sudo nohup python &' command found by google search. The beautiful looking front end is not my work. I downloaded the template from this website. The hardest part was parsing and using Korean language within python and html. I did not know I had to declare encoding within html to serve foreign language. Django does not naturally serve media file (The beautiful CSS) so I used an inefficient way recommended here

Sunday, April 7, 2013

Flattery Generator

So if you need some sentences for flattery, you could use this webpage I made for fun! For example, it outputs entries like " YOU, painfully amazing flower, shut up and take me." each time you push a button. 
 I used some JQuerry, AWS, and Django to implement this..