Emlid NMEA to TSIP Converter

Now your in a totally different world :smile:

Did you have any issues with logic levels between the M2 and your Uno? M2 is 3.3v and Arduino is 5V. thanks

I was using a Nano but same difference did not have an issue.

Thank you. I got an Uno, Nano and a Mega to play with. The Mega 4 serial data ports so it should be real easy. The Uno and Nano I will have to mess with SoftwareSerial. Going to be doing some testing this weekend.

thanks for the quick response.

I will save you a bit of time software serial is pretty brutal junk and does not work above 38400baud. Even at 38400 i was getting errors. Software serial hogs the processor pretty bad and slows down the program. Also the only setting it uses is 8 N 1.

My final conclusion was get a DUE with 4 uart.

I think you will truly love your mega.

You can rx or tx from a different source to one hardware uart but they have to be the same speed.

The “Nano Every” is sweet if you use MegaCoreX boot loader library that gives you an extra hardware UART.

Top speed for all boards I have tested is 115200 on hardware serial.

1 Like

Ok! Almost in business.

I can convert NMEA to TSIP and it is usable by the Trimble ez150!!! The 150 really has no security other than protocol ambiguity. No TSIP handshakes needed.

But the Ez250 requires some special connection sequence to an external tsip reciever. I have found a very cheap slightly smashed ag252 receiver. If it powers up i should be able to replicate the log in sequence.

2 Likes

The project is moving forward again, the local Hutterite Colony was nice enough to lend me a working 252 receiver over winter.

They have one beautiful machining facility. Id be very proud to have such fantastic metal working capability.

But in return I will help them iron out the details of getting their own Basestation. Also they have an older Trimble dozer blade setup to get working. Very cool, more to learn.

Now just waiting for days off to get back to coding the converter.

1 Like

After reviewing the Data from the Ag252 receiver on its first test. I was able to record the settings and logon handshake.

I was surprised to find that the Data is closer to XYZ ECEF data. I also logged Emlids XYZ data it looks for the most part similar enough to be converted. The time output on Emlids XYZ may need to be back converted to raw gps format.

PPS output does apply to the 252, but is sent as a TSIP message to the 250.

So the dream of using Emlid for AG252 compatible guidance still exists.

But straight NMEA to TSIP conversion, other than in a few specific cases like the EZ 150 is not applicable. Unless some major position transformation is done between coordinate systems. Or a complete TSIP library converter is built.

So the dream of a TSIP converter is still alive, but it cannot use EMLID. The Data needed is available directly from the Ublox F9P binary. So i will be continuing with Ublox on a spark fun board.

I still very much like the entire package and polish of the Emlid, its just i need the additional specialty information messages out of the ublox to make the project work. The good news is F9P can still use Emlid as base.

Recently updated the enclosure of the EMLID NMEA to Trimble EZ 150 case. Its drastically smaller now that I do no longer require the ShipModul. The EMLID NMEA is converted to the version of TSIP required by the Ez 150 at 115200 8 O 1, a suitable and far more accurate replacement for the 132 receiver.

Due to drastically different uses of TSIP, the converter will only work to emulate a single specific receiver. There is no one fits all solution unless the entire Library of TSIP commands and responses are programmed which is not needed.

3 Likes

I don’t know if this helps, but I was looking for a command specific list for an old Trimble 4000 series receiver I’m considering using as a static base at our office. No ntrip use, just static. It’s still operable, but there’s an issue with the files being outdated due to Trimble planned obsolescence.

Just ran across this

I do have a copy of the 1999 TSIP reference Rev C, it is what i have been using for translating messages. But thank you still to bring it to my attention, you never know if someone may stumble upon a newer issue.

Planned obsolescence is right. The 150 drives perfectly acceptable on 5Hz NMEA from the M2, even if you are using TSIP it is still just encapsulated NMEA.

The 252 on the other hand is a complete overhaul, Hardly any ASCII at all over serial and ECEF instead of GGA, and VTG. But the EZ250 is a really nice easy to use guidance system, so is the Ez500. I would really like to get every second of use out of that type of hardware.

Still happy to have M2’s as they will work great with AgOpenGPS.

I am going to keep trying emulating a 252 receiver till spring. Then I will pour my efforts into AgOpenGps.

