Version 1.5.9 (2026)
- Serial Router: Added support for FT-450 CAT compatible protocol.
- Displaying current config file name in Title.
- Added custom protocol handler responses.
- Fixed intermittent bug: service issue when right panel is enabled and sleep event occurs.
- Few UI tweaks and fixes.
- Wait for complete data transformer: Start marker can now be combined with Fixed data size.
- Binary Splitter transformer: Start marker can now be combined with Fixed data size.
- Monitoring tool: loaded monitoring file is now displayed in a separate window.
- Added Finnish language translation.
- TcpServer/TcpClient: added "Disable TCP buffering" configuration option (unchecked by default). It can improve network latencies in some scenarios.
- TcpServer/TcpClient: replaced configuration controls with property list.
- TcpServer/TcpClient: optimizations when sending modem registers status.
- Log files are now in unicode format.
- Fixed bug with "Persist window position" setting.
- Fixed TcpServer/TcpClient monitoring bug on modem register change.
- Added Text Responder transformer.
- Added Binary Responder transformer.
- Text data lines splitter: added custom separator mode.
- Bridge device page: fixed transformer buttons font.
- Quick config share device with Serial Router: added "Always keep RTS on" checkbox which is useful for TSxxx and FTxxx CAT protocols.
- Adjusted tooltip delay time for all controls.
- Logging error if failed to update license key.
- Serial Router config page: display selected data protocol handler.
- TcpClient: added configuration setting "Notify about connection errors".
- TcpClient: added configuration setting "Virtual COM port must be fully connected".
- Fixed few bugs which could cause stability issues.
- Serial Router settings: fixed inconsistency for non-existing target COM port name.
Version 1.5.8 (January, 2026)
- On close, displaying message if current configuration was modified (configurable in program settings)
- Added "Quick config" wizards to context and main menu
- Added "Create many connectors" quick config scenario
- Added "Share COM port with Splitter" quick config scenario
- Added "Share device with Serial Router" quick config scenario
- Added "Share COM over network (TcpServer)" quick config scenario
- Added "Share COM over network (TcpClient)" quick config scenario
- Added "Minimize on startup" option in preferences
- Serial Router: Added support for FT-897 CAT compatible protocol
- Serial Router: Added support for FT-920 CAT compatible protocol
- Added service settings tab to Preferences window
- Service settings: added "Autostart config enabled" option (enabled by default), now autostart can be disabled without deleting autostart config
- Service settings: added "Handle power events" option (enabled by default), the emulation is stopped on suspend event and started on resume event
- Mapper device has been deprecated, recommended replacement: Redirector + Connector
- Added "Delete license key" menu command
- Added "Load autostart config", "Delete autostart config" and "Autostart" menu commands
- Property list control: supporting multiline tool tips
- Property list control: added Description panel
- Terminal and Bridge COM port data source: supporting COM port names like "1" and "COM1"
- Terminal: added cooldown before trying to reconnect
- Terminal: connect automatically after selecting new data source
- Fixed bug: devices list redraw issue during column resize
- Command line: added start_device, stop_device and restart_device parameters
- COM port settings: added "Allowed to read data", "Allowed to write data", "Allowed to modify RTS", "Allowed to modify DTR" options
- Monitoring tool: added Exact Match checkboxes for Device and Object
- Command line: added create_device support
- Fixed bug: invalid bottom panel size when starting minimized from command line
- Open with Terminal: added additional COM ports for all devices
- Serial Router: added support for custom protocol initialization string
- TcpServer, UdpManager: added "Test connection" button which invokes Windows Firewall popup window and simplifies setup
- Fixed bug: Redirector configuration Test button for port 2 was not working properly
- Information panel: Added COM port information for some devices
- All devices: displaying current COM port settings in settings dialog
- Transformers buttons now have bold text if not empty
- Fixed bug: When manually loading autostart config from menu, configuration title and description were not properly updated
- Many UI tweaks and fixes
- Fixed compatibility with some applications
Version 1.5.7 (August, 2025)
- Pair device: added "Number of lanes" parameter which significantly simplifies configuring multiple 3rd party apps with Serial Router
- Serial Router: added support for FT-710, FT-991, FT-950, TS-690 and TS-870 CAT compatible protocols
- Serial Router: automatically connecting to all lanes when one of target ports is Pair device with multiple lanes
- Serial Router: start time significantly improved
- Added drag and drop support to VSPE application for loading config file
- TcpServer, TcpClient: added "Read and discard stale data from COM port" option (enabled by default) to avoid buffering stale data if TCP connection not established
- Displaying error message for selected device in status bar (such as TcpClient failed connection status)
- Added device error message in the device list Status column
- TcpClient: logging connection error messages to log file
- Device Create Wizard: on failure, the device is created in Stopped state
- Device Create Wizard: specifying optional device Title and Description on first page
- Device Properties: added Description tab
- Lots of user interface improvements such as resizable windows, default selections, tab navigation etc
- Message view: limiting number of displayed messages, optimized adding new messages
- Max log file size is now limited to 8 MB
- Terminal: modem registers changes are displayed much faster when Quick Update mode is enabled
- Terminal: added "immediate send mode" checkbox
- TcpServer, UdpManager: added button to check current Windows Firewall settings (checking allow/block rules for specified TCP/UDP ports for VSPE service)
- TcpServer, UdpManager: added suggested PowerShell command to add inbound allow rule to Windows Firewall for specified TCP/UDP ports
- Test COM port tool: skipping configuring COM port with default settings on port open
- Improved compatibility with certain applications
- Stopping TcpClient and Bridge TcpClient is much faster during connection attempt
- Stopping TcpServer with connected clients is much faster
- TcpServer: optimized handling client connections
- Fixed bug: "Sent data" column was reporting wrong value (x2) in Connector,Pair and Splitter devices
- Fixed bug: Terminal not displaying new data after clearing window if the previous data is the same
- Fixed bug: INF processing error during VSPE install after using certain disk cloning software
- Fixed bug: Occasionally, the application could not be properly closed
- Fixed bug: Fixed rare race condition in Splitter when ReadTotalTimeout was not properly processed
- Fixed bug: Fixed handling PURGE_RXABORT request
Version 1.5.6 (June, 2025)
- Serial Router: added support for TS-570 CAT compatible protocol
- Added Compress/Decompress data transformers which can be used to reduce network traffic
- Added Encrypt/Decrypt data transformers (symmetric AES256 encryption)
- Added "Write to file" transformer
- Added "Minimize to system tray" option in preferences
- Transformers collection: added PostDelay property for controlling data buffer (useful for Compress transformer)
- Transformers collection: fixed bug with default Help button
- Transformers collection: fixed UI bug when moving transformers up and down
- Fixed issue when loading config file with non-existing transformer (forward compatibility)
- Connector, Splitter, Pair: added "Purge buffers" on open and close settings
- COM port settings for user-mode devices: added "Purge buffers on open" setting
- Fixed bug: new license key is not properly stored when license file from old version already exists
- Fixed bug: TcpServer transformers to COM port were not unique for every connection
- Fixed bug: Connector/Splitter did not work properly with apps like AutoHotKey which write data and immediately close COM port
- Fixed bug: Bridge COM port could not be properly parsed when in lowercase (i.e. com1)
- Not displaying error message when loading configuration and device switches to Waiting state
- When starting another VSPE instance, show VSPE window which is already running
- VSPE cmd line: when starting another VSPE instance, transfer cmd line to VSPE which is already running
- Device context menu: Restart device command
Version 1.5.5 (May, 2025)
- Serial Router: added TS-450, TS-850, TS-950 compatible CAT protocol support
- Localization: added translations to more languages
- User interface: Added more tooltips
- Splitter: "Allow buffer overruns" renamed to "Not allowed to block read flow" which explains it better
- Help window: Removed "always on top" style
- Added VSPE application setting: Delete all devices on close (disabled by default)
- Added Help -> Show license key menu command
- Added checkboxes with options to application close confirmation dialog
Version 1.5.4 (April, 2025)
- Splitter: fixed read data delay on first client connection when "stop reading data" checkbox is set
- Virtual Pair and Virtual Splitter: added support for overriding serial timeouts. Useful for non-trivial scenarios with some applications.
- UdpManager: added broadcast/multicast mode
- TcpServer/TcpClient: added support for TLS or mTLS auth (optional)
- TcpServer, TcpClient, Bridge: managing TCP Keep-Alive packets interval in settings
- TcpServer/TcpClient: fixed (rare) race condition when forwarding modem registers fails
- TcpClient: immediate reconnect delay changed to 1 second
- TcpClient: Fixed bug when settings cannot be changed when device is in Connecting state
- Fixed bug: invalid StopBits value when loading legacy config file created by VSPE with version older than 1.2
- Serial port settings: added additional write-specific settings
- Serial Router: removed "Buffered read mode" checkbox because it was moved to Serial port settings
- Serial Router Switch (ICOM compatible protocol): Added support for broadcast responses with id=1
- Serial Router: added FTDX-1200,FTDX-3000, FTDX-9000 compatible CAT protocols support
- Serial settings dialog: allowing entering custom COM port speed
- Binary transformer (include/exclude): added support for multiple filters with attributes (offset_abs)
- Binary transformer (include/exclude): added support for placeholder values
- Fixed delay when writing to COM port for the first time in another thread for some devices like TcpClient
- Monitoring tool: added data include/exclude filters
- Monitoring tool: added "color highlight" mode
- Monitoring tool: added toolbar and menu
- All dialogs show context help on F1 key press
- Added tooltips to device configuration pages
Version 1.5.3 (March, 2025)
- Based on feedback, Autostart config option was removed from preferences and replaced with "File->Save as autostart config (on VSPE service startup)" menu command
- Supporting configuration file names with unicode characters
- Supporting installing to folder with unicode characters
- Added optional settings for restoring window position, size, columns, panels
- Added "View" menu to show/hide right and bottom panels
- New transformer: Wait for complete data
- Fixed transient "Error" state for newly created kernel devices
- Serial Router: added global write and read transformers
- Serial Router: fixed "allowed to read" option for target port
- Serial Router (ICOM compatible protocol handler): handling broadcast packets from radio station
- Serial Router: added support for FT-891 CAT compatible protocol
- Transformers: fixed race condition in "multiple writers" scenario
- Bridge (TcpClient): fixed race condition on shutdown during active traffic
- Connector/Pair: fixed rare race condition when waiting for multiple comm events
- Connector/Pair: added "Reset modem registers on close" option (off by default)
- Connector/Pair: added "Always queue write requests" option (off by default)
- Serial Router: fixed initialization sequence priority when placed before Splitter it depends on
- Serial Router: UI improvements in settings
- Serial Router: added FT1000 CAT compatible protocol (in SmartRouter mode)
- Serial Router: added additional validation for requests/responses in supported protocols
- Splitter, Serial Router: added experimental "Buffered reading mode" to reduce number of read/writes
- Monitoring tool: added GetCommProperties, GetCommTimeouts, SetCommTimeouts events
- Terminal: Added "Query debug info" command for COM port
- Terminal: Added "Send byte by byte" checkbox
- Terminal: fully async Send requests
- Added simple "Test Com Port" tool for investigations
- Virtual ports: fixed CurrentTxQueue, CurrentRxQueue reporting
- Terminal: fixed resizing bug with Copy button
- VSPE API COM Server: fixed dispatch interface, added Python and PowerShell examples
- VSPE API: Switched to Free threading model
- VSPE API: Added vspe_runMaintenanceRoutine method
- VSPE API: Fixed vspe_getDeviceIndexByComPortIndex
- TcpServer: fixed bug with memory leak on stopping device
- TcpServer: fixed bug when not closing source COM after failing to start due to the network issue
- TcpServer: added "Delayed initialization on network error" option
- Serial Redirector: added "Waiting" state like other devices when misisng dependency
- Immediately displaying Waiting state for devices which failed to start by request and switched to Waiting mode
- Splitter: fixed readable/writable config options
- Splitter: improved performance of write requests
- Splitter: added support for hardware flow control (RTS/CTS) which can be defined in port settings
- Virtual Devices: Received is now actual Received in Read request value (not total bytes copied to Input buffer like before)
- Kernel device information panel: more information in RX/TX columns
- Main window: Fixed received/sent statistics for all devices
- Fixed sending delay for COM ports used in all user mode devices
- Driver: Fixed long delay when sending data one by one with BaudRate emulation enabled and Read request is waiting for data at the same time
- Connector/Pair/Splitter: better read/write timeouts handling
- Connector/Pair/Splitter: releasing WaitCommEvent requests when SetCommMask is set to 0
- All devices: COM port names now can be typed as a string COM1 or as number 1
- Added "minimize" command line argument
- All user-mode devices: limiting max COM port write chunk size to 128KB to avoid failures when sending too much data
- All user-mode devices: more reliable write requests when sending lots of data
Version 1.5.2 (February, 2025)
- Transformers: added Binary splitter and Binary filter transformers
- Splitter: fixed read issue with some USB-to-serial adapters
- Splitter: fixed rare condition with lost RXCHAR event
- Splitter: added "Read using polling mode" config option
- Splitter: readable/writable options for every virtual port
- Splitter: overrun timeout value can now be specified in settings
- Splitter: fixed delay on fast write after connect for the first client
- Connector/Pair: (configurable) emitting EV_EVENT1 and EV_EVENT2 on peer connect/disconnect
- Connector/Pair: fixed "ignore writes if partner not connected" option
- Connector/Pair: write request is now async, and TXEMPTY event is emitted after request completed
- Connector/Pair: (configurable) allow buffer overruns
- Generating EV_RXFLAG event for Connector/Pair/Splitter devices
- User-mode devices: fixed COM port initialization sequence which could cause not reading events when input buffer was full before initialization
- TcpServer/TcpClient: added option to clear COM port input buffer on connect
- TcpServer/TcpClient/UdpManager: fixed race condition issue on stop
- Monitoring tool: added milliseconds to time stamps
- Terminal: fixed freezing when having too many RX events without fast mode enabled
- Terminal: fixed potential deadlock when preparing output data
- Terminal: added "Copy" button to copy data to clipboard
- VSPE license key dialog: supporting multiline (in case the license key formatting is broken)
- VSPE installer: fixed ansi to unicode string conversion for VSPE shortcut which resulted in incorrect .vspe file description in Explorer
- VSPE installer: supporting additional install/uninstall mode without VSPE kernel driver (useful in some scenarios)
- Redirector, Serial Router: added "Detect stale incoming data" option when reading from COM ports which are constantly sending data (like GPS) and need to be re-initialized if the data flow stops
- Fixed: race condition when stopping some VSPE devices
- New VSPE device: Serial Router device with "FanOut" and "Smart router" modes
- Serial Router (Smart router mode) - added support for certain CAT/rotator compatible protocols
- Serial Router: added "Close if no connections" option to avoid keeping source port opened all the time
- Fixed OmniRig startup timeout issue when connected to Pair/Connector
- API: added startDevice, stopDevice methods
Version 1.5.1 (December, 2024)
- Splitter: fixed bug with not emitting TXEMPTY event (now correctly works OmniRig)
- Localization: added translations to more languages
- VSPE devices: introducing delayed initialization for devices waiting for dependencies
- Added custom descriptions for VSPE configuration and for VSPE devices
- "Stopped" and "Started" device states are persisted in VSPE config file
- Added Monitoring tool: monitoring traffic for VSPE user-mode devices
- Supporting additional command line parameters (start, stop, close)
- Serial settings: removing DTR/RTS line enabled settings - instead switching to classic Handshake types
- Serial settings: initial DTR/RTS modem registers state now have 'Not defined' state
- Splitter: separate settings for controlling RTS/DTR forwarding
- Splitter: added setting "Only first connected client can write data and update modem registers"
- Splitter: modified writing to source COM port flow to reduce the likelihood of conflicts
- Connector/Pair: fixed bug with losing events on re-connect
- Connector/Pair: added setting to ignore write events if partner not connected
- Connector/Pair: added support for custom RTS/DTR pinouts
- Splitter: added setting to stopping reading from source COM port when no clients connected
- Splitter: added setting to reset RTS/DTR when no clients connected
- Splitter: added setting to clear input buffer when no clients connected
- Splitter: fixed bug with sending multiple write requests sequentially to source COM port
- Terminal: fixed bug with freezing
- TcpServer/Client/Redirector: fixed bugs with initial forwarding or modem registers
- Fixed UI bug in serial settings selection for Stop Bits property
- Lots of UI changes for colors consistency, keyboard navigation, focus etc.
Version 1.5 (November, 2024)
- Virtual ports are now visible in Device Manager and to all applications
- VSPE service (running with minimum privileges on local computer) is now automatically loading last known configuration on startup (if enabled in settings)
- Native ARM64 platform support
- Introducing transformers for user-mode devices to filter/modify/control consistency of the data flows
- Virtual Splitter device: legacy mode with single shared virtual port or new mode with multiple virtual ports for better data flow control
- Fixed unicode characters localization and added new languages
- All kernel devices: fixes for Read/Write timeouts, supporting additional serial port events
- Virtual Splitter: internal data flow is fully re-written to make Splitter more reliable
- Virtual Connector/Pair: fixed baud rate emulation, resetting DTR/RTS registers on disconnect
- Virtual Splitter/Connector adding option to limit connections from the same application to the same virtual port
- Redirector, UdpManager, TcpServer, TcpClient, Bridge (Serial Port): switched to async read mode for better performance
- Transformers: Added LineSplitter and TextFilter transformers, adding multiple transformers for all supported user-mode devices
- Bridge: added NamedPipe client/server
- Serial Redirector: fixed issue with incorrect settings for device 2
- Serial Redirector: added read-only options for COM ports
- UdpManager: added read-only and write-only settings for COM port
- User interface: Added Start/Stop/Clone commands for devices
- User interface: "Open with terminal" menu now works for all virtual ports and TcpServer
- User interface: Terminal: fixed new lines, scrolling
- User interface: COM port selection drop list is now correctly pre-filled with existing COM port names
- Installer: validating for x32 platform installer when installing on x64 operating system because it caused driver installation issues
- Removed non-relevant settings (delete devices on quit, set as service helper etc) and command line parameters
- Deprecated: HttpServer is deprecated and removed
- Removed kernel devices data flow monitoring (it will be replaced with better monitoring solution in future version)
- VSPE documentation is fully re-written
- TcpServer: fixed bug with not setting keep alive settings for connected sockets
- TcpServer: added option to Close/Open COM port based on TCP connection state (number of connected clients)
- TcpServer: added maximum number of connections configuration setting
- TcpClient: fixed reconnection timeout setting
- TcpClient, Bridge: moved connection logic to separate thread to avoid lag when creating device
- TcpServer, TcpClient now can have only modem registers control connections (no data connections)
- Bridge file data source: input file is opened with share write permissions, allowing input file to be updated
- Bridge file data source: added option to read file from end
- Allow editing any device in Running state (unless it is a kernel device with active connections)
Version 1.4 (June, 2024)
- This is the last version with current driver install model, next version will have significant changes.
- (Experimental) VSPE COM ports visible in Device Manager (experimental feature, enabled in settings, fixes some apps, work is still in progress)
- Introduced initial DTR/RTS states in serial port settings
- Fixed initial DTR/RTS states for TcpServer and TcpClient depending on connection status
- Removed deprecated python 2.7 python bindings
- Added buffer size in Bridge configuration (Tcp flow)
- Bridge device: not displaying error if initialization failed, allowing it to re-connect
- Fixed ReadIntervalTimeout kernel driver bug
- UdpManager: fixed receiver with packet size > 1024
- Keyboard navigation UI fixes
- Few UI tweaks and improvements
Version 1.3 (July, 2023)
- Improved Connector/Pair kernel driver performance
- Startup properties tab in Preferences
- Fixed "Stop bits" bug in serial port settings
- Improved logging
- TcpClient/TcpServer: control data port to propagate modem registers
- UI fix for inconsistent serial port selector
- Fixed modem redirection logic for Serial Redirector
- Fixed kernel driver race condition for Connector/Pair devices
Version 1.2 (January, 2023)
- Windows 11 on ARM64 kernel driver is part of x64 build now
- Fixed lots of kernel driver stability issues for x64 versions (Win10 and Win11)
- VSPE Windows Service is now working for all devices (not compatible with previous version, service needs to be re-created)
- VSPE Service mode: silent mode
- Bridge: read-only mode for data stream
- Bridge: added Text Transformer (replacing regex/wait for new line with separator)
- Bridge: added Binary Transformer (replacing data/wait for new data chunk)
- More control over serial port settings
- Numerous bug fixes
- Added simple Terminal tool
- Spy: better descriptions, n/a stream is now supported
- Added more technical details to Help->About
- More detailed error descriptions
- UI fixes and tweaks