Skip to content

Releases: AgOpenGPS-Official/AgOpenGPS

Release 6.8.4

21 Apr 22:42
83079d3

Choose a tag to compare

Release Notes — AgOpenGPS 6.8.4


Maintenance Mode   Release 6.8.4   Bug fixes only



This release focuses on stability improvements and final usability additions.


What's new in 6.8.4


UI & usability improvements

  • Redesigned FormCopyTracks for better touch interaction and small screen compatibility.
  • Improved general workflow consistency when switching between simplified and advanced modes.

Bug fixes & stability

  • Fixed issues with importing interior boundaries.
  • Prevented unnecessary intersection removal when loading boundaries from file.
  • Corrected boundary tram generation.
  • Fixed curve nudge ptA/ptB placement.
  • Resolved Youturn Alarm and Headland Sound playback issues.

Translations

  • Updated translations for:
    • Bulgarian
    • Finnish
    • Polish
    • Portuguese
    • Russian

UI for Easy Drive

  • New touch-friendly setup screen (FormEasyDrive).
  • Automatically transitions into Quick AB mode.

Easy Drive — Quick start without setup

  • Added a new Easy Drive mode for quick GPS guidance without creating or loading a field.
  • Users can directly enter working width and hitch length, then immediately start driving.
  • Automatically launches a simplified workflow for creating AB lines or curves.

Easy Drive behavior

  • Uses a temporary tool configuration (rigid, single section).
  • Disables field-dependent features such as:
    • Headland
    • Boundary
    • Tramlines
    • Profile loading
  • Ensures no data is written to disk during the session.
  • Restores original vehicle and tool settings on exit.

💡 Note:
AgOpenGPS WinForms remains in maintenance mode. Only stability improvements and critical fixes are accepted going forward.

Release 6.8.3

16 Apr 00:08

Choose a tag to compare

Release Notes -- AgOpenGPS 6.8.3


Final Release   Maintenance Mode   No new features   Bug fixes only



Version 6.8.3 marks the end of feature development for AgOpenGPS WinForms.


New features
Refactoring
Critical bug fixes only

The torch has been passed.

Active development continues at:

AgValoniaGPS

Built with Avalonia UI -- Windows, Linux, macOS, Raspberry Pi


Caution

This is the last version of AgOpenGPS WinForms to include new features.
From this point forward this repository is in maintenance mode -- only critical bug fixes
will be accepted. No new features, no refactoring.

Active development has moved to AgValoniaGPS
(working title) -- a full rewrite using Avalonia UI targeting cross-platform support
(Windows, Linux, macOS, Android).


What's new in 6.8.3

AgShare – Cloud field loading

  • Fields linked to AgShare can now be automatically downloaded from the
    cloud
    before opening, so you always work with the latest version.
    Applies to Open, Resume and Drive In.
  • New toggle in AgShare Settings to switch between Cloud Load (always
    fetch latest) and Local Only (existing behaviour).
  • AgShare Settings form redesigned with a cleaner layout.
  • Auto-Upload and Cloud Load buttons are now disabled when AgShare is
    not activated.
  • AgShare UI translations added for DE, NL, HU, CS, FR.

Settings

  • Nudge step size is now saved per Tool profile instead of globally,
    so each implement can have its own snap distance.
  • Switching to a different vehicle or tool profile now saves the current
    profile first
    , preventing loss of unsaved changes.

Log Viewer

  • Log viewer opens significantly faster — no more line-by-line redraws.
  • Viewer auto-refreshes in realtime and scrolls to the latest entry.
  • Log file is now trimmed to the last 100 lines on startup.

Updater

  • Removed expired GitHub API token from the updater. The token was causing
    401 errors and required ongoing maintenance to keep up to date.

Bug fixes

  • Fixed ISOXML GuidancePattern ID assignment in TaskData export.
  • Normalized steer angle for inverted WAS in CSmartWAS.
  • Validated point counts and sort ISOXML boundaries by area.
  • Suppressed edge-case exception when a log file is locked by another
    process (e.g. OneDrive).

Release 6.8.2

07 Apr 23:51
3dbec46

Choose a tag to compare

Release Notes -- AgOpenGPS 6.8.2


Final Release   Maintenance Mode   No new features   Bug fixes only



Version 6.8.2 marks the end of feature development for AgOpenGPS WinForms.


New features
Refactoring
Critical bug fixes only

The torch has been passed.

Active development continues at:

AgValoniaGPS

