E-Sharp Helpcenter
Breadcrumbs

Firmware releases

Version

Status/Notes

Description

5.7.0

Release

Release Date: April 22, 2026
Type: Feature Release

Bug Fixes
Accordion service in 5.6.0 had a faulty parameter, preventing start of the service.

5.6.0

Revoked!

Release Date: April 20, 2026
Type: Feature Release

Bug Fixes
WebAPI — First call after hardware reconnect returns 503 (accordionq2) Fixed a race condition in WaitForConnectionAsync(TimeSpan) where the old completed TaskCompletionSource was captured before the disconnect event had a chance to reset it. The first WebAPI call after a hardware restart would incorrectly fast-path through the wait and immediately return 503. The fix loops briefly until the TCS is properly reset before awaiting reconnection.


New Features / Changes
ESH10000534 — PoE RESTART_CLASSIFICATION channel (accordionuno) Added a RESTART_CLASSIFICATION digital output channel to the PoE module. Writing to it triggers a re-run of PoE classification (detect/power-enable/detect-class sequences). Also refactored PoE initialisation: SetRelay(POLARITY.NORMAL) is now called on successful init, and poe1 is nulled out on failure to allow clean retry.


Infrastructure / Internal
Protocol server — IPv4-only binding (protocolserver)

Both ProtocolServer and ProtocolClient now explicitly disable DualMode and bind to IPAddress.Any (IPv4) instead of IPv6Any. This resolves connectivity issues on targets where IPv6 dual-stack is not available.


TPS23881 — Register read logging enabled; dependency bumps (devicelibrary) Register reads now log at Info(log4net.ILog, object, string, int) level for diagnostics. Package versions bumped: CsvHelper 33.1.0, Iot.Device.Bindings 4.2.0, UnitsNet 5.75.0.

5.4.0

Release

Release Date: April 19, 2026
Type: Feature Release

  • NET10

  • Fixes for PoE R4, FE R4

  • Fixes for Accordion M1

5.2.0

Release

Release Date: April 12, 2026
Type: Feature Release

  • Fixes for communication issues

  • Added swagger + node red

  • Fully async

  • Added mDNS broadcasting

  • Support for Accordion M1

  • Bug fixes

4.1.1

Release

Release Date: March 5, 2026
Type: Feature Release


🎯 Overview

Release 4.1.1 introduces a revolutionary dual-connection network fallback system that dramatically improves network reliability and reduces failover time from over 100 seconds to just 10-12 seconds. This release also includes comprehensive diagnostic tools and complete documentation to support field deployment and troubleshooting.


✨ New Features

Dual-Connection Network Fallback

  • Fast Failover: Reduced DHCP timeout from 100+ seconds to 10-12 seconds

  • Automatic Failover: NetworkManager priority-based connection selection

    • Primary: ESharp-eth0-DHCP (priority 100, 10-second DHCP timeout)

    • Fallback: ESharp-eth0-Direct (priority 10, static IP only)

  • Dual-Addressing Mode: When DHCP succeeds, device maintains both static IP and DHCP IP for maximum flexibility

  • Automatic Cleanup: Removes redundant network connections during configuration

Diagnostic Tools

  • quick-network-check.sh: Fast, color-coded network status display

    • Connection status and priorities

    • IP address configuration (static vs. DHCP)

    • Gateway reachability

    • DNS resolution testing

    • Overall health assessment

  • capture-network-diagnostics.sh: Comprehensive diagnostic log capture

    • 21 diagnostic sections covering all network aspects

    • Timestamped log files for support and troubleshooting

    • Includes NetworkManager logs, connection details, routing, DNS, and connectivity tests


🐛 Bug Fixes

  • Manual Connection Address Handling: Fixed NetworkManager limitation where manual connections must have at least one address during creation

  • Address Update Logic: Implemented atomic replacement strategy to avoid "cannot be empty" errors when updating static IP addresses

  • Timestamp Border Formatting: Fixed alignment in diagnostic script headers


📚 Documentation

