Yuri's Mower Updates

No. Set the radio for 460800 and leave auto configure as is.

Sounds fine. I think that is the configuration we are in right now.

Let me correct myself, The UART2 is still set for 460800 and the actual radio is still set for 115200.
I don’t have the software yet and I have not learned how to change the radio baud rate yet.

I suspect that the OTA data rate bottleneck won’t be a problem since you were getting a good RTK fix before at 115200. It’s just cleaner to let ArduPilot manage the GPS modules rather than relying on u-Center.

Understood that there is yet another learning curve to climb with the XBee config. I don’t use them for a reason :slight_smile:

If you would rather disable GPS_AUTO_CONFIG and use u-Center to configure UART2 for 115200, have at it. We know we can get back to the present situation fairly easily, though now I’m very curious about setting 460800 on the XBee modules - I won’t try to force your hand anymore there if that makes you more uncomfortable.

I also need a x-bee USB adapter to allow me to plug the radio into my computer. Maybe I could use the X-Bee port USB port on the ArduSimpleF9P board.
I think you are right and it will probably work with one radio set for 460800 baud, and I am happy to try that out for you and the other users after I get up to speed on the radio programming.
For today, lets just see if we can get this mower going the manual way.
What radio would you recommend to connect the Base Station to the Rover? I am a novice when it comes to radios. I just bought what was packaged with the GPS cards.

Your comfort level with u-Center seems reasonably high at this point, so it makes sense to proceed that way. Once things are working, there’s no need to change anything unless you find that the XBee radios lack the range or obstacle penetration that you require.

The answer to your question opens a big can of worms, and the simple answer is that I prefer the method that works for a given use case. Stick with the XBees unless they prove inadequate.

I tend to prefer using an internet based NTRIP service routed through Mission Planner for fixed base to moving base RTCM3. However, that requires a stable internet connection and a constant GCS telemetry connection. My telemetry, including RTCM3 injection is presently routed through an SIYI HM30 unit that also carries redundant RC and HD video.

Failing an NTRIP service, I still prefer to route fixed base RTCM3 through Mission Planner, but that again requires a constant GCS telemetry connection and a means by which to get the fixed base data to the GCS computer (USB works but can be inconvenient - I crafted a way to use a Raspberry Pi to forward it when I was using a local fixed base and Mission Planner RTCM3 injection).

If you want to avoid using Mission Planner as the conduit, there are plenty of radio options for a more direct connection between a local fixed base and the moving base. I like the 915MHz SIK radios (like these from mRo).

@ktrussell uses Adafruit’s Feather LoRa modules with a great deal of success, potentially extending the range over what might be possible with SIK radios (I have no direct comparison data). However, that requires programming the modules with custom code that is available in his repository.

I have also used ESP32 modules with Espressif’s ESP-Now protocol in a very similar way to Kenny’s LoRa implementation. The range is comparable to 915MHz radios (if maybe slightly better), but, again, the modules require custom programming, as discussed in my blog post from last year.

There are plenty of other options, but these are the ones with which I am most familiar.

Changing topics slightly, I’ve been somewhat vocal here about ArduSimple’s recommended configurations. I dislike them. They require a user to gain familiarity with u-Center, which is not the easiest software to navigate and often results in frustration. I’m least impressed with the SimpleRTK2B+Heading configuration, though they did recently modify it to be a bit more compatible with ArduPilot’s ecosystem. On the other hand, it’s a shame the SimpleRTK3B+Heading board is so expensive - it’s very easy to configure and requires no additional software. I recognize that they are challenged to provide the most compatible hardware possible for a broad range of use cases, but it seems that the default data rates and pin mapping tend to be somewhat limiting in an ArduPilot application. The hardware is OUTSTANDING, but I’d (selfishly) like to see a bit more out-of-the-box compatibility with our use case. I should also give more credit where it’s due - their customer service has always been top notch!

1 Like

Well Yuri, I had some surprising results. I set Auto_Config to zero, went on U-Center changed the baud rate of only UART2 to 115200 and booted it all back up. What I got was an RTK Fixed indication on GPS (Moving Base) and GPS2 (Rover) dropped of the screen.
Screenshot 2022-07-17 145002

After a long time 10 minutes or so it shows up GPS2: RTK Fixed

The MavLink inspector shows about 18100 which is consistent with the heading

1 Like

Excellent!

