Skip to main content

MapleTape - Moving towards combining firmwares.

One of my desires when I first thought about this project was to have something for everyone and for users to just be able to put their files onto an SD card and go but to remain cheap. The Arduino Nano was the perfect starting place for that but it quickly showed it's limitations, so now we're trying to port the firmwares over to the Maple Leaf Mini using the STM32Duino add on to the Arduino IDE.

It's still very much a work in progress and there has been a slight hardware change, the original SD card readers we used are not compatible with the Maple Mini, but we have managed to get the Maple Mini version of ArduiTape working and playing .WAV files. Unlike ArduiTape you are not restricted to the frequency of .WAVs you can play and you also do not require a low pass filter to play the .WAVs

What you need.
Maple Leaf Mini
1602 I2C LCD 

TF Micro SD Card Module Mini SD Card Module Memory Module
LM386 Amplifier Module
5 button button board (See earlier blogs for instructions).
3.5mm Audio Jack
2.5mm Audio Jack

Optional: Veroboard and 40 pin IC DIP socket.

I connected my Maple Mini to a piece of Veroboard as I could then add more pins to connect to for 5v and GND which gave me more flexibility.
Normally the Maple Mini is a 3.3v board so you can't power the 1602 from the VCC pins as normal but I have found that if you use a mini USB cable to power the Maple that 5v comes out of the VIN pin and so you're actually able to power the 1602 and the LM386 from that.

Connections
SD card
MOSI        -> Pin 4
MISO        -> Pin 5
SCK/CLK -> Pin 6
CS            -> Pin 8
3.3v          -> VCC
GND         -> GND

1602 I2C LCD
GND         -> GND
VCC         -> VIN

SDA         -> Pin 15
SCL          -> Pin 16

Button Board
Down       -> Pin 17
Up            -> Pin 18
Stop         -> Pin 19

Play          -> Pin 20
Menu        -> Pin 22
GND         -> GND


LM386
VCC         -> VIN
IN             -> Pin 27
GND         -> GND

GND         -> GND

2.5mm Audio
Active pins-> Pin 21
GND          -> GND



Using the Arduino IDE with STM32duino installed you can upload this sketch with it's improved TMRpcm library and play 8-bit wavs.

Next step

Now that I have MapleTape working (Doesn't stop when it gets to the end of the file yet but it basically works) I can try to port CASDuino and TZXDuino over using the same hardware.
Once that is done I can try combining CAS and TZXDuino first and then add MapleTape to it so that all three firmwares will be on one board which will bring me closer to my original idea.

Comments

Popular posts from this blog

New Firmwares With New Features

Thanks to the help of Rafael Molina Chasserot some new features have been added to the TZXDuino and CASDuino firmwares which has freed up some memory as well, which may lead to more features being added in the future.
A percentage counter and a timer counter have been added to all screens so that you know how much is left of a file to play and how long it has taken to load.
The OLED1306 and PCD8544 use completely new routines for the firmwares saving a lot of memory.
Folder navigation is now different. Rather than using the Menu button on TZXDuino or the Stop button on CASDuino to return to the ROOT directory, if you press the stop button when no file is playing you will go up one folder only making it easier to navigate.

TZXDuino
The TZXDuino has had a menu added so that MSX users can set the Baud rate of TSX files so that they can load faster than normal.
A few more emulator only IDs have been fixed so that they are skipped by TZXDuino.

CASDuino
CASduino has had a Baud Rate of 3675 added to…

TZXDuino 1.7

TZXDuino 1.7
This fixes issues with pause lengths that we never noticed before. It should fix games like Top Gun and Street Hawk for the Spectrum and make CDT files behave as they should for the Amstrad CPC.Changes.
*Maximum pause length of 8.3 seconds due to the TimerOne library has been worked around.
*ID20 Pause Block fixed.
*Temporary fix for pause after motor control removed.https://mega.nz/#!aEt1VJKZ!ZFw-fP3bkNTtiPlbG_IllmR94Xni3KvIGUn6Jggfof8

Latest Firmwares

Whilst it may seem there han't been much going on in recent months we have been working behind the scenes on improving and adding more options to the various firmwares and trying to improve the hardware.

The main difference with these firmwares is that OLED 1306 screens are now fully working on all of them and that the PCD8544 has added as a screen option.
I will go into the hardware changes needed for that at a later date.

ArduiTape 1.5
What's New
Added support for the PCD7544.

Download from here.

CASDuino 1.15
What's New
Improved support for CoCo and Dragon
Added support for OLED1306 and PCD8544.

Download from here.

TZXDuino 1.8
What's New
Added ID2A
Added support for PCD8544

Download from here.

TZXDuino 1.8.1
What's New
TSX support for MSX TSX files added by Natalia Pujol. Not officially supported and any bugs should be reported to her.

Download from here.