1 Like

For our Case tractors it’s the tractor that needs to see the tsip to enable steering. The 252 outputs tsip on port A and that is the info that somehow let’s the tractor use that receiver for steering. The tractor automatically sets port A on the 252 to tsip 115200 8 0 1 if you happen to change the ports by other programs. There must be some initial code from the tractor to make sure the 252 port A is set properly, it also sets port B and D to tsip every power cycle but not port C. There must be an initial handshake

1 Like

Hey Curt, read a few posts older, have already established the needed messages for emulating 252. Emlid currently does not output them so switching to just the ublox F9P chip.

I got really lucky and was able to repair a 252 bought as salvage with broken ports. I was able to repair and super lucky it was unlocked to RTK. With it and and the other 252 I was lent. Should have plenty of data.

TSIP is not compatible or standard between all Trimble models. Its just another way to encapsulate data. I have a working TSIP converter for the old Trimble 132.

Hopefully the new gear is here sometime this month to continue this.

2 Likes

Well been doing a lot of learning lately;

First thought I would learn I2C comms for between the F9P and Arduino Due. Not the easiest but i had them working… Somewhat. The biggest issue was from cold power up they would not self initiate. I though that “I am new to coding C, the issue must be me”. So after a few days and many, many, many revisions to the code, no luck with this issue.

So switched back to trusty UART, which running at 460800 is ripping ever so faster than I2C. But… still having power up comms issues with the DUE. So after much internet research found it was a hardware issue after all!!!

In both cases physically pressing the reset button would restore Comms, but nothing after power cycle.

This link sums it up nicely: Arduino DUE R3 and Clone Power up Comms Issue

So here is a china DUE R3 clone that has this issue fixed by soldering a 10K resistor across the FET. If your DUE Board has the FET sitting horizontal with the ICSP pins you have this issue. You can also solder a normal size 10K resistor from the FET to the debug ground PIN.


This is a brand New Genuine Arduino DUE, this is the latest and has the issue fixed. As you see the FET runs vertical with the ICSP header.


This is a DUE CORE, very compact version of the due board. 4 layer PCB shrinks the footprint by half. As you can see this board designer has the resistors already in place across all FETs.

Been having tons of fun learning C and working with the Arduino. Serial communications are fun but I decided adding some more functionality. A RGB LED for status output, and also an 8 bit DIP (SIP) switch for inputs. With the switches I can now select between the new TSIP converter code I am writing and the older working code for NMEA selection, Talker Code change, and TSIP V1 for the Ez150. As well 1008 injector can be selected, the code has been tested and works on NANO (big thanks to Torriem of the Combine Forum), but i have not decided the RTCM3 flow through which ports yet for this project. @jp-drain-sol put in the time to confirm the 1008 injection NANO and EMLID M2 gets a fix with Trimble. Hopefully he does a write up on it.


Here is the clone DUE with heads de-soldered. You can see the new status LED and Input SIPs.
I think another fun challenge would be configuration over WIFI, but its currently pretty low on the list.

One of the big challenges with Parsing the F9P is the Ublox Arduino library does not seem to work with DUE. But I did find a way to parse NMEA separately from UBX, because they are simultaneously output the way the F9P is configured to get Data for both TSIP V1 and V2. UBX data also has no end of line character which made parsing a challenge for a bit. Now its to learn about little Endian, LSB order. The hex data all comes in backwards, more fun and conversion. Also finally learning to write my own functions for C is making life a bit easier.

Took some time to brush up on CAD. Been working on a housing for the project, 20cmX20cm.
Its so tiny compared to a 252 or 372 receiver 30cmX30cm.


Here is V1 of the bottom of the receiver, plenty of room for the DUE, F9P, and protocol converters. It will need 2 TTL to 232 converters, and 2 TTLCAN to CAN adapters. they will interface through a 12pin Deutsch connector so i do not have to run new cables in the tractor cabs to swap between them. This will be a slick rig for AGOPENGPS too. But still much work to do.