Do you still have the crossover cable(s) connected? We aren’t using them at all right now. At a minimum disconnect the moving base TX2 to rover RX2 line. While the radio won’t “take over” anything, removing this cable avoids any comms conflicts inbound to the moving base module.

No, I cut that cable and the extra ground wire I but between the boards. They are not needed. I will clean them up and get those wires out of there.
It was alarming to see GPS2 stats missing from the screen completely and there is a long delay after every reboot.

The long delay is a bit puzzling. The extra ground wire was unnecessary - the boards have a common ground if they are powered from the same source (and adding ground connections can cause noise problems).

You know, I think we missed something that should’ve been obvious, and it’s right there in my leading post on this topic.

In the hookup guide, there is a bold note:

If your are connecting your own hardware to UART1 or UART2, it is mandatory to connect IOREF pin to the voltage required by your hardware, otherwise you may experience problems.

If you look at the picture at the top of this topic, you can see where I’ve connected that to the 3v3_OUT pin. This may solve your UART2 direct connection issue!

I also discovered that while I only see GPS RTK Fixed and the other GPS2 is blank, if I go and change The GPS+AUTO_CONFIG=1 (and write the parameter) then it makes it pop right back in there on the screen then I go change it back to GPS_AUTO_CONFIG=0 and write that parameter. (No Reboots involved) And it leaves with both being displayed. I am not sure it will ever pop up if I just wait.

Ok, I think we have a situation where the GPS configuration hasn’t been saved, and it’s going to require some u-Center action again.

FIrst, set GPS_AUTO_CONFIG=1 and reboot. Then set GPS_SAVE_CFG=1 and wait for a message that says that the config has been saved to both boards. Set both of those parameters back to 0 and then set the moving base’s UART2 baud back to 115200 in u-Center.

If you want to connect the IOREF pins and try that pesky crossover cable again, we’ll have to go back through this process with GPS_DRV_OPTIONS=1.

We still had that problem even when we just were working with 2 bare boards (no radio)

That’s because GPS_SAVE_CFG is disabled, so the boards revert to default whenever power is removed.

You have overridden the config on the moving base at least once, so that’s why it’s working without issue.

Another way of accomplishing the same thing is this:

Set GPS_AUTO_CONFIG=1 and reboot. Once the boards are powered and working, Connect them to u-Center while they are still attached to the autopilot (the boards have onboard power management to avoid issues between multiple power sources). Go to the CFG page and “Save current configuration”/Send. You can set the GPS1 baud to 115200 at the same time (and remember to disable GPS_AUTO_CONFIG before power cycling).

I have to be away for 20 minutes or so and then I will do exactly as you request above

FIrst, set GPS_AUTO_CONFIG=1 and reboot. Then set GPS_SAVE_CFG=1 and wait for a message that says that the config has been saved to both boards. Set both of those parameters back to 0 and then set the moving base’s UART2 baud back to 115200 in u-Center.

I think you are onto something there for sure.

1 Like

Well Yuri I think we have it working pretty good now. I did the steps you mentioned above except I haven’t put it back on U-Center and it is still working with RTK Fixed on both GPS units and the radio never quit working. That was puzzling to me and I don’t know if the configuration process didn’t change the baud rate because I had an active radio connected to the UART or whether the UART2 did some sort of auto baud change. Either way it seems like it is worth knowing, because I did set GPS_AUTO_CONFIG=1 and I rebooted. I expected that radio to go silent. Both GPS_AUTO_CONFIG and GPS_SAVE_CFG are both set to 0 and I have rebooted several times and it has been coming back up working with RTK Fixed on both GPS boards.
I’ll get back on U-Center using the method you described and save the current configuration of each board and look at that baud rate on UART2 of the moving base.

I owe you Yuri and I couldn’t have gotten here without you.

2 Likes

I think you’re there. Unless you want to re-examine the crossover connection, there’s not much more to do!

I’ll leave it the way it is for now. I did just plug each board into U-Center to save the configuration of each board while Mission Planner was running and then I looked at the baud rate of UART2 on the moving base and it was still set at 115,200. For some reason AUTO_CONFIG didn’t change it. One of life’s mysteries. The radio was turned on at the time and it stayed on.

Thanks again Yuri you are a tremendous help to everyone.

Here is a link to some pictures I posted over on the other thread.

2 Likes

Glad you got it working. I went through all of these frustrations amid the start of the pandemic when the codebase for moving baseline was barely functional - wires and antennas strewn all over my porch! Learned a lot and want to help alleviate the frustration that can happen when things go awry.

2 Likes