Wednesday, 30 December 2015
If there are any programmers please feel free to improve on the code and let us know.
Let me know of any problems with link.
Thursday, 24 December 2015
It's still in it's early stages and everything isn't quite functioning properly yet but we have an Arduitape playing .CAS files without conversion. More testing is needed and it's at 1200 baud so the loading is slow but it's most definitely a start. It also has LFN support too so hopefully if we get the scrolling working, it will be even more functional.
Thursday, 10 December 2015
In the last blog I said I was trying some new hardware. It was a nice cheap MP3 player SDcard combo that would've taken the need for some of the libraries out of the Ardui code and freed up memory for conversion on the board.
Unfortunately the MP3 player could not recognise filenames and would not be able to display them on the screen making it difficult to choose what games you wanted to play and making that board a dead end.
The Good News
Whilst playing with the MP3 player we realised that some games didn't convert properly with cas2wav at any frequency so whereas we thought it may have been a frequency issue it was actually a conversion issue when using players. By adding a couple of seconds silence at the end of each WAV all loading issues have been solved even at higher baud rates so now the only games with issues are bad archives.
The new version of CasTools for MSX games can be found at the following link.
The Ugly isn't accurate because the next step for Arduitape I'm hoping will be beautiful but it is a major step and a test of my abilities.
After finding cheap STM32F4 Discovery boards on the internet I'm hoping to convert the project to that board and set of chips. This will be able to do all the conversions for all machines on board without anything having to be done beforehand by the user. It will also mean less construction so it will be much easier to build.
However the change in code and the coding skills required is ugly.
Also Andrew Beer is still working on the original to see if it is possible to do the conversion on board. The project is still very much alive.
I will keep you all updated
Saturday, 31 October 2015
Sunday, 12 July 2015
My partner in crime, Andrew Beer, has come up with a slight modification to the Amp board to improve the audio output quality. It does nothing to improve how the computer "hears" the files but it is a lot nicer to the human ears.
It's nice and simple. Just remove the Capacitor C1 off the board. (Circled in the picture)
Plea To Arduino Programmers.
O.k. I have to admit defeat here with improving the programming. I need help from anyone who can either add or tell me how to add LFN support and maybe a basic loading animation and possibly even some sort of display of a countdown as to what's left to play of a file. Later on I will also need your help to see in onboard conversion to wav is possible. Big ask I know but it would be nice to get the project moving forward again.
Friday, 3 April 2015
After building another Arduino based cassette player replacement ,Tapuino for the C64, and seeing how their interface works we have decided that LFN support would be a good idea for the Arduitape.
This requires the usage of a different library. At first we'd hoped it would be a simple update of the SDFat library without a code rewrite but as with most projects the simple answer didn't work.
I'm now looking into using Arduino-FatFS by Gallegojm which is based on Petit FatFS by ChaN. It may require a code rewrite though.
You can find Arduino-FatFS here. https://github.com/gallegojm/Arduino-FatFs
Saturday, 14 March 2015
In a bid to make the overall dimensions smaller and also easier to build I have built the Mark III which is based on an Arduino Uno board, which is more expensive but a more reliable USB port and a built in DC power in port.
The button board is still the same but there is a slight change in the design of the filter board.
I may have left off one extra ground pin on the design.
Because of how the Uno is built you can connect everything directly to the board using female to male dupont wires. I was lucky enough to have an Uno board with both male and female headers so I had even more flexibility.
And heres the final build.
Thursday, 5 March 2015
Someone who is interested asked about volume control as some 8-bits are sensitive to volume of playback. I had thought about this originally, as I know from experience that the MSX can be tricky, but did nothing more other than to adjust the potentiometer on the amp before I placed the ArduiTape into its housing. However if you are using this on different computers this could be annoying so I've decided to modify the amp.
If you want to do this you will need to get a 10k Ohm variable resistor/amp. Logarithmic is the best type for volume control but linear is cheaper. Also try to get a 3 pin mono as they fit best.
This is the type I got for testing purposes.
Desolder and remove the existing potentiometer, very carefully and add 3 single pins into the holes left behind.
Once that is done take 3 dupont wires and remove the connectors off one end and solder the wires to the pins on the new potentiometer. Connect the wire from the middle pin to the middle pin on the amp board and connect the outside pins on the potentiometer to the outside pins on the amp.
This is what mine looked like after I'd done it. obviously the potentiometer is too big but I wanted to test the theory first.
Redesign Of The Button Board
For the Button Board I have redesigned it so that the buttons are on the under side as that way they will fit more snug in to the housing and will protrude more for easier use.
Bottom View Of the Button Board.
Top View Of The Button Board
Pin connections labelled.
Wednesday, 25 February 2015
At the moment ArduiTape can only play .wav files and these .wav files have to be below 20kHz due to limitations of the Arduino Nano. We hope to be able to get the conversions done automatically by the Nano board eventually but development is in an early stage as we've been focusing on getting the boards working first.
Arduitape does support sub directories but to move back and forth you need to create a file called ROOT with no extension. This can be done using a text editor like Wordpad. Create a new file, save as ROOT.txt and then rename the file and delete .txt. Put the file in every subdirectory on your SD card.
Another thing worth noting when loading 2400 baud wavs is that sometimes the wav will stop playing and it will look like the game hasn't loaded. Just press play and wait 5-10 seconds and the game will start.
For the MSX we have adapted a version of CASTools to convert .CAS files into .wav files at the right frequency to work with the ArduiTape. This 14400Hz for those who are interested. This works perfectly for most .CAS files at both 1200 and 2400 baud (2400 baud loads the games faster), however CASTools has a known issue with Gremlin Graphics games and a few others. We have found that the games that do not work with CASTools do work with Tapdancer though and Andrew has managed to create a programme that converts Tapdancer files into usable .WAV files at the right frequency.
CASTools for ArduiTape
To use just double click on CASTools and drag a .CAS file into the window. Choose if you want the .WAV to be at 2400 baud or not and then convert.
Tapdancer File Rip.
To use copy all the files from the tapdancer folder of your Android device to the files folder and then run Tapdancer File Rip.exe as Administrator. The .wav file you want to copy to your ArduiTapes SDCard is the 14400.wav file. Just rename it to the name of the game.
As the MSX has many different load commands and Arduitape cannot handle long filenames I recommend creating folders named after the load command the game requires. E.g. All games that use the bload"cas:",r command go in a directory called Bload.
For the Electron find and download UEF2WAV to convert the .UEF files and then use a programme like Gold Wave to Amplify the .WAV and then resample to 16000Hz. Your .WAV file should now be compatible with Arduitape.
At the moment there have only been 2 Arduitapes built and they have only been tested on the MSX and Electron. If you build one for use with another computer let us know so we can work with you to get it working on that system.
Housing the ArduiTape
I bought my project box from Maplins as they have a wide range of project boxes. Always make sure when you do house your project you allow more room than you actually need as the wires do take up a lot of room.
Tuesday, 24 February 2015
For this you will need the following.
6 x Right Angle Male Pins.
Top view of the Button Board.
Flip the board over and cut the copper strips where indicated.
This is where it gets complicated. First we will connect the LCD screen to the Nano board.
Now the SD Card Slot.
CS to D10
MISO to D12
VCC to 5v
GND to Ground
Now to connect the Button Board.
The Filter Board and the Amp.
In to Amp in on the Filter Board
Both GND pins to the Ground Pins on the Nano Board.
On my Amp the is a green socket for two wires that go to the 3.5mm Socket I used a red wire for the in and Black for the GND and soldered the other ends to the 3.5mm socket.
The final piece of teh puzzle is the 2.5mm Motor Control socket. One wire goes to D6 and the other goes to the hopefully final Ground Pin.
The final piece of the puzzle is to programme the Arduino.
You should find the relevant .rar file here.
Monday, 23 February 2015
For the Nano Circuit board you will need the following
Veroboard (I used a piece 13 holes by 19).
32 DIL Wide Socket.
28 Male Pin Headers.
Cut the jumper pins to the following
3 x 1 Pin
2 x 2 Pins
2 x 4 Pins
1 x 6 Pins
1 x 7 pins
Make sure the copper strips on the veroboard are vertical and on the underside of the board.
Top view of the Nano Board.
When you have soldered all the components flip the board over and remove the copper strips where indicated. Be very careful not to cut yourself.
Underside view of the Nano Board
When completed it should look something like this.
Now on to the Audio filter. You will need the following.
Veroboard (I used a piece 9 holes by 15)
4 x 4.7k resistors.
3 x 4.7nF Capacitors
1 x 100nF Capacitor
3 x Male Pin headers.
Cut your male pin header into single pins.
C4 is the 100nF Capacitor.
Top view of Audio Filter Board.
95x54mm of veroboard or larger.
1 x Serial I2C 1602 16x2 Character LCD Module
1 x Arduino Nano V3.0 (or cheap knockoff)
1 x Micro SD Storage Board For Arduino
1 x DIL32 Wide Socket
4 x 4.7k Resistors
3 x 4.7nF Capacitors
1 x 100nF Capacitor
1 x LM386 Audio Amplifier
1 x 3.5 mm Female Jack
1 x 2.5 mm Female Jack
5 x Tactile Buttons
A strip of Male Pin Headers
A strip of Right Angle Male Pin Headers
Some jumper wire
Some female to female Dupont cables.
1 x Tactile Button for a reset switch
1 x DC Socket Charger Power Jack Plug if you do not trust the USB socket to provide adequate power for the Arduino Nano.
All of these can be found relatively cheaply on eBay just make sure you check where they are being delivered from as it takes up to 4 weeks to get to you from China.