Different GPS ok? And SD Card how?


Ive started playing with the arduino and love it... Ive managed to get on with making several projects today and have found that programming is where I fall short and need practice.

I wish to build the vehicle telemetry system out of practical arduino, however I want to make two hardware changes and wish to know that they are ok:-

  1. I think this is ok - I wish to use a GTPA010 gps unit instead of the far more expensive LS20031 given in the project. As I understand it all serial GPS units communicate over the same NMEA protocol so I shouldnt have to make any code adjustments other then possibly baud rate selection for this unit?

  2. I do not see any point or reason to use USB mass storage so wish to store data on an SD card. I have got an sd card 'board' which simply seems to mad the sd card's connections to pins. How hard is this to do and how would I go about doing this? Would it make the project fail for any reason? I am using a MEGA 2560.

Any help will be greatly appreciated,

Thank you


You should be able to use a different GPS. In the worst case it won't support the same NMEA messages but it should have the same data available.

The SD card needs a 3.3v power supply and 3.3v data signals. The good news is that 3.3V data signals from the SD card (MISO) can be connected directly to an Arduino 5V input. You can use voltage dividers on the Arduino 5V outputs (SS, SCK, MOSI) to get 3.3V-compatible signals. I just used two equal resistors (between 1K and 10K) between the Arduino pin and Ground. The point between the two resistors has a 2.5V signal that works fine with 3.3V inputs.

Thats brill thanks... :slight_smile:

What about adapting the code to write to SD rather then the USB mass storage via the host chip thing they used?

What about adapting the code to write to SD rather then the USB mass storage via the host chip thing they used

I’m not familiar with the project you are basing this on, so I can’t speak definitively about how the USB device was implemented. However, writing to a SD card is significantly less complicated than writing to a USB device. In order to write data to a USB device, you need to work as a USB host.

The SD Card just uses the hardware SPI on the ATmega chip.

There are libraries and examples of how to use SD Cards and read/write files.

Thank you James,

I am going to order the parts I dont have and give it a try :slight_smile:

They implemented it using a VinculumVDP1 single-port USB module so I was worried that the code may be too hard to modify back to an SD card.

Has anyone got experience of the VinculumVDP1 single-port USB module? Its a cool bit of kit but expensive, bulky and unnecessary for my application. Is talking to it much different then an SD card?

Thanks again,