Built with Avalonia UI -- Windows, Linux, macOS, Raspberry Pi


Caution

This is the last version of AgOpenGPS WinForms to include new features.
From this point forward this repository is in maintenance mode -- only critical bug fixes
will be accepted. No new features, no refactoring.

Active development has moved to AgValoniaGPS
(working title) -- a full rewrite using Avalonia UI targeting cross-platform support
(Windows, Linux, macOS, Android).


What's New in 6.8.2

Features

Settings: Vehicle, Tool and Environment Profiles

Settings have been split into three independent profile types:

Profile Location Purpose
Vehicle VehicleProfiles/{name}.xml Steering, IMU, GPS, hardware brands
Tool ToolProfiles/{name}.xml Sections, tram, relay, Arduino Machine
Environment Environment/environment.xml Display, sound, window positions

This makes it possible to mix and match vehicles and tools freely -- e.g. switch the same
tractor between implements without reconfiguring everything.

Converter for existing profiles -- A dedicated conversion form (FormConvertProfiles) is
included to migrate old single-file profiles to the new format. The converter:

  • Reads all existing profiles from the legacy Vehicles/ directory.
  • Shows converted profiles in green; unconverted profiles in white.
  • Tool profile is optional -- select Vehicle only if you have no tool-specific settings.
  • Blocks duplicate names and shows a clear error dialog.
  • Stays open after conversion so you can process multiple profiles in one session.
  • Automatically migrates Environment settings on the first conversion (silent, one-time).

Profile management -- A unified profile management screen lets you rename and reset
Vehicle/Tool profiles. Renaming supports case-only changes (e.g. tractor -> Tractor).

Touch-friendly UI -- All profile toggle buttons are large and touch-optimised. On-screen
keyboard support is included in all text inputs.

Startup -- If no profile is found at startup, AgOpenGPS gives a clear message and guides
the user to load or create a profile.


ISOBUS Task Controller Integration

Full ISOBUS Task Controller (ISO 11783 TC) support has been added:

  • Task Controller is launched via AgIO and communicates with AgOpenGPS over the existing
    UDP/PGN channel.
  • Supports multiple CAN adapter drivers with automatic start.
  • Section control is handled by the TC, including correct reporting of 0 sections when no
    implement is connected -- helps verify that TC is running and talking to AgOpenGPS.
  • The current field name is sent to the Task Controller so TC logs are tied to the
    correct field.
  • TC-AgOpenGPS communication has been stabilised with process-data variables and logging
    to file.
  • All relevant PGN messages are documented in docs/pgn-protocol.md.

Auto-Update System

AgOpenGPS can now check for and install new releases automatically:

  • Checks GitHub releases for a newer version at startup.
  • Shows a user-friendly updater UI with release information.
  • Downloads and installs the update with rollback support (backup directories are preserved
    if rollback fails).
  • The updater module is independent of AgOpenGPS.Core so it can update even when the
    Core library changes between versions.

Smart WAS Auto-Calibration

A new Smart WAS (Wheel Angle Sensor) auto-calibration button has been added. Clicking it
zeroes the WAS from the current reading, simplifying initial setup and re-calibration in the
field without entering the full settings menu.


Import Tracks (from Field X to Field Y)

Tracks can now be imported from one field into another:

  • Short imported tracks (e.g. from ISO sources) now generate stable, complete curve guidance
    with an extended reference curve for offset and guideline calculations at track ends.
  • A guard prevents crashes when importing a single-point curve.
  • Twol track designations used internally by AgOpenGPS are excluded from the export,
    keeping imported tracks clean.
  • After import, the active track is automatically set as selected.

AgShare Improvements

  • Cloud availability is checked before uploading; duplicate uploads are blocked with a
    clear message in the Log Viewer.
  • Better error reporting for both upload and download failures.
  • The HttpClient is correctly re-created when the server URL or API key changes.
  • Internal refactor to a result-pattern and typed DTOs for all AgShare queries, improving
    reliability and error traceability.

Touch Drag Scrolling for Track Lists

Track lists now support touch drag scrolling, making it much easier to navigate long track
lists on tablet or touchscreen setups.


"Pop-Up AgIO on Warning" Setting

A new option in Advanced Settings automatically brings the AgIO window to the foreground
when a hardware warning is received, so warnings are never missed while AgOpenGPS is in
full-screen guidance mode.


AB Line Angle Display

The current AB line angle and its inverse (180 degree offset) are now displayed on the
guidance screen, giving the operator an at-a-glance reference for the pass direction.


