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 DisqusSubscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
CIQ Releases Compatibility Catalog for Rocky Linux
The company behind Rocky Linux is making an open catalog available to developers, hobbyists, and other contributors, so they can verify and publish compatibility with the CIQ lineup.
-
KDE Gets Some Resuscitation
KDE is bringing back two themes that vanished a few years ago, putting a bit more air under its wings.
-
Ubuntu 26.04 Beta Arrives with Some Surprises
Ubuntu 26.04 is almost here, but the beta version has been released, and it might surprise some people.
-
Ubuntu MATE Dev Leaving After 12 years
Martin Wimpress, the maintainer of Ubuntu MATE, is now searching for his successor. Are you the next in line?
-
Kali Linux Waxes Nostalgic with BackTrack Mode
For those who've used Kali Linux since its inception, the changes with the new release are sure to put a smile on your face.
-
Gnome 50 Smooths Out NVIDIA GPU Issues
Gamers rejoice, your favorite pastime just got better with Gnome 50 and NVIDIA GPUs.
-
System76 Retools Thelio Desktop
The new Thelio Mira has landed with improved performance, repairability, and front-facing ports alongside a high-quality tempered glass facade.
-
Some Linux Distros Skirt Age Verification Laws
After California introduced an age verification law recently, open source operating system developers have had to get creative with how they deal with it.
-
UN Creates Open Source Portal
In a quest to strengthen open source collaboration, the United Nations Office of Information and Communications Technology has created a new portal.
-
Latest Linux Kernel RC Contains Changes Galore
Linux kernel 7.0-rc3 includes more changes than have been made in a single release in recent history.
