Does anyone use UDP communication with the latest versions of AOG?
And are there any problems?
Roof top imu box, what’s sentence is required to feed via udp @BrianTee_Admin ?
And presuming steering box can receive roll via udp for steering slop compensation ?
case 5544:
{
//by Matthias Hammer Jan 2019
if ((data[0] == 127) & (data[1] == 238))
{
if (ahrs.isHeadingFromExtUDP)
{
ahrs.correctionHeadingX16 = (Int16)((data[4] << 8) + data[5]);
}
if (ahrs.isRollFromExtUDP)
{
ahrs.rollX16 = (Int16)((data[6] << 8) + data[7]);
}
}
break;
}
The spec for udp roll and heading. You do need to write your own code tho.
But the bigger question is why not use an MMA for roll right on the autosteer board? Also, using the brick that is plugged into the computer’s usb is much better for heading then going thru the arduino in the steer module.
@BrianTee_Admin thanks for the info, had found the https://github.com/mtz8302/AG_GPS_ROOF_UNIT_ESP32/blob/master/AG_GPS_ROOF_UNIT_ESP32.ino on GitHub and was digesting!
And the why don’t I do it with pcb…… The statement goes " Important *This software is for discussion and learning of Precision Ag algorithms and techniques. It is not in any way to be used on any physical equipment and is meant for use by a simulator only.".
So for the purpose of discussion and learning and ‘NOT’ fitting to a tractor, I would like the flexibility a roof box would give using udp !
Oddly the brick itself is ethernet over usb…
Sending or receiving data?
I think I have found a bug if you do not receive data from aog: Bug in UDP communikation - #5 by BrianTee_Admin
I’ve ripped everything out of my autonomous tractor, the lidar, the machine control, auto steer, router… and plan on building it again on a board as my test setup. I’ll be able to test it further.
It might not be a bad thing to add a Ping tool by sending ICMP (Internet Control Message Protocol) in some cases it would make things easier.
edit:
in AutoSteer INO that we can ping AutoSteer
Had anyone looked into making the UDP autosteer reply to pings for diagnostic purposes? The WebClient example I ran on my Arduino replied to pings but 4.3.10 UDP autosteer sketch doesn’t. I haven’t been able to figure out yet what it needs to work.
I’ve figured it out. EtherCard_AOG.h had #define ETHERCARD_ICMP 0 to save Arduino memory. Once I changed that to #define ETHERCARD_ICMP 1 it now replies to pings. My IDE said it only saves 92 bytes of flash memory.