learning the ropes

things I made at ITP and after: sketches, prototypes, and other documentation

Sunday, November 23, 2008

ICD-UX70 Working with Relays

After a couple of miss-starts, I finally got the Sony ICD-UX70 mp3 player/recording working properly.  It was necessary to use a transistor and relay for each of the functions.  

IMG_0953 IMG_0954 IMG_0958 IMG_0962 IMG_0959

ICD-UX70 relay controller

Code

I wrote code which can seek to a specific track using these transport functions.  Since the AVR microcontroller must keep track of the current track, there will be a problem anytime the unit is turned off.  It will be necessary to reset both the current track and the maximum number of tracks.  It would be possible to add some EEPROM (or perhaps use some Arduino trickery) to make sure the track count isn’t lost.  In any case, though, there are certain tradeoffs that occur when hacking external hardware.  

Track Transition Speed

Each track transition takes 150ms.  It doesn’t seem to be possible to drive the recorder any faster than that.  It simply ignores the fake button presses.  This means that seeking 20 tracks will take 3 seconds.  

Next Steps

  • Code to allow control recording functions (and increase the total track count each time)
  • Code to control playback (very easy)
  • There is an indicator LED on the unit which I hope I can detect using a photocell.This may be necessary in order to prevent the unit from getting confused.  I want to prevent the microcontroller from executing new transport functions before recording or playback is finished.  
posted by Michael at 7:16 pm  

Sunday, November 16, 2008

Sony ICD-UX70 Tear-Down

Here are the photos from my tear-down of the Sony ICD-UX70.  

Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70

After getting the unit disassembled, I soldered wires onto each of the transport buttons so I can control it with an Arduino.

 Sony ICD-UX70 Sony ICD-UX70 Sony ICD-UX70

I tested the unit with the microcontroller — and two control techniques are very promising.  I can either use pull-up resistors and connect the microcontroller outputs directly to one side of each switch (the 3V side), or I can use NPN transistors to bridge the terminals on each switch and use the microcontroller to control the transistors’ bases.

 

posted by Michael at 11:14 pm  

Saturday, November 15, 2008

Hack a Digital Voice Recorder

I am helping a client prototype a new product which requires digital recording and playback functionality.

I’m assessing the possibility of using a high-quality digital voice recorder to serve as the heart of the system. Today, I bought two models (Sony ICD-P620 and Sony ICD-UX70) in order to see which would be the best fit for the application.

ICD-P620

IMG_0866 IMG_0865 IMG_0864

ICD-UX70

IMG_0859 IMG_0860 IMG_0862 IMG_0861

The P620 lists at $59.99 and the UX70 at $99.99. Both have the basic features I need in order to control them with a microcontroller (Arduino in this case):

  • Small form factor
  • REC button
  • (optional) light that recording or playback are occurring so the microcontroller can know when to return to the first track
  • STOP button
  • Track Forward and Track Back buttons to navigate between tracks
  • Quickly advance between tracks
  • Microphone input (so it will be possible to locate a mic away from the case)
  • Headphone output (for use with an external amplifier)
  • Internal speaker
  • High Quality Recording

Both models rapidly change between tracks — and beep to provide auditory feedback that the change has happened.  This may or may not be useful for my application.  

The ICD-P620 does not sound very good, though.  It is certainly possible to understand speech recorded into it, but the playback has some digital artifacts which lead me to believe it is probably encoding the files in an 8-bit format.  I have decided not to use it for this reason.

The ICD-UX70, on the other hand, sounds pretty good.  It records files natively in the .mp3 format (192kbps on high quality).  Now, I’ll take the next step: disassembly (or tear-down, if you like).

 

posted by Michael at 5:14 pm  

Powered by WordPress