May 14 2008
The Time Traveling Radio : Part 3 – B
Just a quick note. The “DCS” and “MOSI” pin labels in my Part 3 photos are incorrect. DCS is for NEXT and MOSI is for PREVIOUS. Unfortunately, I was looking at a bad schematic when annotating my photo instead of my own notes. Ah, well. Below is a scratched up revision. I don’t have the patience to make a whole new one.
Also, I was originally going to use a flip-flop to do the rotary encoder work. However, I encountered two things: First, the examples of doing it suck. It’s just people copying others diagrams without any real explanations. Second, I would need to debounce the encoder output with hardware. If I use a MCU I can do it in code.
Long story short, by the time I looked at debounce parts, loss of functionality, flaky flip flopping, and all the other parts, it ends up taking less time and energy to just use a MCU, so that’s what I’m doing. I’m doing the “smoke test” using an Arduino (since development time is quick) but will use a ATTINY2313 for the final project.
Once again, I’ve re-affirmed my liking of the Arduino. It allows you to very quickly test things out–it was the Arduino test that helped me discover the MOSI/DCS mixup. All with a couple lines of code and a tiny bit of breadboarding.
So far, I’ve got the Arduino driving the MOD-MP3 forwards and backwards. It needs about 100ms of ON/HIGH time on the transistors to get it to trigger. You don’t want to hold it too long at HIGH, because then the player will think you want to change the volume. I’ll experiment a bit and see what the range is. I also need to try and get the play/pause feature working.
2 Responses to “The Time Traveling Radio : Part 3 – B”


Part of the issue is that I’m trying to use components on hand (I have a couple of cheap Panasonic rotary encoders available). The challenge, too, is that I’m trying to fit it into an existing radio, so it’s often the “luck of the draw” as to whether a component will fit or not.
I might give the debouncer & flip-flop a try again. I’m having a hard time getting the microcontroller to “pause” the MP3 player. Pretty annoying, as a crappy un-debounced pushbutton works fine, but a pure electronic switch (transistor) doesn’t. Sometimes the simple problems are the hardest to solve.
This is the encoder I’m using:
http://www.goldmine-elec-products.com/prodinfo.asp?number=G16267&variation=