The SIDstick is a pocket-sized chiptunes player featuring:
- removable storage supporting microSD cards
- 20+ hour battery life
- Super Hi-Quality hardware-based playback at 31kHz sample rate, >16 bit resolution
- Completely Open, hardware design and sourcecode are available under the MIT license
- Upgradable with connections on the board.
And a few more Chiptunes favorites
A few more good ones:
Step 1: FAQ
To quote wikipedia, "music written in sound formats where all the sounds are synthesized in real time by a computer or video game console sound chip, instead of using sample-based synthesis."
A lot of chiptunes are ripped from classic videogames, and some are new works. The SIDstick plays the most common variety of chiptunes, music written for playback on a SID chip. Probably the biggest collection of SID music is the High Voltage SID Collection, which has 36,000 SID tunes, free to download.
How long do the batteries last?
Depending on the type of batteries you use, you'll get about 20 hours of playback. I suggest you use rechargeable batteries, but alkalines will work, too.
How many songs can I store?
All of them. A 2gb microSD card will store 20,000 - 30,000 songs, depending on filesize. That's about 60 days of unique tunes.
Is it hard to put together?
No, it's pretty easy - there aren't a lot of components on the SIDstick, most of the magic happens within the microcontroller. The microSD card slot comes pre-assembled, so you don't need to do any surface mount soldering.
I want technical details!
That's not actually a question, but here are the details of SIDcog, the core audio processor;
- 31kHz sample rate
- >16bit resolution
- Full filter support - any combination of Lowpass, Bandpass and Highpass filter
- Full envelope support with a logarithmic release/decay curve. ( uses the same logarithmic approximation as a real SID)
- Supports all 4 waveform types
- 16 steps main volume
- Waveform reset bit works. (many Rob Hubbard tunes relies on this exact behaviour)
- Ring modulation
- Oscillator synchronization
The SIDstick is the product of a group effort - Johannes Ahlebrand did the SIDcog core & desktop app, Jeff Ledger did the SD card interface and track / volume control. I did the circuit board layout. Thanks also to James Long from Lil' Brother SMT Assembly for the microSD board design and assembly services.
Step 2: Preparation: Tools
ToolsYou'll need a few tools to assemble the project;
1 - Soldering Iron and solder. Leaded solder is easier to work with, and a 15-40 watt iron is just fine. I sell a little elenco combo pack (here) that works pretty well.
2 - Dikes. Diagonal cutters are used to trim the excess leads from components after soldering them down. They don't have to be fancy, I use a pair I got from Ikea for a buck or two.
Step 3: Preparation: Parts List
MCP1700 (3V, TO-92)
Mouser Part#: 579-MCP1700-3302E/TO
Mouser Part#: 653-B3F-1000
Mouser Part#: ECS-50-20-4X
40 Pin DIP socket (600 mil)
Mouser Part#: 517-4840-6004-CP
8 Pin DIP socket (300 mil)
Mouser Part#: 517-4808-3004-CP
3.5mm Stereo Headphone Jack
Mouser Part#: 806-STX-3100-5N
47uF Radial Electrolytic Cap (micro-mini)
Mouser Part#: 140-L25V47-RC
Available at Parallax.com
Available at Gadget Gangster
10k ohm thumbwheel potentiometer
Mouser Part#: 3352T-1-103LF
3xAA Battery Box
Mouser Part#: 12BH331/CS-GR
Available at Gadget Gangster
Mouser Part #: 24LC256-I/P
If you get this with the kit, it will be pre-programmed. Otherwise, you'll need an EEPROM programmer like a PropPlug.
10k ohm resistor (1/4 Watt) - (Brown - Black - Orange)
.1uF Radial Ceramic Capacitor (104)
Rectangular pin headers
Machined pin headers
Step 4: Make: Step 1
Flip the board over and splay the leads out. Solder the resistors to the board and trim off the excess wire.
Step 5: Make: Step 2
Step 6: Make: Step 3
Add the voltage regulator at 'VR'. It's a little black can with a notch cut out and has three legs coming out the bottom. The notch should point towards the edge of the board, as indicated on the marking on the board.
Add the 4th 10k ohm resistor (Brown - Black - Orange) at R4.
Step 7: Make: Step 4
The volume is controlled using the thumbwheel potentiometer, add it on the top corner of the board, as indicated on the pcb.
Step 8: Make: Step 5
Use a sticky bit of post-it note to hold them on the board, flip the board over, and solder them to the board. The post-it note will keep them from falling out before they're soldered in.
Once they're soldered in, just trim off the thin metal tips. This will be your crystal socket.
Step 9: Make: Step 6
add the headphone jack next to the buttons
The 8 pin socket goes at U2, the notch is closer to the edge of the board.
Now, push the Propeller into the socket - the notch on the chip pointing the same was as the socket. Same for the EEPROM.
Step 10: Make: Step 7
You can drop your crystal in the socket now - just trim all but 3-4mm from the leads on the crystal and insert them into the pcb at 'XTAL'.
Step 11: Make: Step 8
The red wire will go through the hole marked '+', the black wire goes through the hole marked '-'.
Step 12: Usage & Downloads
UsageUsing the SIDstick is simple. Flip on the power switch (located on the battery box), and it will start playing the first song (alphabetically by filename) on the memory card. Pushing the 'play/pause' button will stop / start the music, and previous / next will let you skip tracks.
When loading up your memory card with tunes, keep in mind two things;
1 - The SIDstick will only recognize filenames in an '8.3' format. This means you need to keep filenames to 8 characters with a 3 character extension. 'song.dmp' is okay, but 'thisisasong.dmp' is too many characters. The SIDstick will skip over any tracks that have too many characters in the filename.
2 - .sid files need to be converted to .dmp files before they'll play. This is a really brief process and Johannes has built a cross-platform converter with a nice little UI. The Windows version is right here, and Mac and Linux version should be ready in just a few days.
That's it! Enjoy your SIDstick!
Everything is available under the MIT License, which is basically public domain:
SIDstick firmware: Initial version. Check the project page for updated versions.
Schematic - pdf, .dch
PCB layout - pdf, .dip
Hi-res photos for this howto are on flickr.
The SIDstick is available as a kit from Gadget Gangster