Arduino
Considering buying an SD tape emulator for your retro computer? Well here is a nice checklist to help you choose:
- Make sure the device has an AMP circuit to boost the volume. Time and time again low powered devices have proven to fail while loading games. You might get away with loading some games but essentially you need an AMP.
- In one scenario an AMP by itself might not be enough if you have a deaf computer. Deaf computers need more than volume on the characteristics of the audio. The Deaf computer issue is not limited to ZX Spectrum. You could experience this with other computers. Make sure the device can accommodate this issue.
- If you are planning to use a device as a wave player running Arduitape or Digiwavuino make sure the audio circuit contains a low-pass filter.
- If you need the device for MSX, Dragon, Acorn/BBC, or Oric make sure the sd device has a remote socket. Without it, it is useless. A lot of games on these computers like to control how the games are loaded by pausing the tape from the game automatically.
- If you need a device for multiple computers at the same time be careful on buying a device based on an Arduino Nano. The Arduino Nano is limited on memory. This is ok when you have a few retro computers. Check out the Maxduino Ultimate which is based on the Atmega 4808 chip and has double the memory and can support 2-3 times computers in one device.
- Check to see if the vendor offers an easy way to update the device. Most of these devices are programmed using the Arduino IDE. If you don’t know what you are doing it can be a bit daunting. That is why we developed an easy flash tool called TZX_Tools which runs on Windows that allows you to flash TZXduino, CASduino, Arduitape, Digiwavuino, and Maxduino without knowing how to code.
- Some TZX player apps claim to be multi-load compatible. Multi-load is where the game loads in stages and if you were loading it from cassette you’d be expected to manually pause the tape. Now the only software that truly supports Multiload TZX files is Maxduino. Maxduino monitors for a “stop tape” block and automatically stops the game load. Nothing on the market can do this in the same way.
I hope you found these tips useful..
Someone gave me an idea to document the firmware feature differences that the TZX_Tools firmware tool supports. TBH It is a good idea so we can dispel the myths and views on the different firmware as they all do something a little different. From this table, you can see why I prefer MaxDuino. Even more than my own firmware Digiwavuino. I’m sure over time I’ll have to update it and I’m sure there will be 1 or 2 incorrect entries but this is my view on the features.
FYI TZX_Tools is a tool that allows for simple updating of devices running the below firmware.
Feature | MaxDuino | TZXduino | CASDuino | ArduiTape | Digiwavuino |
OLED | Y | Y | Y | Y | Y |
LCD | Y | Y | Y | Y | Y |
8544 SCREEN | Y | Y | Y | Y | Y |
RGB LCD | N | Y | Y | Y | N |
ROTATE OLED | Y | N | N | N | N |
DYNAMIC SCREEN DETECTION | N | N | N | N | Y |
DYNAMIC SD DETECTION | Y | N | N | N | Y |
CHANGE SD CARD WITHOUT RESET | N | N | N | N | Y |
TAP FILE | Y | Y | N | N | N |
O FILE | Y | Y | N | N | N |
P FILE | Y | Y | N | N | N |
TZX FILE | Y | Y | N | N | N |
TSX FILE | Y | N | N | N | N |
CDT FILE | Y | Y | N | N | N |
UEF FILE | Y | Y | N | N | N |
CAS FILE | Y | N | Y | N | N |
WAV FILE | N | N | N | Y | Y |
REMOTE JACK FOR MULTILOAD | Y | Y | Y | Y | Y |
MUTLILOAD GAME SUPPORT FOR ZX SPECTRUM | Y | N | N | N | N |
ARDUINO NANO | Y | Y | Y | Y | Y |
ARDUINO UNO | Y | Y | Y | Y | Y |
ARDUINO MEGA | Y | N | N | N | Y |
ARDUINO NANO EVERY | Y | N | N | N | N |
THINARY EVERY | Y | N | N | N | N |
STM32 | Y | N | N | N | N |
STORE LOGO IN EEPROM | Y | N | N | N | N |
ENHANCED SDFAT SUPPORT | Y | Y | Y | Y | Y |
RECORD FEATURE | N | N | N | N | Y |
Disclaimer in the DigiWAVuino record feture: Whilst the program logic is in the firmware there is an issue with the audio driver which is an opensource library. I’m exploring other options.
I realized very early on, that people wanting to update their TZXduino, MaxDuino, CASduino, or ArduiTape would struggle if they had no experience with the Arduino programming tool. So I built a FREE tool to do that for you in a way to give back to the Retro Community. Watch the video below and CLICK HERE if you want to download the tool.
We developed an Arduino Board Tester. We quality test Arduino boards before
We just had a delivery of some robot car kits. The idea is to build your own robot car and add a microcontroller on top so you can control it through code. Not had chance to play with one yet but if you want to check them out here is where you can purchase them > Click Here <
Below is a short video showing how to set up an LCD displaying using an IC2 serial module to an Arduino. Mentioned in the video is a sketch for using the LCD panel which is displayed below this text and a sketch to find the address of the IC2 adapter you can find by click here.
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#define I2C_ADDR 0x3F
LiquidCrystal_I2C lcd(I2C_ADDR, 2, 1, 0, 4, 5, 6, 7);
int led = 13;
void setup () {
lcd.begin(16, 2);//16 columns 2 rows for 1602A
lcd.setBacklightPin(3, POSITIVE);
//lcd.setBacklight(HIGH); // NOTE: You can turn the backlight off by setting it to LOW instead of HIGH
lcd.setBacklight(LOW);
lcd.clear(); // clean screen and sets cursor to (0,0)
// initialize the digital pin as an output.
// will not blink without it
pinMode(led, OUTPUT);
}
void loop() {
lcd.setCursor(0, 0);
lcd.print("YouMakeRobots");
digitalWrite(led, HIGH); // turn the LED on (HIGH is the voltage level)
lcd.setBacklight(LOW); //turn off backlight
delay(1000); // wait for a second
digitalWrite(led, LOW); // turn the LED off by making the voltage LOW
lcd.setBacklight(HIGH); //turn on backlight
delay(1000);
}
You can find all the components needed by clicking here.
This is a short video showing how to set up a Stepper Motor with an Arduino Mega.
You can find the components from this video by clicking here.
UPDATE: I FOUND THAT TO MAKE COUNTER-CLOCLWISE WORK YOU HAVE TO SWITCH PINS IN2 and IN3
Very quick simple video showing how to set up an SG90 Servo Motor with an Arduino.
All components can be found by Clicking Here
We’ve been busy bees and developed an alternative solution for those wanting to keep Retro Computers alive by playing games and apps digitally through the audio ports originally designed for a tape deck.
DigiWavuino is an Arduino wav player designed for playing back Retro Computers games and app files that come in wav file format. It differs from other similar projects like ArduiTape or CASDuino in that it was developed with Arduino boards that have a DAC port like Arduino DUE or Arduino Zero. This is a must for those Retro Computers that are sensitive about audio quality. The previous projects played audio through a PWM port instead of a DAC. Retro Computers like the Sharp MZ700 will not load games that have been played through a PWM port.. So enter DigiWavuino.
Here is the parts list for the DUE version:
https://tinyurl.com/y9jv5b7h
https://tinyurl.com/ybw7ovo2
https://tinyurl.com/y7gllja5 this one doesn’t have the IC2 jacket but best get one with
Soon we’ll start adding blog posts here demostrating new stuff and Arduino Projects we’ve done previously. Watch this space.