PIC-Based Archos Remote
Using the Remote With Your
The remote control described here should work with
all Archos Jukebox Recorder and Jukebox Studio devices
(see Sidebar). For convenience, I’ll just say recorder from
now on when referring to all supported players and
A stereo headphone jack plug has a tip, ring, and
sleeve to provide the connections to the left and right
audio signals and the ground reference. The recorder has
an extra connection for the remote in the headphone
socket, which is grounded when a normal headphone jack
plug is connected. The remote jack plug has an additional
ring that is used to transmit the commands from the
remote to the recorder. The headphones are then plugged
into the remote, which passes the audio straight through to
them. These connections are illustrated in Figure 1.
How Does the Remote Work?
The remote communicates with the recorder using a
simple, eight-bit, asynchronous serial protocol, with the
least significant bit (LSB) first — at 9,600 bits per second
— using one start and one stop bit. Six commands are
defined — one each for Play, Stop, Volume Up, Volume
Down, Next, and Previous. The details are shown in
These six commands work for both the standard
Archos software and the alternative Rockbox offering. The
remote code was designed so that it is a straightforward
process to add additional commands to the standard ones.
This means that it is relatively simple to modify the code
to implement additional commands, should the Rockbox
developers add functions (or, since Rockbox is open
source, should you decide to add your own).
One of the key design goals I had was creating a
remote that would fit into a small, neat package. It is
difficult to achieve this with a home brew design, but a
remote the same size as the recorder was not the answer.
To keep the size down, I decided to use one of the smaller,
eight-pin, low voltage PIC processors, with the intent of
using a surface mount device (SMD) to minimize the size
of the completed unit.
Picking the PIC
I already had some experience with the PIC12C508A
(see my High-Roller article, Nuts & Volts, January 2003),
and felt that this project would also suit this class of
microcontroller (MCU). In addition, Microchip offers a low
voltage part (PIC12LC508A) — available in both DIP and
SMD packages — which will run from a 3 V supply. With
Is My Player or Recorder Supported
by the Remote?
Be sure to check the Archos website ( www.archos.com)
to make sure that the remote in the Archos travel kit supports
your player or recorder before embarking on this project. At
the time of writing, the Jukebox Recorder and Jukebox Studio
(player) devices are supported — not the FM Recorder or
Jukebox Multimedia devices. If your device is supported, this
remote should also work as well or better than the Archos
one, particularly if you also use the Rockbox software.
Making Sure the MCU Clock
An individual oscillator calibration value is stored at
address 0 x1FF in each ’508A during manufacturing. This value
must be loaded into the OSCCAL register to ensure the best
accuracy for the internal clock. Check your programmer
information carefully to make sure you don’t overwrite this
value when programming your PIC.
careful design for minimizing power, this means that a
single CR2032 coin cell will supply sufficient power to
operate the device for an extended period — estimated at
well over a year.
The ’508A family of devices has eight pins. Two of
these are for power, with the remaining six being input/output
(I/O) pins that support a number of different modes. The
device’s configuration bits determine their function. In this
design, they are all used as normal I/O pins.
Figure 2. Serial data.