Skip to content

Release v1.7.0.0

Latest

Choose a tag to compare

@github-actions github-actions released this 10 Jul 15:09

πŸ“¦ Which version should I download?
To make it easy for everyone, I provide three different versions of AVRControl. Choose the one that fits your system:

  1. Standalone:
    File: AVRControl-v1.7.0.0-Win-x64-Standalone.zip
    Who is it for? Everyone who wants to "just run it".
    Pros: No need to install any .NET runtimes. It contains everything needed to run out of the box.
    Cons: Larger download size (~60 MB).

  2. Small / Lightweight:
    File: AVRControl-v1.7.0.0-Win-x64-Dependent.zip
    Who is it for? Users who already have .NET 10 installed or want a tiny download.
    Requirement:
    You must have the .NET 10 Desktop Runtime installed on your PC.
    Pros: Ultra-small file size (< 1 MB).

  3. ARM64 Native (For modern Tablets & Mobile PCs):
    File: AVRControl-v1.7.0.0-Win-Arm64-Standalone.zip
    Who is it for? Users with ARM-based Windows devices (e.g., Surface Pro 11, Snapdragon X Elite laptops).
    Pros: Runs natively on ARM hardware for best performance and battery life. No emulation needed.


Changelog

πŸš€ AVRControl v1.7.0.0 – Dynamic Feedback Update

  • This release introduces a dynamic system tray notification system providing immediate visual feedback for network communication and device status.
  • Further optimizations have been applied to the communication protocol and internal resource management to reduce overhead.

✨ New Features

  • Dynamic Tray Activity Indicators: Implementation of a color-coded notification system within the system tray icon. A visual indicator (dot) signals active data transmission (Send/Receive), status changes, or connection errors.
  • Context-Aware Visual States:
    • LimeGreen: Command transmission (Outgoing).
    • DeepSkyBlue: Data reception/confirmation (Incoming).
    • Orange: Status or track information change (HEOS/System).
    • Red: Persistent connection error or Watchdog timeout.
  • Automatic Echo Suppression: Integrated logic to suppress redundant visual "flickering" caused by immediate command-response cycles.

πŸ› οΈ Technical Improvements

  • Optimized XML Queries: Reduced the frequency and volume of XML device information requests to minimize network traffic and receiver processing load.
  • High-Resolution Icon Rendering: Tray indicators are now dynamically rendered at runtime from 128x128 32-bit master assets, ensuring crisp visual clarity across different Windows scaling factors (DPI).
  • Refined Audio Mode Mappings: Minor adjustments to the internal sound mode logic for improved compatibility with varying AVR firmware versions.
  • UI/Cosmetic Adjustments: Refined alignment of control elements and minor color corrections for better interface consistency.

πŸ› Bugfixes

  • Fixed: Resolved several minor logic bugs within the Telnet parser and UI event handlers.
  • Fixed: Improved thread-safe handling of background updates to prevent occasional UI synchronization issues.
  • Fixed: Eliminated potential GDI object leaks during rapid icon state transitions.

Developer Note:

  • Version 1.7.0.0 focuses on granular resource management and real-time feedback. The dynamic tray icon system was implemented using a GDI+ Icon Factory pattern, generating variants of the master resource in RAM during initialization to avoid disk I/O and CPU spikes during runtime.
  • To ensure long-term stability, specific Win32 API (user32.dll) calls were integrated to explicitly manage icon handles (DestroyIcon), preventing GDI handle exhaustion common in high-frequency UI updates.
  • Leveraging the .NET 10 SDK, adopted modern C# 12/13 features like Collection Expressions [] and strict Nullable Reference Type handling. This ensures a modern, type-safe codebase while maintaining the project's philosophy of explicit, readable, and maintainable open-source code over excessive abstraction.

License

This project is licensed under the GPL V3 License. See the LICENSE file for details.
This means you are free to use, modify, and distribute the software, provided that the original copyright notice is included.

Created for personal needs – I hope you find it useful!
cya
SAMDestroy