Saturday, February 16, 2013

PCBs for USB Datasette and Wiimote2Amiga arrived

My USB Datasette and the Wiimote-Amiga-Joystick-Adapter (now better called "Wiimote2Amiga") finally reached the state of being implemented on professional PCBs using the company PCB-Pool.

2 "USB Datassettes" and 3 "Wiimote2Amiga" Boards are left

USB Datasette

Top: Old version with stripboard and cables. Bottom: New version with just one PCB.
The cables that were required for the connection to the datasette and the C64 itself are now gone and replaced with an edge connector and a female connector. This way it's a little bit more compact and less "wiry".

It even has a "feature" that you get if you design hardware without looking at the port locations.
WHY THERE IS IEC PORT? - Rage-Face from
But as the main purpose of the device is the connection to the datasette without the usage of the c64 itself this is not that of a matter.


Left: STEITEC Evalkit Version, Right: New PCB with everything in one.
The board equipped to my 1200 with plugged in bluetooth stick.
As this project never leaved the evaluation board before, this was my first circuit board with an LPC1768 controller. And of course this leads to some errors that are clearly visible in the photo.....
The current needed to drive this project is reduced by a fifth to 70mA (@5V) which is great for the Amiga 1200 which has a resistor in series at the joystick port effectively reducing the possible current you can draw.
Also the size of the device is now greatly reduced to 48x48 mm and should be small enough to be placed inside the "rear trap door" of an Amiga 1200 to make it even more compact.
To reduce problems with the C64's sound this board offers the possibility to disconnect the power supply of your computer from the device and a port to connect an external 5V source.


In the past I preferred designing with stripboards as they could be developed and debugged easily and incremental. But the beauty and cleannines of real etched PCBs is just untouchable.
As I had a minimum order quantity with boards as small as this I decided to sell the remaining unequipped boards for the cost price if there is interest.

Of course there is no warranty and I'm a little bit pedantic about releasing source code. ;-)


  1. Where are you meanwhile with this datasette ?

    I'm looking for a solution to emulate a datasette with an approach like this.

    What formats are supported, what is working, what do you share ?

    1. I have forgotten something. Is there a game you want me to try?
      Just send me the tape image and I can try to load it and play the first few levels.

  2. I have to admit It went a little bit quite in this blog as I'm a little bit busy with my masterthesis and work. Also I've got a keyboard phase again...

    Well, you can use this circuit as an emulator. The driver supports it. But it is not very userfriendly. Especially rewinding is kinda tedious with the command line tool I've written for it. Games like Turrican (C64) need this if you've lost all your lives and it wants to load the menu again.
    But for single loading games it works great.
    I've never really optimized it for the emulation purpose as I liked to write to real tapes again.

    The supported formats are:
    .TAP (C64)
    .TAP (ZX Spectrum)
    .CDT / .TZX (Amstrad CPC and ZX Spectrum)

    Keep in mind that the TZX format is very complex and offers different block types. Not all block types are supported. I've implemented only the ones I needed for the games I've transmitted. Of course it's possible to implement more.
    But there is one type of block which saves raw audio data inside TZX files. This will not be supported as the usb bandwidth of the current implementation is not high enough.

    If you want to know if it will work you can download the driver and use the simulation mode. It reads the tape file and scans it without actually sending the pulses.

    The software you can freely download on the blog is the linux user space driver. I'm not sure about releasing the sources at the moment....
    There is NO windows driver!

    The schematics I posted earlier should be working. The only mistake is a crossover of read and write at some point. I should refresh it.
    I still have the spare pcbs. If you want to have one I can send you one for the cost price.

  3. I'm sorry that I was so unspecific. Also I was not sure this was still alive.

    The point is that I'm not exactly knowing what I want, at least not on the longer term.

    And probably I didn't use the word "emulating" the way you interpreted it.

    My first usage model is pretty simple : I got myself a C64 in a nostalgic mood and I want to load/save, not to a datasette but to my PC. From what I understand, this would be perfectly possible. On my PC I would get .tap formats that I can convert as I feel. Also the output of emulators I would be able feeding the real machine this way ?

    My second model probably would be to load some of the games floating around on the real machine. Looks like it is fitting also that one.

    My third goal would be just playing around and see how I can stretch this to faster loaders, file transfer protocols, whatever. In that respect I find it a pity you're not releasing the source code :( I don't care for Windows, on the contrary, I'm all Linux. Is there some specific concern you have into releasing it ?

    I don't think I am interested in the pcb, as I would like to place the usb connector a bit more , uh , handy ;)

    1. Well it's of course still alive but this project reached a finished state for me. It does everything I want and it's doing this very well. There is no reason to do modifications to the project at the moment.

      I'm sorry. The driver and device firmware supports only the direction PC->C64/Datasette. Both have to be modified to actually read tape signals that are generated by the c64. The PCB and the Schematics are already prepared for this but I didn't really have a use for this yet as this project is not for tape preservation.

      Your second model is working with this I guess.

      File Transfer could also be possible. I actually did this once as there exist tools to pack a .PRG inside a .TAP and then you can play it. But then again only one direction.

      My concerns on releasing sources is the fact that I have heavy paranoia. As this project is not very known I do have a fear that someone is stealing the code, creates a product of it for sale. The strange thing is that this is even possible now as the hypothetic thief doesn't need the sources to reproduce the device.... I don't know. It's pretty difficult to explain. Maybe I'm a little bit egoistic on the inside with a fear that some one else could do better or I loose control over the sources. :-(
      I think I have to talk to some friends that I'm studying with evaluate about that.

      The fact you don't want to use this pcb is pretty understandable. This sure was a design flaw. But no one is perfect.

  4. Are you still interested in selling the Wiimote solution? I'd be fine with the PCB and the software. Although I'd need to brush up my soldering skills a lot. :)

    1. Again I missused the comment function and posted my reply as a new comment, instead to your post. So just to let you know, look below to get my answer.

  5. Hello there. It's nice that there are people around that have interest.
    I've prepared a soldering map for you and a bill of material which will
    also be part of a next post.

    There are 3 unsoldered PCBs left and I would sell one for 25€ + shipping, which is nearly the self cost price.

    For further private communication please write a mail to
    palmchen1000 at web dot de.

    I was also thinking about selling presoldered boards. But I cannot name a price yet as I don't remember how many hours I've spent soldering the prototype.

    The soldering skills you need should include experience with QFP parts.

  6. Very nice job.

    Where did you bought the datassette edge connector?

    1. Hello there. Thanks.
      I got this one from farnell. It's the articlenumber 1608539.
      But it sure has a problem as it is not a print connector.
      Instead it's normaly used for connecting wires to it which i compensated using a lot of solder to get it on the pcb.
      But I haven't other options apart from ordering from farnell in the USA, which has some more articles to choose from.