New Languages

The following languages have been added:

  • Bulgarian
  • Croatian
  • Czech
  • Gujarati
  • Japanese
  • Romanian
  • Swedish

License Changed: GPL to Apache 2.0

The project license has been changed from GNU GPL to Apache License 2.0. This gives
integrators and downstream projects clearer terms for using, modifying, and distributing
AgOpenGPS components.


Improvements

Curve Guidance (CABCurve) -- Major Overhaul

The curve guidance engine has been substantially improved:

  • Point headings are now calculated from local coordinates rather than global, giving more
    accurate guidance on non-trivial curves.
  • The curve is hidden during recalculation to prevent visual flicker when switching tracks.
  • Cancellation checks added to extension loops to prevent the UI from freezing.
  • Side guidelines are capped at 3 for performance; the extension algorithm now uses a
    single 200 m anchor point instead of 300 interpolated points.
  • ResampleCurve, CalculateHeadings, and MakePointMinimumSpacing are now static,
    making the code easier to test.
  • U-Turn path is rebuilt automatically after a track nudge or reset.

Section Control at 10 Hz

Section control is now processed at a fixed 10 Hz instead of the main frame rate, giving
more consistent section switching regardless of GPU load.


Real Frame Time Display

The actual rendering frame time is now shown in the UI, replacing a synthetic counter.
This helps diagnose performance issues on slower hardware in the field.


UI Redesign: FormJob and FormDialog

  • FormJob has been redesigned with a modern button layout.
  • FormDialog has been redesigned and now supports a Severity level (info / warning /
    error), improving the visual clarity of system messages.

Tram Line Improvements

  • ReducePoints function added for tram track processing, improving performance on long
    boundaries.
  • Duplicate CreateBoundaryOuterTrack and CreateBoundaryInnerTrack code paths merged.

OpenGL / Rendering Performance

Multiple targeted performance improvements to the OpenGL wrapper (GLW):

  • Vertex3 replaced with Vertex2 where the Z coordinate was always 0.
  • GL.SetColor now accepts a byte array, reducing allocations.
  • ColorRgb replaced with ColorRgba throughout, removing a redundant type.
  • Viewport management refactored into a dedicated Viewport class.
  • SectionsVisual and FenceLineVisual encapsulate their own draw methods, removing
    direct dependencies on OpenTK internals.
  • VehicleDotVisual introduced to harmonise vehicle-dot rendering across forms.
  • BingMap separated into its own class; unused z_bingMap resource removed.
  • Texture2D and VertextArrayBase now implement IDisposable for correct release of
    unmanaged OpenGL resources.

