[Bruce Land] switched his microprocessor programming class over from Atmel parts to Microchip’s PIC32 series, and that means that he’s got a slightly different set of peripherals to play with. One thing that both chips lack, however is a digital-to-analog converter (DAC). Or do they? (Dun-dun-dun-duuuuhnnnn!)
The PIC part has a programmable, sixteen-level voltage reference. And what is a
Vref if not a calibrated DAC? With that in mind, [Bruce] took to documenting its performance and starting to push it far beyond the manufacturer’s intentions. Turns out that the
Vref has around 200 kHz of bandwidth. (Who would update a voltage reference 200,000 times per second?)
Anyway, [Bruce] being [Bruce], he noticed that the bits weren’t changing very often in anything more than the least significant bit: audio waveforms, sampled fast enough, are fairly continuous. This suggests using a differential PCM encoding, which knocks the bitrate down by 50% and saves a lot on storage. (Links to all the code for this experiment is inline with his writeup.)
The audio hacks that come out of [Bruce]’s Cornell ECE classes are always a treat. From the lock that you have to sing to open, to chiptunes programmed into an FPGA, there’s something for music fans of all inclinations.
Wireless storage and biometric authentication are both solved problems. But as [Nathan] and [Zhi] have noticed, there is no single storage solution that incorporates both. For their final project in [Bruce Land]’s ECE 4760, they sought to combine the two ideas under a tight budget while adding as many extras as they could afford, like an OLED and induction coil charging.
Their solution can be used by up to 20 different people who each get a slice of an SD card in the storage unit There are two physical pieces, a base station and the wireless storage unit itself. The base station connects to the host PC over USB and contains an Arduino for serial pass-through and an nRF24L01+ module for communicating with the storage side. The storage drive’s components are crammed inside a clear plastic box. This not only looks cool, it negates the need for cutting out ports to mount the fingerprint sensor and the OLED. The sensor reads the user’s credentials through the box, and the authentication status is displayed on an OLED. Files are transferred to and from the SD card over a second nRF24L01+ through the requisite PIC32.
Fingerprint authorization gives the unit some physical security, but [Nathan] and [Zhi] would like to add an encryption scheme. Due to budget limitations and time constraints, the data transfer isn’t very fast (840 bytes/sec), but this isn’t really the nRF modules’ fault—most of the transmission protocol was implemented in software and they simply ran out of debugging time. There is also no filesystem architecture. In spite of these drawbacks, [Nathan] and [Zhi] created a working proof of concept for wireless biometric storage that they are happy with. Take a tour after the break.
Continue reading “A Shareable Wireless Biometric Flash Drive”
[Matthew Filipek] likes smart watches, but wanted to build one for under $100, so he did. The watch has a 1.7 inch LCD touchscreen, a rechargeable LiPo battery, an SD card, and Bluetooth. The watch is a little large since [Matthew] had only a month to complete the project that drove him to use some pre-made modules and meant one shot at getting his custom PCB right.
The watch sports three applications: a settings app, a simple game, and a sketch program (you can see a demo in the video below). Power management is a primary goal, of course, although the clock rate is held high enough to make the game playable. To simplify the software, [Matthew] uses protothreads–a lightweight thread abstraction for embedded systems.
We’ve seen several DIY smartwatches in the past including one entry for the Hackaday Prize. It is hard to roll your own watch that has the same small size and style as a commercial offering. However, there is something to be said for having a homebrew watch for boosting your hacker cred.
Continue reading “PIC32 Smart Watch for Less Than a Benjamin”
A few years ago [Serge Vakulenko] started the RetroBSD project–a 16-bit port of the old 2.11BSD operating system to the Microchip PIC32 microcontroller. This was impressive, but version 2 of BSD is, to most people, old news and somewhat difficult to use compared to modern BSD and Linux operating systems.
[Serge] has been at it again, however, and now has a port of 4.4BSD–LiteBSD–running on the PIC32MZ. According to [Alexandru Voica] there is about 200K of user space memory in the basic build, and by removing some OS features, you could double or triple that figure.
Continue reading “LiteBSD Brings 4.4BSD to PIC32”
Wearable tech is getting to be a big thing. But how we interface with this gear is still a bit of a work in progress. To explore this space, [Bruce Land]’s microcontroller course students came up with an acoustic interface to assist with navigation while walking. With style, of course.
[Bruce], from the Cornell University School of Electrical and Computer Engineering, has been burning up the Hackaday tips line with his students’ final projects. Here’s the overview page for the Sound Navigation Hat. It uses a PIC32 with GPS and compass. A lot of time was spent figuring out how to properly retrieve and parse the GPS data, but for us the interesting bits on that page are how the directional sound was put together.
Audio tones are fed to earbuds with phase shift and amplitude to make it seem like the sound is coming from the direction you’re supposed to walk. Navigation is all based on pre-programmed routes which are selected using a small LCD screen and buttons. One thing’s for sure, the choice of headwear for the project is beyond reproach from a fashion standpoint – engineering has a long history with the top hat, and we think it’s high time it made a comeback.
Is this a practical solution to land navigation? Of course not. But it could be implemented in smartphone audio players for ambient turn-by-turn navigation. And as a student project, it’s a fun way to demonstrate a novel interface. We recently covered a haptic navigation interface for the visually impaired that uses a similar principle. It’ll be interesting to see if either of these interfaces goes anywhere.
Continue reading “Stepping out in Style with Top Hat Navigation”
Have you seen any loud sweaters this holiday season? Now there is a way to quantify their vibrancy and actually hear them at the same time. Cornell engineering students [Mengcheng Qi] and [Ryan Land] focused on the sonification of color and translated the visible spectrum into audible sounds.
They originally planned to use pixel samples from an OV7670 camera module, but weren’t able to extract any useful color data from it. We prefer their Plan B anyway, which was to use CdS photo resistors and the plastic color filters used for photography in red, blue, and green. The varying intensity of light falling on the photo resistors creates different patterns according to the voltage levels. The actual sound generation was done with FM sound synthesis.
There wasn’t a lot of natural sound variation between different RGB values, so in order to make it more fun, they created different instruments which play different patterns at variable speeds and pitch according to the colors. In addition to the audio feedback, the RGB values are displayed in real-time on a small TFT. Below those are dynamic bar graphs that show the voltages of each color.
Check out the demo after the break; they walk through the project and try it out on different things to hear their colors.
Continue reading “Color Sonification Could Be Key to Rainbow Connection”
What if you could give yourself a standard eye exam at home? That’s the idea behind [Joel, Margot, and Yuchen]’s final project for [Bruce Land]’s ECE 4760—simulating the standard Snellen eye chart that tests visual acuity from an actual or simulated distance of 20 feet.
This test is a bit different, though. Letters are presented one by one on a TFT display, and the user must identify each letter by speaking into a microphone. As long as the user guesses correctly, the system shows smaller and smaller letters until the size equivalent to the 20/20 line of the Snellen chart is reached.
Since the project relies on speech recognition, the group had to consider things like background noise and the differences in human voices. They use a bandpass filter to screen out frequencies that fall outside the human vocal range. In order to determine the letter spoken, the PIC32 collects the first 256 and last 256 samples, stores them in two arrays, and performs FFT on the first set. The second set of samples undergoe Mel transformation, which helps the PIC assess the sample logarithmically. Finally, the system determines whether it should show a new letter at the same size, a new letter at a smaller size, or end the exam.
While this is not meant to replace eye exams done by certified professionals, it is an interesting project that is true to the principles of the Snellen eye chart. The only thing that might make this better is an e-ink display to make the letters crisp. We’d like to see Snellen’s tumbling E chart implemented as well for children who don’t yet know the alphabet, although that would probably require a vastly different input method. Be sure to check out the demonstration video after the break.
Don’t know who [Bruce Land] is? Of course he’s an esteemed Senior Lecturer at Cornell University. But he’s also extremely active on Hackaday.io, has many great embedded engineering lectures you can watch free-of-charge, and every year we look forward to seeing the projects — like this one — dreamed and realized by his students. Do you have final projects of your own to show off? Don’t be shy about sending in a tip!
Continue reading “Students Set Sights on DIY Eye Exams”