Skip to main content

Posts

Showing posts from 2015

Latest Software

Here is the latest software release for Casduino (The MSX CAS file playing version). What used to be the Motor Control On/Off button now selects 1200 or 2400 baud speed for faster loading. We have tried 3600 baudrate but it's too much for the software. There is some scrolling of filenames but it is buggy.


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.

An Early Christmas Present For MSX Users.

Thanks to my very good friend and partner in this project, Andrew Beer, there is some exciting news.

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.

One Step Forward One Step Back

The Bad News
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.

Arduitape CasTools


The Ugly
The Ugly isn't accurate b…

It's been a while

It's been a while but a new version of the Arduitape is in the process of being designed and built. We have found new (for us) hardware that contains the audio jack, SD card, and also a MP3/Wav decoder that should make the building easier and free up memory in the Nano so that the conversion to Wav is built in. It will mean a software rewrite as well as the hardware changes so it may take some time, however please watch this space.

A Hardware Tweak And A Plea to Arduino Programmers.

Hardware Tweak

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.

Improving The Interface

Adding Long File Name Support

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

Arduino Uno based Mark III.

Arduino Uno based Mark III.


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.








A few design changes.

VOLUME CONTROL

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 boar…

How to get files running on your computer.

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.
MSX
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 th…

Optional extras and housing the unit

Optional Extras
The reset switch build is simple. Use a 5 hole by 5 hole piece of veroboard, connect the button to the centre, cut the copper strips in the same way you did on the button board, solder two wires and connect one wire to the RST pin and one to the standalone ground pin.

The 5v adapter jack is constructed in a similar manner to the 2.5mm jack. Solder a wire to each of the connectors and connect one to the GND and one to the VIN. If when you connect an adaptor nothing happens then switch the wires over.


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.










My Project boxed.                                                                           Andrew Beers Project boxed.

The final steps

The final step is building the Button Board and the connecting everything together. The Button Board.
For this you will need the following. Veroboard I use (10 x 20 holes with the copper strips running horizontally) 5 x Buttons.
6 x Right Angle Male Pins.
Jumper wire.









Top view of the Button Board.

Flip the board over and cut the copper strips where indicated.










Bottom view of the Button Board.

That is most of the construction done. The only things left to do is cut off one end off two dupont wires (for ease make sure one is black) and solder the wires on to the connectors of the 2.5mm port.


ASSEMBLY

This is where it gets complicated. First we will connect the LCD screen to the Nano board.

Use 4 dupont wires and connect to the pins on the back of the LCD screen. The wire on the pin marked VCC goes to a 5v pin. GND to a Ground pin. SDA goes to pin A4 and SCL to A5.

Now the SD Card Slot.









CS to D10 SCK to D13 MOSI to D11
MISO to D12
VCC to 5v
GND to Ground
 Your SD card reader may have it&…

How to build the circuit boards.

And now on to construction.

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.
Jumper wire.

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.



C1, C2, and C3 are the 4.7nF Capacitors
C4 is the 100nF Capacitor.



Top view of Audio Filter Board.
Now flip the board over and cut the copper as indicated.











Bottom View of t…

What you need.

For this build you will need the following

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.

Optional.
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.

In the beginning.

This is just a test post to see if I know what I'm doing when writing a blog on how to construct the Arduitape project.







A taster of what the final product can look like.