Show Posts
Pages: 1 ... 21 22 [23] 24 25 ... 27
331  Topics / Device Hacking / Re: Serial communication: Xbee bridge on: January 29, 2011, 07:30:29 pm
That is easy!
You will need a MAX232 chip on each XBee module, also a 3V power supply for each module.
Once you have them wired up it will be the same as having a cable.
332  Using Arduino / Project Guidance / Re: Tablet serial to 128x64 lcd on: January 29, 2011, 04:34:22 pm
As the other guys have said get to know how to use your LCD first.
Then look at the output from the tablet by logging the data to a terminal program on your PC.
The tablet output is usually not that complex for a serial one, I managed to write a driver for a big old Wacom for my old Mac Plus in a few hours.
333  Using Arduino / Project Guidance / Re: Video and control over rf on: January 29, 2011, 04:31:13 pm
I've been experimenting with AirStream A/V modules for audio and video, at the same time as having XBee operating.
As well as Bluetooth and all the WiFi going on here, I've not noticed any video problems.
I picked up an MSI TV tuner/video dongle for $50 and I use that to digitise my received video, then I use VLC to stream video around my network.
There is no reason to have all your data going over a single RF link.
334  Using Arduino / Project Guidance / Re: Which Arduino board? on: January 29, 2011, 04:23:45 pm
I've found the Mega and the SeedStudio Mega clones to be GREAT!
4 UARTs! No messing around with software serial, more IO than you can shake a digital stick at!
For really simple stuff, I bought 10 ATMEGA 328's with the Arduino boot loader, they cost me AUS$6 + crystal + a few other components, total cost was less than AUS$20.

I was messing around with my Duemilanova for ages trying to get soft serial to work, I had a GPS module, XBee modem, serial LCD display and found it frustrating.
As soon as I got my MEGA all 3 devices just worked!

335  Forum 2005-2010 (read only) / Bugs & Suggestions / Re: Is anyone using Forth in their Lilypad? on: October 23, 2010, 08:10:17 pm
I just downloaded amforth, I'll try using it on my Mega and tell you all how I go!

I've been using Forth (and PostScript) since the '70's!

It's a great language, some of my favourite programs were written in Forth.
The most conspicuous example is the desktop planetarium program, "Voyager"
336  Forum 2005-2010 (read only) / Syntax & Programs / Re: SD, microSD, fat, et al on: November 17, 2010, 04:06:21 pm
Thanks for that pull up tip on input pins, I was looking at the ATMega 1280 data sheet, then wondering how that translated to the Arduino language.

I'll still try and get the SD card to work, purely for the intellectual exercise, but...

After reading the docs that come with the various libraries and seeing how big they are and how much overhead is involved with using a DOS based storage medium, I had to ask myself...

Is this really worth it?

I've written code to read and write DOS files on x86 machines, in x86 assembler so I know how much hassle it is.

So I've ordered 8 24LC256 I2C EEPROM's.

For what I want to do a 1Gb SD card is over kill!
Each 24LC256 is 32K, that is a LOT of way points and data!
8 of them will give me 256K, even more way points and data!
8 x 24LC256's is still cheaper than a 1G SD card, I have an 8M SD card here some where but most of my gadgets don't like it.

Realistically if I need more than 256K of storage I'll just use one of my eee netbooks or get a Beagle Board.

This "Tricorder"/navigation aid/dog tracker thingy has an XBee module in it anyway and the code to dump data to a Processing sketch on my eee is a lot less hassle and takes up less Flash.

Thanks to every one that has made suggestions, it really has helped and as I said I'll have a go at getting the SD card to work just for the hell of it.

Live long and prosper!

Spock out  :-)

ps added a MLX90614 temperature sensor!
337  Forum 2005-2010 (read only) / Syntax & Programs / Re: SD, microSD, fat, et al on: November 16, 2010, 08:50:12 pm
I've been trying to find a schematic for the DFRobot module, with no luck.
When trying to get the SD module to work, it is the only thing on the bus, going with the KISS principle! :-)