I got one hell of a deal on this old 252 receiver. Both front ports were smashed completely. After de soldering them, I powered it up to find it was working and had RTK unlocked! Ordered new ports and put them in, now i have a fully functional test machine. You can see the difference in size compared to the F9P. But still you can see there is a modular GPS vs Comms card setup. This receiver requires CMR corrections for RTK. So even though I have a capable CMR base, the EMLID or F9P run really tiny sub centimetre circles around this 12 channel GPS only L1/L2 devices short baseline sub inch performance.

So that is how far this project has advanced lately. Tons of math and coding still on the horizon.
The more I do on this project, the more I realize, the endgame is to really make AGOPENGPS much more awesome and amazing. The value of open source is huge.

4 Likes

You the man, PotatoFarmer !!

2 Likes

I plan on doing a write up on the M2/Nano/3DR radio base project. It worked fine. Just need a little time to get some pictures etc.

I was away at military training last week. I had a free evening when I got the chance to test the unit with a FMX.

I still need to work through some power issues and put it in a project box.

One of my biggest issues was with powering up the 3DR radios. Not sure if it was my power source, power cable or the low $$$$ 3DR radios I have. When initially powered up, one would only display a red light. Cycling the power several times, it would eventually turn green, then flash for a few seconds then turn green indicating it was connected to the other radio.

I am considering purchasing two of the RFD900 radios and trying them. I need a “stable” communication system.

I think this link has a similar issue to what I was running into.

My 2DR radios have a 4 pin connector like those towards the bottom of the page.

1 Like

I tried to use the 1008 injector last night. Found one issue when all constellations are enabled on the RS2 the Trimble would not recognize the modified rtcm3 input from the nano.

Once I put the same code on the faster DUE it auto recognized it as rtcm3. But I was still unable to get a fix on the Trimble.

Currently I am not reading too much into not getting a fix as the Trimble antenna was inside a window.

I reversed the roles of the RS2 and Trimble, the RS2 was hopping in and out of fix. I really need to get this Trimble base set up permanent outside next summer.

Winter is a tough time to play.

1 Like

I just took the 3DR radio that I was having issues with and cut the trace like the 5th picture down. It appears to be the same unit I am using. It now powers up immediately every time I attach the power cord.

What Trimble unit are you using with the injector? If it is the 252, definitely use only the GPS data. I know with Ohio CORS if you use GPS & GLONASS signal, the 252 will only go float. That is why they offer multiple streams of CMR data, some with GLONASS some without.

Also, did you change the settings in the Trimble receiver with AgRemote? It is the very similar with either the FMX or the 252, only difference is I use port D in the FMX and port C in the 252. If you need any help with that let me know and I will PM what you need.

What are you using to transmit/receive the data? 3DR radios? If so, you also need to use a TTL to 232 adapter before the Trimble unit as they use serial 232 data.

As for baud rate etc. I had the 3DR’s/Nano/Trimble FMX all set at 57,600 I set the message rate on the M2 base messages at 5Hz

I thought about it and realized, you are not using the 252 as it cannot use RTCM data. My assumption is your friends 750. I haven’t messed with them much. I will do a little digging on them.

Just thought about it, the 750 does not use AgRemote like the FMX/1000. You just have to change the input to the port to RTCM and make sure the baud rates match. Settings/System/Advanced User Config/Advanced Port Setup.

I do not have a RTK unlocked 750 to play with or I would test it.

Being that the system worked with a FMX, I know it will work with a TMX.

I have in the past ported in my RS2 as a second receiver on a FMX (via port A or B) and on a TMX (using a port expander)

The one thing I want to test yet is the M2 sending corrections via serial and Lora radio. I had the Lora radio connected when I tested last week but was getting a “too many messages” warning in the Reachview App. Since I was concentrated on the serial messages/radios/converters etc. I didn’t dig into this. I want to be able to send both serial via 3DR or RFD900 radios and Lora simultaneously. This way the FMX internal GPS can receive corrections to steer a tractor while a RS2 could be mounted on a tile plow receiving corrections via the Lora radio and ported into the Trimble monitor to control grade with WM-Drain. This is the desired end state of my trials/testing

The forum will not let you do more than 3 replies in a row. You have to edit your last post if the other person hasn’t replied.

I just bought two RFD900+ radios with antennas etc. today 1/1/2021. Will be trying them with the intended power supply. If they work the way I hope they do, it is then down to a project box to make it a decent package.

1 Like