Increasing GPS device (EM 406a) baudrate

Default baudrate of EM406a GPS device is 4800 baud. Then this baud rate dictates entire communication of serial port on ArduPilot - also those for Serial OUT (telemetry).Here's simple way how to permanently increase baud rate of EM 406. Once done, the device will remember the baudrate, and you can increase serial speed in ArduPilot code.1) Temporarily connect your GPS directly to FTDI cable:

Pin connection:FDTI GPSblack <-> 5 (from right)red <-> 1orange <-> 3yellow <-> 4Note: I used original half-cut cable + connector left by this cable modification. No soldering, just careful wire plugging into FTDI connector.2) Connect FTDI cable, and check if GPS works in RealTerm using default baudrate 4800:

3) Switch to Send tab in RealTerm:

and1) type command $PSRF100,1,19200,8,1,0*38 in marked field2) check +CR +LF line-ending3) click "Send ASCIIThis will configure your GPS device for 19200 baud rate.I didn't test with higher baud rates, but if you change it, you'll need to recalculate command checksum (*38 at end), otherwise GPS won't accept the command.4) Now GPS start to send at 19200 baud, so you'll see some garbage in RealTerm. Go to Port tab, close link (untick Open button), change baudrate to 19200, and Open link again. If you see valid GPS data, then all is OK:

5) In ArduPilot code, search for line Serial.begin(4800);and change it to Serial.begin(19200);Done! You have now faster serial communication in your ArduPilot code. GPS device will remember the baud speed as it has internal battery and memory and keeps the setting.You're now prepared for more data to be sent by telemetry link.
E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • i have installed sirfdemo nd wenever i change my baud rate to 19200 it works very fine for the moment but changes back to itz default 4800. tell me how can i permanentl change it to 19200 or change it to 19200 fora long time coz m tired of changing it again n again
  • Just in case people are having trouble making these types of changes, the way to send these commands with the SiRFDemo software is to go to the "Action" menu and select "Transmit Serial Message..." That brings up this dialog:


    Choose the NMEA radio button and type the serial command into the textbox. Don't type in the "$" or the asterisk or the checksum. It will add that stuff before it sends it to the EM-406a. I tested mine at baud rates up to 115,200 and it seemed to work fine. After you send the serial command and change the baud rate, you'll have to disconnect, change the baud rate in SiRFDemo, and reconnect.
  • 3D Robotics
    The baud rate depends on the GPS module. It's set automatically to 57600 for the EM406
  • Will have to, because my GPS forgot stored settings after some days.
  • So why dont insert on ardupilot a instruction to change the baudrate on startup?
    On startup you can use 4800bps, send setup string to GPS and change Ardupilot bps to new value.
    On next boot if GPS remember the fast bitrate the command run at 4800 bps will be ignored (I suppose!!) and all always work fast..

    Do you agree?
  • hi
    my first EM-406 worked for about 30 seconds and then locked up , i called global sat and the tech said " it switched itself to sirf mode , let it sit for a week and you will be able to use it again " , at this point it had sat for 4 days , without power , so i thought i'll try it , and it was still locked tight

    i had tried SirfDemo to reset it , and SD did not recognize it was plugged into anything , so now i have to wait another week

    but after sitting for a week the capacitor was down and it started back up like nothing ever happened , i have talked to people who say it will reset in 4 days , mine was 6 days , the guy at Global said it was a capacitor

    so it is my understanding that any setting you program into it will reset itself in 4 ~ 7 days if you leave the unit unpowered , probably best to use stock settings , HTH
  • Hi, I have reset my GPS EM406A to factory setting. So simple & easy to change baudrate, switch to NMEA protocol or SIRF protocol too... just give a test, can download from http://www.falcom.de/support/software-tools/sirf/
    this tool marvellous
  • As shown in picture above, I made a very temporal connection on cut connector's wires.
    Maybe it also works if you plug GPS and FTDI to ArduPilot, and program it as described above, then you don't need to make crazy wiring. But I didn't test if it works that way.
  • Michal, I'm using FTDI (bought from Sparkfun). Did you know how to connect it to EM406A? I need to change mine to 9600. Thanks
This reply was deleted.