Which SD library should I be using, I've tried all the ones I can find.

Just looked at the module with a 12x magnifier, there is a voltage regulator with decoupling caps and voltage dividers acrross the signal lines.

The regulator has a weird pin-out, but it's getting 4.80V and outputting 3.30V with no card.
Just measured it and having a card doesn't change the regulator o/p.
Checking with the AC range on the meter I can see no ripple.

The SD cards I've tried are all 1G, Sandisk, Lexar and some re-badged DSE & MTV cards.

I was considering getting a Sparkfun level shifter module, but isn't that what the voltage dividers on the module do anyway?
How do I enable the internal pull-ups?

At this point, I'm considering using an I2C memory chip or a whole bunch of static CMOS RAM with battery back up!

If I need something like one of my eee's to read the data anyway, I'm thinking it'll be less hassle to use ALL the pins on my Mega!
I mean, isn't that what they are for? :-)
338  Forum 2005-2010 (read only) / Syntax & Programs / Re: SD, microSD, fat, et al on: November 16, 2010, 02:26:46 pm
I managed to get the Spargun uSD to give me error messages after I posted last night, that was as far as I got.

It was my understanding the DFRobot SD module had the logic level issues dealt with.

One important point I'm not sure of is, are the pull up resistors needed for level shifting or termination?

After I wrestled with the SD module for a while I tried my barometer, FPU and LCD shield again, this time all together on the Duemilanove, they worked no problem!
Same goes for the barometer and FPU on the Mega.
I do find it odd I can't get the Adafruit library to compile.

Spock out...
339  Forum 2005-2010 (read only) / Syntax & Programs / SD, microSD, fat, et al on: November 16, 2010, 06:54:22 am
Has anyone gotten SD or uSD card access to work with the Mega?
I just tried a Sparkfun SD shield on my Duemilanove and no luck.
I've also tried a DFRobot Arduino SD Data log module on my Mega and not a squeek!
The Sparkfun examples compile but didn't work with either configuration, uSd shield on my Duemilanove or the DFRobot module on my Mega.
I've remapped the SS,MOSI, MISO and SCK pins on the Mega to 53, 51, 50,and 52 respectively.
It's not an SPI issue, as I've gotten my MPL115A1 barometer and uMFPU-V3 floating point co-processor to work (cool chip by the way)

I'm building a "tricorder"/navigation device thingy.
I want to log way points, temperature, humidity, altitude, speed, distance covered.
So far I have my HMC6352, RTC1307, GPS, one of those HUGE 160x128 LCD screens Sparkfun sell and a groovy custom keyboard I designed and built.
I am also adding an XBee module to communicate with a cut down version of the main unit that will be attached to my dogs.
The "satellite" units will just have a GPS, Mega and XBee module.
All of this stuff is working, except the damn SD card!

Can anyone help?

What am I doing wrong?

If all alse fails I'll go for a Processing scetch running on my eee 701 logging data.
All of that
340  Forum 2005-2010 (read only) / Troubleshooting / Re: Sparkfun GPS shield not playing nice on a Mega on: August 28, 2010, 01:26:25 pm
OK, desoldered the links, ran a jumper pair from the GPS shiel to Pins 14 & 15, works a treat!
I would still like to see the software serial work, I might get my VT132 out and try "plain text"

Here is Aaron Wiese's Code with my Mega mod

  Aaron Weiss
  SparkFun Electronics
  Example GPS Parser based off of TinyGPS examples.
  Parses NMEA sentences from an EM406 running at 4800bps into readable
  values for latitude, longitude, elevation, date, time, course, and
  For the SparkFun GPS Shield. Make sure the switch is set to DLINE.
  Once you get your longitude and latitude you can paste your
  coordinates from the terminal window into Google Maps. Here is the
  link for SparkFun's location.,+-105.20997
  Uses the NewSoftSerial library for serial communication with your GPS,
  so connect your GPS TX and RX pin to any digital pin on the Arduino,
  just be sure to define which pins you are using on the Arduino to
  communicate with the GPS module.

