Language Drills with Raspberry Pi

Productivity Sauce
After a long pause, I'm back to my favorite pastime: learning foreign languages. But this time, I've enlisted Raspberry Pi as a little language learning tool. Currently, I'm using an audio language course, and Raspberry Pi helps me memorize the words and phrases I learn. The way this works is very simple. I chop each audio lesson into sentences and phrases using Audacity and save them as MP3 files in a separate directory. Raspberry Pi is hooked to a breadboard with a push button and a resistor as shown on the diagram.
When I push the button, a Python script picks a random mp3 file and plays it. The script is rather simple, and it uses the mpg321 player to play mp3 files.
#!/usr/bin/env python from time import sleep import os, random import RPi.GPIO as GPIO GPIO.setmode(GPIO.BCM) GPIO.setup(17, GPIO.IN) while True: if (GPIO.input(17) == False ): randomfile = random.choice(os.listdir("./mp3")) print randomfile os.system('mpg321 ./mp3/'+ randomfile +' &') sleep(0.1);
The script requires several packages which can be installed using the sudo apt-get install python-dev python-rpi.gpio mpg321 command.
This is just a very rough prototype, and there are a lot of things that can be improved and tweaked. For example, I'm thinking about using an LDR (light-dependent resistor) to play a random file when light hits it. This way, I can place Raspberry Pi into a fridge, so it plays random files every time I open the door. Another possibility is to hook up a dot-matrix LCD screen and make Raspberry Pi display random words and phrases. Honestly, with so many ideas, I'm not sure whether I have time to learn Japanese.
comments powered by Disqus