/VRAGO

Variable Rate for AGOpenGPS

Primary LanguageDartMIT LicenseMIT

vrago

Variable Rate for Ag Open, project coded in Flutter, supporting Android and iOS, also windows soon!

Getting Started

This project is under development.

First set the preferences in the settings menu

  • Currently only internal gps supported
  • Only PGN mode section flow/dist supported
  • Set UDP output (input not used yet)
  • Set sections structure (define section # and width in cms, also antenna offset [normal is total width/2])

Please to test it load a shpafile (.shp+.shx+.dbf). Then app would ask to select one of the numeric columns in your prescription shapefile, and a default rate when no polygon is found. Important: unit should be units/ha.

PGN Structure (flow/dist mode):

ints = [128, 129, 113, 71, 3, 0, 9, 96, 184]
byte1= 0x80 AOG header1
byte2= 0x81 AOG header2
byte3= Source (VRAGO)
byte4= PGNid
byte5= Length
byte6= Section # (int)
byte7= rateHIGH
byte8= rateLOW
byte9= CRC 

The rate bytes define a 2 byte unsigned int that correspond to 10,000X the units to apply in 1 meter of displacement of the section. To convert to double just get the int from the 2 bytes and divide by 10,000.

CRC is an addition of all values and truncated to lower 8 bits, getting a 0-255 value (see calculation in lib/api/UDPManager.dart).

TO-DO

  • AOG as location provider (Over UDP PGN) (AOG location now supported, but still not reading section from AOG 😔)
  • Read sections from AOG automatically (Over UDP PGN)
  • TCP/UDP Location provider with NMEA parser
  • ESP32 Demo code
  • Flow/time mode, send PGN using speed from location provider, calculating the target flow/time
  • Windows support using AOG or TCP/UDP locations provider

Screenshots