// In order for this sketch to work, you will need to download
// NewSoftSerial and TinyGPS libraries from and put them
// into the hardware->libraries folder in your ardiuno directory.
// Here are the lines of code that point to those libraries.
// 28/08/2010
// I could not get the NewSoftSerial Drivers to work
// on my Arduino Mega with the Sparkfun GPS shield.
// I desoldered the 2 jumpers, then jumpered the GPS's Rx to Pin 14, Tx to Pin 15
// This is UART3
// As PaulS pointed out, why use soft serial on a board with 4 UART's?
#include <TinyGPS.h>

//Set this value equal to the baud rate of your GPS
#define GPSBAUD 4800

// Create an instance of the TinyGPS object
TinyGPS gps;

// This is where you declare prototypes for the functions that will be
// using the TinyGPS library.
void getgps(TinyGPS &gps);

// In the setup function, you need to initialize two serial ports; the
// standard hardware serial port (Serial()) to communicate with your
// terminal program and another hardware serial port (Serial3()) for your
// GPS.

void setup()
  // This is the serial rate for your terminal program. It must be this
  // fast because we need to print everything before a new sentence
  // comes in. If you slow it down, the messages might not be valid and
  // you will likely get checksum errors.
  //Sets baud rate of your GPS
  Serial.println("GPS Shield QuickStart Example Sketch v12.u");
  Serial.println("       ...waiting for lock...           ");

// This is the main loop of the code. All it does is check for data on
// the RX pin of the ardiuno, makes sure the data is valid NMEA sentences,
// then jumps to the getgps() function.
void loop()
  while(Serial3.available())     // While there is data on the RX pin...
      int c =;    // load the data into a variable...
      if(gps.encode(c))      // if there is a new valid sentence...
        getgps(gps);         // then grab the data.

// The getgps function will get and print the values we want.
void getgps(TinyGPS &gps)
  // To get all of the data into varialbes that you can use in your code,
  // all you need to do is define variables and query the object for the
  // data. To see the complete list of functions see keywords.txt file in
  // the TinyGPS and NewSoftSerial libs.
  // Define the variables that will be used
  float latitude, longitude;
  // Then call this function
  gps.f_get_position(&latitude, &longitude);
  // You can now print variables latitude and longitude
  Serial.print("Lat/Long: ");
  Serial.print(", ");
  // Same goes for date and time
  int year;
  byte month, day, hour, minute, second, hundredths;
  // Print data and time
  Serial.print("Date: "); Serial.print(month, DEC); Serial.print("/");
  Serial.print(day, DEC); Serial.print("/"); Serial.print(year);
  Serial.print("  Time: "); Serial.print(hour, DEC); Serial.print(":");
  Serial.print(minute, DEC); Serial.print(":"); Serial.print(second, DEC);
  Serial.print("."); Serial.println(hundredths, DEC);
  //Since month, day, hour, minute, second, and hundr
  // Here you can print the altitude and course values directly since
  // there is only one value for the function
  Serial.print("Altitude (meters): "); Serial.println(gps.f_altitude());  
  // Same goes for course
  Serial.print("Course (degrees): "); Serial.println(gps.f_course());
  // And same goes for speed
  Serial.print("Speed(kmph): "); Serial.println(gps.f_speed_kmph());
  // Here you can print statistics on the sentences.
  unsigned long chars;
  unsigned short sentences, failed_checksum;
  gps.stats(&chars, &sentences, &failed_checksum);
  //Serial.print("Failed Checksums: ");Serial.print(failed_checksum);
  //Serial.println(); Serial.println();

This works really well, I'll do the same mod with my XBee shield on Uart 2.
341  Forum 2005-2010 (read only) / Troubleshooting / Re: Sparkfun GPS shield not playing nice on a Mega on: August 28, 2010, 11:53:50 am
I'm just trying to get the GPS talking.
As to how it's wired?!
It's a sparkfun gps shield, on an Arduino Mega!

