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

TZXDuino Firmware 1.16, 1.17, and an updated TZXDuino Instruction Manual

  TZXDuino 1.16 In TZXDuino 1.15.3 I added a bug that lowered the volume of some Spectrum TZX files and all ZX80/81 TZX, O, and P files so they didn't work for many people. I fixed this for 1.16. You can download TZXDuino 1.16 from here.   TZXDuino 1.17 The MAXDuino team added ORIC TAP playback functionality to their firmware which I have adapted to TZXDuino. I don't have an Oric Atmos to test it on so I have been recording the playback and loading on Oricutron and everything I have tried has worked. Obviously things may be different on a real machine. Team MAXDuino have also added a speed up function for Oric TAP files which I will add to TZXDuino 1.18 but so far I have been unable to get it to work correctly. You can download TZXDuino 1.17 from here.   And finally there is the updated instruction manual which now tells you how to access Turbo mode for the Electron, ZX80, and ZX81. It also says for Oric but that has not been implemented yet. You can download the pdf of v...

Arduitape on the ZX Spectrum

How to use the Arduitape with the ZX Spectrum. Sorry I've been a little quiet recently but I've managed to get my grubby little mitts on a ZX Spectrum + 48k and have been testing it with the Arduitape. Unlike the MSX and other 8-bits the only limitations on frequency of the .WAV files is no higher than 22050 Hz due to the limitations of the software used. I was expecting to have all the difficulties of the MSX but I've tested lots of files at different frequencies and they all work fine. I've been using TZX2WAV to do the conversions. Open a command window. Type  tzx2wav -f [desired frequency] [filename].tzx [filename].wav   and that's it. I have been trying to experiment with a programme called OTLA which can output various formats of Spectrum, ZX81, Amstrad, and MSX files that playback at a higher rate and essentially turn a 5 minute loading game in to a 30 second loading game however it outputs at either 44100Hz or 48000Hz which is too high for the Ardui...

New CAS/TZXDuino firmware

New firmware . TZXDuino 1.15.3 Adapted the MAXDuino ID19 code and TurboMode for ZX80/81. To access Turbo Mode for ZX80/81 and Electron please switch Turbo Mode On in the menu Also added UEF Chunk 117 which allows for differing baudrates in BBC UEFs. Added a Spectrum Font for OLED 1306 users converted by Brendan Alford. Option added to userconfig.h Added File scrolling by holding up or down buttons. By Brendan Alford. Download from here. CASDuino 1.24 Added a Spectrum Font for OLED 1306 users converted by Brendan Alford. Option added to userconfig.h Added File scrolling by holding up or down buttons. By Brendan Alford. Download from here.