Boundary Tool Improvements

  • Zoom and pan in the boundary tool form improved with better step behaviour.
  • GeoPolygon.RemoveSelfIntersections() added to prevent self-intersecting boundaries
    from causing calculation errors.
  • `GeoPolygon.RemoveCloseNeigh...
Read more

Release 6.8.1

26 Nov 19:08
dc949a6

Choose a tag to compare

Sadly we had a big bug in the section timers in version 6.8.0 we all missed.
This solves that problem. All sections run now at 10hz which raises the quality of section mapping turning on and off.

All other release notes can be found on the 6.8.0 release notes.

Release 6.8.0

19 Nov 22:28
31c9241

Choose a tag to compare

AgOpenGPS 6.8 Release Notes

Release Date: Nov 19 2025

Overview

Branch: master
Base: tag 6.7.1
Total Changes: 585 files changed, 30,954 insertions(+), 17,559 deletions(-)


This version and future versions are 64bit only!

🆕 New Features

Track Import & Management (#1040)

  • Track Copying Functionality: Added ability to copy tracks between fields
  • Includes import/export capabilities for track data
  • Bugfixes:
    • Fixed track index crash after importing tracks (#1040)

AgShare Integration Improvements (#984, #971, #972, #792)

  • Fields Without Boundaries: Fixed upload/download of fields without boundaries to AgShare (#984)
  • Boundary Handling: Fixed AgShare boundary saving and loading (#971, #792)
  • Headland Distance Display: Fixed headland distance display issues (#972)
  • Improved application shutdown and data handling for AgShare

Boundary Creation from Track Lines (#802)

  • Build Boundaries from Tracks: New feature to create field boundaries from recorded AB and Curve tracks
  • Interactive Boundary Builder: New form (FormBuildBoundaryFromTracks) with:
    • Visual track selection and preview
    • OpenGL rendering for real-time visualization
    • Track endpoint manipulation to create closed boundaries
    • Automatic segment intersection detection
    • Intelligent track trimming and polygon construction
  • Preview Mode: Visualize intermediate results before finalizing boundary
  • Direct Integration: Built boundaries are directly integrated into the main system
  • File Support: Save created boundaries to field files
  • Error Handling: Improved error reporting for invalid tracks or missing files
  • User Feedback: Informative message boxes guide the boundary creation process

Headland Detection System (#824)

  • New Headland Indicator: Visual indicator when entering/exiting headland areas
  • Detection logic integrated into main UI
  • New sound notifications for headland events (#825)

Global Hotkey Support (#829)

  • Added system-wide hotkey functionality
  • Allows control of AgOpenGPS even when window is not focused

Configuration System Overhaul (#826, #768)

  • Split Configuration Interface: FormConfig split into separate, focused controls (#826)
  • Config Menu Restructure: Improved configuration menu organization (#768)
  • Better user experience for settings management

Profile System (#703)

  • Separate Profile Management: Dedicated menu entries and forms for profile creation/loading
  • Improved profile workflow with helpful hints (#799)
  • Better profile switching experience

Field File Loading & Saving System Overhaul (#832, #796)

  • Stateless File Operations: Complete refactoring of field loading and saving separated from UI (#832)
    • Dedicated file IO classes for each file type (BackPic, Boundary, Contour, Flags, Tracks, Headland, etc.)
    • Removes UI dependencies from file operations
    • Introduces FieldData DTO for encapsulating all loaded data
    • Improved modularity and testability
  • Enhanced Reliability: Improved robustness and error handling (#796, #832)
    • Retry and fallback mechanisms for optional files
    • Prevents crashes from missing or corrupt field data
    • Better file existence checks and data validation
    • Streamlined file loading using unified FieldFiles.LoadAll method
  • Field Picker Improvements: Enhanced with distance and area calculations (#832)
  • Elevation Grid: Added persistence and file management for elevation data (#832)
  • AgShare Integration: Ensures proper field closure and saving before AgShare upload (#796)
  • Settings Persistence: Settings now saved before shutdown to prevent data loss (#796)
  • Better Logging: Field opening only logged when actually changed, preventing redundant entries (#832)

ISOXML Import/Export Enhancements (#788, #713, #714, #643)

  • New ISOXML Import System: Completely rewritten import functionality (#788)
  • Raven ISOXML Support: Added support for Raven ISOXML format (#713)
  • Valtra KML Import: Fixed Valtra KML import issues (#780)
  • Improved KML Loading: Enhanced Load from KML form interface (#712)
  • Refactored ISOXML export for better reliability (#714)
  • Added extra error-checking and handling in ISOXML operations (#643)

Flags Management (#752, #707)

  • CSV Flag Import: Load flags using text or CSV files
  • Better error handling for malformed flag data (#752)

Camera System Update (#827)

  • Replaced Webcam Library: Switched from WebEye.Controls.WinForms.WebCameraControl to Accord.Video.DirectShow
  • Improved camera performance and stability

Estonian Language Support (#820)

  • Added Estonian language option with full translation support
  • Language selection button added to UI

Build System Improvements (#834, #832, #770, #940)

  • Dotnet Publish: Switched to dotnet publish for final deployment (#834)
  • Removed Double-Zipping: Streamlined build output (#770)
  • Version Information: Append version to AgOpenGPS.zip filename (#940)
  • Dotnet Build: Use dotnet build instead of MSBuild (#732)
  • Removed auto-generated AssemblyInfo.cs files (#833)
  • Set x64 runtime in project file (#900)

AgDiag Diagnostic Tool (#687, #691, #692, #693)

  • New AgDiag Tool: Added diagnostic utility for troubleshooting
  • Converted to SDK-style project (#691)
  • Comprehensive cleanup and refactoring (#692, #693)

Code Analysis & Quality (#813)

  • Initial code analysis setup for improved code quality
  • Static analysis integration

GPS Output Precision (#793)

  • User-selectable GPS output precision
  • Optional simulate data mode

🐛 Critical Bugfixes (Existing Features)

U-Turn System

  • Critical Crash Fix: Fixed U-turn crashes near inner boundaries (#949)
  • Offset Calculation: Fixed U-turn failing when offset equals half implement width (#954)

Boundary System

  • Curve Generation: Fixed boundary curve generation for inner boundaries (#960)
  • Extra Guidelines: Fixed issue where one too many guidelines were displayed (#1034)
  • Guideline Colors: Fixed half of extra guidelines not showing green foreground color (#1025, #1034)
  • Duplicate Controls: Removed duplicate Extra Guidelines control from main menu (#948)

Display & Rendering

  • Stanley Mode: Fixed goal point not displaying in Stanley mode (#968)
  • Section Speed Label: Fixed unit label and conversion for "section off below speed" (#955)
  • Imperial Units:
    • Fixed imperial TramWidth display in ConfigSummaryControl (#944)
    • Fixed imperial Tool width display in bottom row of Config window (#944)
  • Field Background: Fixed field background color when texture is disabled (#830)
  • Tractor Rendering: Fixed tractor rendering issues (#702)
  • Screen Borders: Corrected screen border rendering in OpenGL (#900)
  • Cross Track Background: Restored original cross track background texture (#755)
  • Lightbar Crash: Fixed crash caused by unnecessary GL.Begin() when creating texture (#760)

Distance Calculations

  • Field Distance Accuracy: Made distance to field calculations more accurate (#671)
  • LocalPlane Bug: Fixed LocalPlane to calculate MetersPerDegreeLon for each point separately (#787)

Chart Windows

  • Fixed naming of chart windows and menu entries (#977)

Map Display

  • Lat/Lon Formatting: More consistent latitude/longitude formatting in FormMap (#855)
  • BingMap Colors: Restored accidentally deleted code for correct BingMap texture color (#856)
  • BingMap Integration: Added BingMap for easy loading and saving of field background pictures (#858)

Track Selection

  • First Visible Track: Choose the first visible track when track button is pressed (#740)
  • AB Line/Curve: Invalidate AB line/curve when settings loaded (#756)

Form Handling

  • Quick AB Curve: Properly close Quick AB Curve creator form if insufficient points are recorded (#742)
  • AutoSteer Icon: Fixed AutoSteer button showing AutoSnapToPivot icon (#741)
  • Form Saving: Multiple improvements to FormSaving functionality (#797, #798)

Auto Lift Function

  • Various improvements and fixes to auto lift functionality (#769)

Tool Position

  • Back Buffer Culling: Changed culling to be based on ToolPos instead of vehicle position (#676)

AgIO

  • Auto-Save: AgIO now auto-saves changes to XML file (#778)
  • Exit Message: Better exit text for AgIO (#943)
  • Restart: Ensure AgIO restart is done properly (#684)

Translation Fixes

  • Fixed "Outer" and "Pts:" not being translated in MapForm (#852)
  • Multiple translation updates from Weblate (#854, #850, #846)
  • Fixed Lithuanian language copy-paste errors (#786)

Memory & Dependencies

  • Fixed issues with Resources due to different versions of System.Memory package (#785)

UI State & Visibility

  • Enhanced field loading and UI button visibility logic (#900)
  • Fixed text label anchor settings (#735)
  • Fixed UTurnButton positions (#661)
  • Fixed index out of bounds when clicking green or yellow symbols (#694)

Delete Confirmation

  • Rephrased 'Delete For Sure' to 'Are you sure you want to delete?' (#1036)

🏗️ Architecture & Refactoring

Major Refactoring (Developer-Focused)

  • Field Dependencies: Removed dependencies from Field/Fields/FieldDescription to streamers (#762)
  • Textures: New Texture class to simplify texture operations (#651)
  • CNMEA Improvements: Let CNMEA use base classes more effectively (#679, #670)
  • Ackermann Code: Replaced quadruple Ackermann code with unified implementation (#654)
  • CPolygon Removal: Removed CPolygon class (#746)
  • Translations to Core: Moved translations to Core project (#734)
  • Fonts to Core: Moved fonts to Core proj...
Read more

Release 6.7.1

19 May 08:52
cf5eafe

Choose a tag to compare

Automated Release by GitHub Action CI

What's Changed

New Contributors

Full Changelog: 6.7.0...6.7.1

Release 6.7.0

04 Apr 16:40
19767d9

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 6.6.2...6.7.0

Release 6.6.2

17 Jan 16:29
b247945

Choose a tag to compare

Automated Release by GitHub Action CI

Release 6.6.1

14 Jan 16:25
07ac155

Choose a tag to compare

Automated Release by GitHub Action CI

Release 6.6.0

10 Jan 15:01

Choose a tag to compare

Automated Release by GitHub Action CI