I'd say it was definitely the soft serial, I've now gotten data from the gps, going in through uart1 or 0,
I think I will use uart 3 on pins 14 & 15.

I would still like to see the softserial work though, using my mega embedded in a project is expensive overkill.

But taa anyway...
342  Forum 2005-2010 (read only) / Troubleshooting / Sparkfun GPS shield not playing nice on a Mega on: August 28, 2010, 10:27:07 am
Has anyone had success getting the Sparkfun GPS Shield to work on a Mega?
At all?

I can't get a squeek out of any of the demo programmes on my Mega.
Are there known issues with Mega compatability?
I've heard about the Ethernet shield having issues.

I'm using the TinyGPS and NewSoftSerial libraries.
Neither the Sparkfun quick start demo or the TinyGPS demo display out put from the GPS.
I see the start up message, but I think I'm having issues with the software serial connection to the Mega.

The UART/dlink switch on the GPS shield is in the dlink position.
softserial is set up like this

#define RXPIN 3
#define TXPIN 2
#define GPSBAUD 4800


GPS Shield QuickStart Example Sketch v12
       ...waiting for lock...          

I get diddly.

The NewSoftSerial and TinyGPS don't have much documentation.

Any idea's?
My only option now is to get the storage CRO out of storage.
343  Forum 2005-2010 (read only) / Interfacing / Re: VHS Data storage on: January 24, 2011, 01:05:31 am
VCR tape back up doesn't use black & white pixels, it works by writing PCM encoded data.
When you are thinking video streams in terms of data, think a 7Mbit/second data pipe.
You can do the same thing with a video sender.
Plus with an A/V sender you also get 1 or 2 - 9600 baud data channels as well.
Just remember to keep signal levels @ 1V peak to peak.

344  Forum 2005-2010 (read only) / Interfacing / Re: VHS Data storage on: January 24, 2011, 12:09:51 am
If you want to go the audio cassete way, the best method is bi-phase data encoding, which is what the "Kansas City" standard was all about.
Basically the clock and data are combined into a single serial stream.
This makes it a lot more tolerant to things like tape  stretching and the effects of "wow and flutter".

I'll have to dig out my old note from "back in the day".
This is the second time where I've talked about biphase encoding/decoding.
For low bandwith comms or data storage it's a really easy, reliable technique.
345  Forum 2005-2010 (read only) / Interfacing / Re: VHS Data storage on: January 23, 2011, 05:24:11 am
I used to back up harddrives, 5M, back in my Apple 2 days.
The thing that will be hardest to overcome is your common or garden variety VHS deck is pretty sloppy timing wise.
The horizontal lock on ananlog TV is pretty tolerant of these variations, but the Corvus harddrive backup unit had real problems coping.
We ended up having to buy studio or broadcast quality decks for our customers.

When Sony first released the F1 PCM recorder that was a companion unit to their first model of CD player, you had to use a particular model of VCR.
It was all interconected by incredibly expensive 100 way cables.

Each line of video is 63.5 uS, followed by an 8 uS horizontal sync pulse.
There are 2 fields of 312.5 lines, at the end of each field is an 11uS verticle sync pulse.
Then a 22 uS vertical retrace period.

If you only stored say, 100 bytes/line, which would give you about 3k bytes/field.
With a 15625kHz line rate, @100 byte/line, you'd have to clock data out @1562.5kHz.
Straight up it would need a Mega, just for the buffer.

At the end of the day it seems like a lot  of hassle just for the intelectual exercise!

You could go really retro and build an audio cassette interface!
It would be a lot less hassle and you could use it for other things, like a laser data link or go nuts and communicate between two Arduinos with tin cans connected by taught string.
Which I have done! It was pretty funny!
Pages: 1 ... 21 22 [23] 24 25 ... 27