New Documentation

  • README.md: Comprehensive project documentation with quick start guide, network architecture overview, and troubleshooting

  • NETWORK_FALLBACK_IMPLEMENTATION.md: Detailed technical documentation of dual-connection architecture, including configuration steps and expected behaviors

  • DIAGNOSTIC_SCRIPTS_README.md: Complete guide for using diagnostic tools with examples and troubleshooting workflows

Configuration Standards

  • .gitattributes: Enforces LF line endings for shell scripts across platforms

  • .vscode/settings.json: Consistent development environment configuration


🔧 Technical Improvements

  • Line Ending Management: Cross-platform compatibility for shell scripts (LF enforced)

  • Dependency Reduction: Replaced nslookup with ping for DNS testing, reducing package requirements

  • Connection Priority System: Leverages NetworkManager's built-in priority mechanism for automatic failover

  • ARP Conflict Detection: Maintains arping-based conflict detection for static IP configuration


📊 Network States

With DHCP Server (Typical Deployment)

Active Connection: ESharp-eth0-DHCP
IP Addresses:
  - 192.168.0.222/24 (Static, configured)
  - 192.168.0.XXX/24 (DHCP, dynamic)
Gateway: From DHCP server
Internet: Available via DHCP gateway

Without DHCP Server (Direct Connection Mode)

Active Connection: ESharp-eth0-Direct
IP Addresses:
  - 192.168.0.222/24 (Static only)
Gateway: None
Internet: Local subnet only
Failover Time: ~10-12 seconds from DHCP attempt

🚀 Deployment Impact

Performance

  • 90% reduction in network failover time (100s → 10-12s)

  • Improved reliability with automatic fallback

  • Zero-downtime network reconfiguration

Operations

  • Simplified troubleshooting with diagnostic scripts

  • Color-coded status output for quick visual assessment

  • Comprehensive logs for support escalation

  • Self-documenting network configuration

Field Support

  • Quick network check can be run by field technicians without sudo

  • Full diagnostics capture all necessary information for remote support

  • Documentation provides clear troubleshooting workflows


📋 Upgrade Notes

Breaking Changes

None. This release maintains backward compatibility with existing boot.config files.

Automatic Migration

  • Old ESharp-eth0 connections are automatically cleaned up

  • New dual-connection configuration is created on first run

  • No manual intervention required

Verification

After deployment, verify the network configuration:

Bash
# Quick status check
bash quick-network-check.sh

# Or full diagnostics
sudo bash capture-network-diagnostics.sh

Modified Files

  • HAL/NetworkManagerConfig.cs - Core dual-connection implementation

  • ApplicationEngine.cs - Connection management and cleanup

  • AccordionQ2.csproj - Project configuration updates

  • Shell scripts - Diagnostic tools and line ending fixes

New Files

  • quick-network-check.sh - Fast diagnostic tool

  • capture-network-diagnostics.sh - Comprehensive diagnostic tool

  • NETWORK_FALLBACK_IMPLEMENTATION.md - Technical documentation

  • DIAGNOSTIC_SCRIPTS_README.md - Diagnostic tools guide

  • .gitattributes - Line ending configuration

  • .vscode/settings.json - Development environment settings


👥 Contributors

ESharp Development Team


📞 Support

For issues or questions:

When reporting issues, please include:

  1. Output from quick-network-check.sh

  2. Full diagnostic log from capture-network-diagnostics.sh

  3. Application logs from /home/accordion/hw/log/

  4. Description and steps to reproduce


🔜 Future Roadmap

  • WiFi dual-connection fallback support

  • Network health monitoring and alerting

  • Automatic DHCP server detection and configuration

  • Extended connectivity diagnostics


Full Changelog: v4.1.0...v4.1.1

4.1.0

Release

This version contains fixes for the following:

  • Boot configuration updates (see The boot.config file )

  • Audio/Video/Image handling engine

  • Refactor of engine components

  • Optimizations in protocol layer

4.0.8

Debug release.

Do not install unless instructed.

This version contains fixes for the following:

  • Boot configuration updates (see The boot.config file )

  • Audio/Video/Image handling engine

  • Refactor of engine components

  • Optimizations in protocol layer