NMEA proyect help

Hello i am a begginer, i don´t know how to do a program for what i want and also i did not find any similar info to help on what i want. I explain here my proyect, i have a GPS buoy that sends a similar to NMEA string by ttl to my computer, the signal is like this: UUUUU/B2,chanca 1/102401.00,3646.54266,N,00235.37778,W,1.668,19.70,020915,,,A,*77 well, as you can see is not an standard NMEA data string, i have 10 buoys with names chanca 1, chanca 2..... well that is the ID of the buoy, what i want is to connect this to an arduino UNO and first i want Arduino to check if name chanca is on the string what means is my buoy and not another boat buoys wich can start with the name of the other boat, afther arduino reads that the name of my boat is on the string i want to extract from the string only the GPS possiton data on this case is 3646.54266,N,00235.37778,W, well after this i want arduino to output on the TX port an nmea string adding $RATLL on the header follow by the ID of the buoy on this case is chanca 1 so ID will be 1, for chanca 2 ID should be 2 so the string will begin as follows $RATLL,1,3646.54266,N,00235.37778,W after the W should go a checksum value making the final string looks as follows $RATLL,2,3646.54266,N,00245.37778,W,*57 and this is the final string that should work for what i want, anyone have an idea if this can be possible to do? Can anyone help me? thanks in advance.

If someone want to help me and do the code that i need i can pay for it because i am desperate and its very important for me please. Thanks

You should go look up the String class in the Arduino reference webpage, and then examine all of the procedures available. What you're trying to do is not hard, but a little tedious.

Good luck

Hi,

Hello i am a begginer,
i don´t know how to do a program for what i want and also i did not find any similar info to help on what i want.
I explain here my proyect,
i have a GPS buoy that sends a similar to NMEA string by ttl to my computer, the signal is like this: UUUUU/B2,chanca 1/102401.00,3646.54266,N,00235.37778,W,1.668,19.70,020915,,,A,*77 well,
as you can see is not an standard NMEA data string,
i have 10 buoys with names chanca 1, chanca 2..... well that is the ID of the buoy,
what i want is to connect this to an arduino UNO and first i want Arduino to check if name chanca is on the string what means is my buoy and not another boat buoys wich can start with the name of the other boat,
afther arduino reads that the name of my boat is on the string i want to extract from the string only the GPS possiton data on this case is 3646.54266,N,00235.37778,W,
well after this i want arduino to output on the TX port an nmea string adding $RATLL on the header follow by the ID of the buoy on this case is chanca 1 so ID will be 1, for chanca 2 ID should be 2
so the string will begin as follows $RATLL,1,3646.54266,N,00235.37778,W
after the W should go a checksum value making the final string looks as follows
$RATLL,2,3646.54266,N,00245.37778,W,*57
and this is the final string that should work for what i want,
anyone have an idea if this can be possible to do?
Can anyone help me?
thanks in advance.

This might help someone to help you.
Tom.... :slight_smile:

If you already have a computer, why not use that to do the processing?

Good morning, thanks to all for repy, i have a computer yes, but this output on arduino will allow me to connect also a gps plotter on my boat to the buoys system, i know what i want but i don´t know how to do it, is not just convert the string, the thing is i only want arduino to convert the string if on the input data arduino fiind out the name of my boat wich is chanca, that is because this radio buoy system is used by other people to and the transmision only change on the boat name thats why i have to ignore others received sentences. Well, hope any one of you know more than i do, :confused: i know it has to be an easy thing to do but the thing is that i am a sailor and my understand on computer is basic so more basic is the programming language :frowning:

i found this, is it possible to modify to use it with my data and do what i want? thanks

jrdoner:
You should go look up the String class in the Arduino reference webpage, and then examine all of the procedures available. What you're trying to do is not hard, but a little tedious.

Good luck

I check the string replace but what i should do with the gps position? that text changes everytime position is change, also i need to add a checksum like this *54 to the end and i need to calculate that checksum, and also i need to setup the input port for the ttl data input, and the output tx for send this converted string to my rs232 port.

$RATLL,1,102401.00,3646.54266,N,00235.37778,W,1.668,19.70,020915,*0

This is what I ended up with using the input you gave. How do you want the checksum calculated? PM me

cedarlakeinstruments:
$RATLL,1,102401.00,3646.54266,N,00235.37778,W,1.668,19.70,020915,*0

This is what I ended up with using the input you gave. How do you want the checksum calculated? PM me

Thanks¡¡ well the output its fine but it shoul ignore some parts and shoul look like this:
$RATLL,1,3646.54266,N,00235.37778,W,*0

the checksum i dont know how to calculate it but you nearly got it my friend thank you very much

OK, it's trivial to index forward one step. Do you just need this parsing code, or is there more to it?

I only need this output, but remeber is a gps posittion so it will change every time, and also i have 10 buoys so one is chanca 1, second chanca2 … up to chanca 10 and the id on the final sentence should be also $RATLL,1,… $RATLL,2, … up to ten, just this, you understand it? thanks again