- Implement `get_network_adapters()` function to dynamically retrieve available network interfaces
- Replace IP address entry with a combobox for network adapter selection
- Add "Update" button to refresh network adapter list
- Improve IP address validation and error handling for TFTP server configuration
- Enhance UI with more user-friendly network interface selection
- Add filtering mechanism to prevent repeated server start/stop log entries
- Implement state tracking flags to manage server status
- Remove redundant log messages in both ComConfigCopy.py and TFTPServer.py
- Enhance log callback to avoid unnecessary logging of server state changes
- Enhance server stop mechanism with more robust socket and thread management
- Add better handling of active transfers during server shutdown
- Implement additional safety checks and timeout handling
- Improve logging and error reporting for server stop process
- Prevent potential deadlocks and resource leaks during server termination
- Completely refactor TFTP server implementation with more robust file transfer handling
- Add detailed transfer tracking with active transfers table
- Implement periodic transfer status updates
- Improve log and UI layout for TFTP server tab
- Add more granular error handling and logging
- Enhance threading and socket management for file transfers
- Implement TFTP server tab with IP and port configuration
- Create methods to start and stop TFTP server
- Add logging functionality for TFTP server events
- Integrate TFTPServer class into the main application
- Re-enable Firmware directory creation
- Import and integrate AboutWindow class
- Create new "Help" menu with "About Program" option
- Add `open_about()` method to display About window
- Enhance application's help and information accessibility
- Enhance `settings_load()` function to handle missing settings and parameters
- Improve first-run detection in `check_first_run()` method
- Add more robust settings file validation
- Remove unused imports
- Simplify and clean up code comments
- Create a new `SettingsWindow` class for managing application settings
- Simplify the settings tab in the main application
- Add first-run detection and settings configuration prompt
- Improve settings management with centralized save and load methods
- Update menu to include settings option
- Enhance user experience with more intuitive settings interface
- Comment out TFTP server-related code and imports
- Remove TFTP server tab from the application
- Add global copy, paste, and cut keybindings for Text and Entry widgets
- Remove Firmware directory creation
- Add a new `send_login_password()` function to centralize login/password input logic
- Implement retry mechanism for both line and block command modes
- Add support for detecting and handling command errors (marked by '^' symbol)
- Limit retry attempts to 3 times for each command
- Improve logging and error reporting for command execution
- Update interactive command processing in SerialAppGUI to include retry logic