Skip to main content

Exporting Shapefiles

What's in the exported .zip, which attribute fields drive the controller, and tips for getting clean imports.

Agronomist

The final step of the Map Prescription wizard exports a shapefile bundle that the field controller loads to drive variable-rate application. This page describes the bundle, the attribute fields, and how to import it cleanly.

What's in the .zip

The exported archive contains a standard ESRI shapefile bundle:

prescription-<plot-name>-<date>.zip
├── prescription.shp     # geometry (polygons, one per zone block)
├── prescription.shx     # index
├── prescription.dbf     # attribute table
├── prescription.prj     # projection
└── prescription.cpg     # codepage

All polygons are in WGS84 (EPSG:4326).

Attribute table fields

Each polygon carries the following attributes:

FieldTypeMeaning
zone_idinteger1-based zone number (1 = lowest vigor, N = highest).
ratefloatApplication rate for that zone. Units depend on mission type (see below).
unitstringUnit of rate: L/ha, gal/ac, kg/ha, lb/ac.
missionstringspray or seed.
area_m2floatPolygon area in square meters.
excludeinteger1 if this is an exclusion polygon (rate is forced to 0 regardless of rate); 0 otherwise.

The controller reads rate × unit and dispatches to the appropriate spray nozzle / seeder valve as the drone enters each polygon.

Mission type — Spraying vs. Spreading

In the VRA step you toggle between Spraying and Spreading. The toggle affects both the units in the Application Rate by Zone table and the unit field in the exported shapefile:

  • Spraying: rates in gal/ac (imperial) or L/ha (metric).
  • Spreading (seeding / granular): rates in lb/ac or kg/ha.

The portal stores the rate in metric internally and converts on display + export.

Imperial vs. metric on export

The shapefile carries the unit you exported with. If you set the portal's measurement unit to imperial, the rate and unit fields will be in gallons (or pounds) per acre. If metric, in liters (or kilograms) per hectare. Set this once in Settings → System Settings → General → Measurement Units.

Exclusion polygons

Exclusion zones are exported as separate polygons with exclude = 1. Their rate is set to 0 but the controller should not rely on the rate field alone — the exclude flag is authoritative. If you're using a third-party controller and importing the .zip, confirm it respects exclude before flying.

Re-exporting

You can download the same prescription as many times as you like from the Prescription Maps home page (Download Shapefile action on each card). The export is deterministic — re-exporting an unmodified prescription produces an identical bundle.

If you edit a prescription (change zones, rates, exclusion zones), re-generate it from the wizard and re-export. Old downloads remain valid until you overwrite them.

Controller compatibility

The shapefile follows the open ESRI format used by the major precision-ag controllers. Tested compatibility:

  • GTEEX field controller (native) — full support including exclude.
  • DJI Agras controllers (via shapefile import) — supported; some older firmware ignores exclude, so draw exclusion zones as plot edges instead.
  • Third-party controllers — should work if they import standard ESRI shapefiles. Test on a single zone before committing.

Common mistakes

  • Wrong projection: don't reproject the shapefile before uploading. The controller expects WGS84.
  • Field name truncation: ESRI shapefile attribute names are limited to 10 chars; the portal uses short names (zone_id, rate, etc.) so this is rarely an issue, but be aware if you open the .dbf in QGIS and rename.
  • Manual edits: editing the shapefile by hand (in QGIS, ArcGIS) risks desync between the on-portal prescription and the file the pilot loads. Re-export from the portal after any change.
  • Hectares vs. acres: the portal's measurement unit drives the export's unit. Confirm before downloading.

Was this page helpful?

Edit this page on GitHub

Last updated Oct 20, 2018