Search Forums by tag:
Serial, mbed, compiler, ethernet, USB, I2C, SPI, interrupt, LCD, library, bug, HTTPServer, CAN, AnalogIn, adc, Power, Ticker, memory, pwm, SD Card, InterruptIn, rpc, Error, SDFileSystem, PwmOut, LocalFileSystem, UART, canbus, driver, TCP, interrupts, rtos, led, libraries, editor, timer, accelerometer, GPS, file, clock, website, C++, SD, frequency, reset, http, LPC11U24, flash, SDCard, RTC, DigitalIn, TCPSocket, problem, printf, Java, Servo, buffer, UDP, SerialPC, DMA, HTTPClient, Sleep, audio, pinball, MODSERIAL, NetServices, socket, array, compile, filesystem, RFID, beta, m3pi, write, LPC1768, multiple, newbie, keyboard, sensor, GPRS, Forum, digitalOut, assembly, debug, hardware, Speed, xbee, AnalogOut, RPCFunction, EthernetNetIf, Download, code, voltage, wait, network, C, suggestion, JTAG, keil, MATLAB, offline, Board, lwip, I2S, dead, Nokia6610, time, bluetooth, WiFly, current, tcp/ip, MODDMA, SPI Slave, pololu, robot, Communication, read, dac, string, pc, binary, filter, copy, USB Host, publish, rs232, DHCP, Host, Data Logging, windows, firmware, malloc, mp3, PCB, gcc, attach, program, fatfilesystem, class, email, arduino, stepper motor, WavePlayer, wifi, Nokia, camera, size, VGA, import, documentation, ide, linux, baud, TextLCD, Cortex-M0, M0, pointers, pullup, Relay, timing, function, latency, serial port, MIDI, compiler error codes, magjack, touch, screen, Production, client, server, stream, HID, breakout, FIFO, prototype, flashing, GPIO, sampling, Analog, display, api, ADXL345, Encoder, DSP, help, motor, sram, suggestions, PING, Terminal, link, browser, Pin, control, Eagle, Modbus, EEPROM, mac, Timeout, fopen, port, updates, usbserial, batteries, DMX, files, USBMIDI, scanf, protocol, PPP, slave, FTP, integer, noise, MODGPS, modem, float, threads, motors, for, monitor, Digital I/O, 7, Windows Serial Driver, pins, keypad, FAT, classes, webserver, delay, variables, time-triggered, c programming, labview, watchdog, post, math, Battery, LPCXpresso, MBED website, GSM, storage, nxp, mobileLCD, license, int, counter, baseboard, Assembler, Vin, rj45, registers, E289, news, i2cmaster, amoled, Compiling, connect, revision, prototype to hardware, UMTSStick, Optocoupler, Robotics, search, oscillator, glitch, Websockets, load, find, real-time, routine, format, offline compile, powersource, driverlibrary, processing, networking, ID, umts, debugging, color, BUTTON, software, PS3, Images, wave, bin, const, SNMP, OSX, supply, peripheral, sensors, data, Design, PID, version, RIT, character, freeze, USBDevice, bus, ARM, wav, SRF08, heap, output, basic, TFT, QVGA, mysql, piezo, update, ID12, Pachube, player, DigitalInOut, object, cmsis, capture, IR, slow, 1768, PSP, OS, syntax, mbed.lib, EmbeddedArtists, NMEA, paste, project, Web, GUI, UART0, firefox, SQL, wakeup, RAM, bitmap, handler, security, 3D, bugs, OLED, Temperature, not, I/O, Bidirectional, rss, wireless, delete, resolved, LED1, LIS302, getc, Safari, Wi-Fi, wiki, PinNames, accounts, PS2, BusOut, projects, RS485, pythonI think you have to change from NMEA mode to binary before you can send it binary commands, but ive only used a sirfstarIII chipset,
//command to switch to binary mode 57600 baud
char command[] = "PSRF100,0,57600,8,1,0\0";
uint8_t c_checksum = checksumNMEA(command);
Protocol::printf("$%s*%02X\r\n", command, c_checksum);
The binary packet looks right, apart from the start n stop bytes its identical to the sirfstar3 binary packet,
It does work but requires a delay between each byte. here is what worked for me. Yes, you have to send each byte individually.
Sorry I have never figured out how to post code snippets with correct format.
//////GPS SETUP for Baud Rate and 10Hz Data Rate/// hexidecimal Set GPS baud Rate gps.putc(0xA0); wait(0.05); gps.putc(0xA1); wait(0.05); gps.putc(0x00); wait(0.05); gps.putc(0x04); wait(0.05); gps.putc(0x05); wait(0.05); gps.putc(0x00);COM1 wait(0.05); gps.putc(0x05);SEt Baud wait(0.05); gps.putc(0x00);upgrade SRAM wait(0.05); gps.putc(0x05); wait(0.05); gps.putc(0x0d); wait(0.05); gps.putc(0x0a); wait(0.05);
Hey James,
Use <<code>> paste code <</code>>
Genius thanks for the solution, I ran into a problem at work where I also had to delay each character sent via serial but never tried it on this GPS device. Will try it out sometime soon.
Thanks Sebastian
Please log in to post a reply.
Hi,
I'm trying to configure my Venus GPS chip but I'm running into problems as I don't even get a rejected message in return after I send a query. I looked into the topic of creating character arrays with hex values and I'm pretty sure that my implementation should work but there must be a mistake somewhere.
Full document: http://dlnmh9ip6v2uc.cloudfront.net/datasheets/Sensors/GPS/AN0003_v1.4.19.pdf
Message format:
Ack and Nack format codes:
Sample message (s/w version query):
My code:
Code
#include "mbed.h" Serial pc(USBTX, USBRX); // tx, rx Serial device(p9, p10); // tx, rx int main() { char myhexarray1[]={0xA0, 0xA1, 0x00, 0x02, 0x02, 0x00, 0x02, 0x0D, 0x0A}; pc.printf("\n\n\nStarting\n\n\n\r"); device.printf(myhexarray1); while(1) { if(pc.readable()) { device.putc(pc.getc()); } if(device.readable()) { pc.putc(device.getc()); } } }Com output:
When I double checked my message format, I ran across a forum that listed various ways of creating character arrays with hex values:
Code
char myhexarray1[]={"\x1\x2\x3\x4"}; char myhexarray2[]={0x1,0x2,0x3,0x4} ; char myhexarray3[]={'\x1','\x2','\x3','\x4'};Any ideas? Am I constructing the message wrong, should i have a '\n' at the end? Am I sending it wrong to the chip?
Cheers, Sebastian