* [H] indicates a change in the Hub code
* [S] indicates a change in the URadioServer code
* [W] indicates a change in the website
2017-10-30:
- [SW] Added support for rtl_tcp
2017-10-26:
- [S] Added Direct Sampling support for RTL2832 receiver
2017-08-19:
- [SW] Added support for PCR-1000 DSP unit
- [SW] Added support for IC-R8500 APF, NB, AGC and IF-shift
2016-04-02:
- [H] Fixed potential I/O related deadlock
2016-03-03:
- [SH] Stability improvements
2016-02-13:
- [S] Added support for RTL2832 + E4000 tuner
2016-01-25:
- [S] Use MP3 encoder library on Linux systems when possible, for more reliable operation and reduced latency
- [S] Replaced Newtonsoft JSON library with UCIS PML implementation
- [S] Maintain tuning offset in SDRSharp driver to prevent center/edge tuning issues
2016-01-23:
- [S] Fixed audio bit ordering on Raspberry Pi/ARM
- [S] Workaround to detect audio stream disconnection even if source initialization failed in ALSA and OSS recorders
2015-12-16:
- [S] Added Yaesu FT-840 driver
2015-11-18:
- [S] Added support for negative frequency offset in RTL2832 driver
2015-10-17:
- [S] Improved error handling in ALSA audio recorder
- [S] Improved error reporting in audio relay stream initialization
- [S] Prevent crash in logging code when hub connection is lost
2015-10-11:
- [S] Compiled software in Release mode (as it should be), fixes performance regression in SDR decoder.
- [S] Added Deny.Option receiver configuration to disallow access to receiver options
- [S] Handle potential crash on hub connection closure
2015-09-21:
- [S] Fixed DRM button for audio device switching.
2015-08-24:
- [H] Fix deadlock/threadpool exhaustion in AJAX polling communication
- [S] Remove unsupported options from Ten-Tec RX-320 driver
2015-07-25:
- [S] Added option for slow CPUs in RTLSDR V1 decoder
- [S] Added audio AGC in RTLSDR V2 decoder
2015-05-07:
- [S] Re-added support for external audio line in WDM driver
- [SH] Added support for WebSocket audio streaming
2015-04-14:
- [S] Small improvements and bugfixes
- [S] Improved performance in RTLSDR V1 decoder (it can now run on a Raspberry Pi!)
- [S] Added support for JSON-based client-server communication protocol (protocol version 4)
- [S] Support unicode characters in RTLSDR2 RDS decoder
2015-04-04:
- [S] Added extra debugging functions (extra system information, performance counters)
- [S] Improved RTLSDR code (RDS format, FM DC offset, buffer settings, audio level, always-on mode)
- [S] Use two queued transfers in RTLSDR2 code for better performance on old hardware
- [S] Fixed regression in RTLSDR2 AM demodulator
2015-03-16:
- [S] Improved PML code to fix race condition in RPC
2015-03-01:
- [S] Fixed several bugs in RTL-SDR code, improved stability
- [S] Added RDS decoder to RTLSDR2 decoder
- [H] Improved MP3 frame sync for audio recording and RTMP streaming
2015-02-22:
- [S] Send configured frequency to hub for non-tuneable receivers
2015-02-09:
- [S] Performance improvements in RTLSDR2 decoder
- [S] Added NAudio WaveIn audio recorder
- [S] Radio driver code cleanup
- [S] Improved PCR-1000 I/O code and added automatic EEPROM backup
2015-01-19:
- [S] Fixed possible bug in SDR WFM decoder de-emphasis
- [S] Improved reset logic for PCR-1000 by timing out read operations
- [S] Updated RTLSDR2 decoder (added squelch, signal level improvements)
2015-01-08:
- [S] New RTL SDR decoder
2014-11-03:
- [S] Major source code cleanup and refactoring
- [S] Hide audio recorder configuration if not applicable
- [S] Improved error handling during receiver startup
- [S] Automatically update SDRSharp plugin
- [S] Use audio pin directly in WDM FM/TV capture card
2014-10-26:
- [S] Added Icom IC-7100 D-STAR mode
- [S] Added support for FC0013 tuner chip in RTL-SDR decoder
- [H] Fixed unintentional connection throttling caused by thread starvation
- [S] Improved Windows DirectSound capture via SlimDX (lower latency, less chopping, cleanup)
- [S] Allow 3k and 6k filter in SDRSharp receiver interface
- [SH] Fix to prevent blocking connections in audio streaming
2014-10-01:
- [S] Fixed PCR-1000 IF Shift initialization
- [SHP] Added receiver frequency tracking
17-08-2014:
- [S] Fixed regression with audio-only receivers
01-08-2014:
- [S] Added native RTL-SDR support based on rtl_fm code
01-07-2014:
- [SH] Internal changes
- [S] Improved error reporting and samplerate handling in ALSA recorder
- [S] Added support for receiver driver provided by frontend (SDRSharp integration)
- [S] Small fixes (shutdown handling, stream relay timeout handling)
- [S] Added support for RTL-SDR receiver via rtl_fm
09-12-2013:
- [S] Fix for time-out while sending audio data to relay server
- [S] Encode audio at correct sample rate if requested rate is not supported by ALSA recorder
- [S] Limit logging of buffer overflow errors in ALSA driver
07-09-2013:
- [S] Updated PCR-1500 and PCR-2500 drivers to support frequencies up to 3299.999 MHz
12-05-2013:
- [SH] Updated dependency on UCIS Core library
- [S] Fixed TenTec RX320 volume control
- [S] Disabled unsupported Perseus options
- [S] Removed "unsafe" code from ALSA audio recorder
- [SH] Updated HTTP server
07-01-2013:
- [SH] Updated the UCIS HTTP server code
- [SH] Added source code to source control
29-09-2012:
- [S] Small fixes for ARM platform (uint to double conversion fails)
- [H] Improved messages about relay-hub connections and small fixes in relay
14-07-2012:
- [S] Small update to properly reset IF Shift when last user leaves
30-12-2011:
- [H] More error checking in Relay AudioServer.Serve
- [S] Added/improved support for DRM audio from secondary soundcard
30-11-2011:
- [S] Ten-tec RX-320 AGC Off now sets the receiver to AGC Medium instead of Slow
20-11-2011:
- [S] Fixed ALSA audio driver to not use pointers to structures
04-11-2011:
- [HS] Logging context and GLobal Chat via node fixes
- [H] Use the existing PML connection to forward RTMP sessions from the relay to the hub
02-11-2011:
- [S] Added RFT EKD500 receiver driver
31-10-2011:
- [HS] Added support for handling global chat messages by the node
29-10-2011:
- [HS] Added some support for traffic statistics and tuning statistics
- [HS] Cleanup and refactoring
- [S] Released version number 3212
- [HS] Partially fixed logging context when running multiple receivers on one node
26-10-2011:
- [HS] Added support for locking the receiver by owner and admins
27-09-2011:
- [H] Added some commands to the IRC receiver interface
- [H] Added receiver name in downtime notification e-mails
11-08-2011:
- [S] Fixed S-meter in JRC NRD 545 driver
- [S] Added Linux ALSA audio recording driver
15-06-2011:
- [S] Added basic support for attaching to receiver serial port for debugging
- [S] Added more modes to the Icom CI-V driver
07-06-2011:
- [H] In the relay server, transfer the audio feed directly from the audio distribution to the RTMP object (instead of via a TCP connection)
19-05-2011:
- [S] Fixed a bug in UCIS ActivePmlChannel which would lock a thread when reading after the channel had been closed
17-04-2011:
- [S] Updated UCIS Pml Binary Writer code to buffer a message before writing
- [S] Attempt to improve single instance check
- [H] Changed relay port number to 9394 to prepare for the move to another server
08-04-2011:
- [S] Upgraded UCIS Pml code to be easier to use
04-04-2011:
- [S] Added support for ARSWIN rotator
- [S] Made upgrade code even more failsafe (download new files to another directory)
25-03-2011:
- [S] Added support for v4l2-ctl linux command
23-03-2011:
- [S] Fixed a bug in the FMIO drievr that would round the displayed frequency to MHz
17-03-2011:
- [S] Added PCR-2500 D-star and P25 demodulation support
- [S] Changed Icom CI-V AGC behaviour to 'medium' instead of 'super fast'
11-03-2011:
- [S] Added Kenwood TS-2000 driver (derived from TS-480)
- [S] Fixed AOR AR-3000 frequency and attenuator setting
02-03-2011:
- [S] Allow to configure audio device even if initialization of configured device fails
- [S] Fixed JRC NRD545 driver
07-02-2011:
- [S] RTS line is now configurable in Icom CI-V driver
- [SH] Some small fixes
- [S] Added AOR AR-3000(A) driver
03-01-2011:
- [S] Fixed a bug that crashed the installer while testing for SlimDX
- [S] Added support for Icom CI-V antenna switching
03-09-2010:
- [SH] Fixed a bug in the forwarding code that caused problems with the mobile website
02-02-2010:
- [S] First try SlimDX for audio, then try DirectX (loading DirectX on x64 may crash the server)
21-06-2010:
- [S] Added Server.UPnP configuration option to disable the UPnP client
- [S] Extended pid file check to exclude own process ID
22-05-2010:
- [S] Fixed a small bug that might cause an user connection to drop out when broadcasting an EXT message
09-05-2010:
- [S] Updated AOR AR-8000 driver (removed S-meter to prevent popping sound)
29-04-2010:
- [S] Changed RX320 driver to allow for custom filter mapping
- [H] Included RTMP server code in Relay application
11-04-2010:
- [HS] Fixed a bug in the audio relay system which caused audio relaying to break for newly created receivers
04-04-2010:
- [S] Ported/re-added Fanfare FT1A driver
01-04-2010:
- [H] Check whether old connection is still alive when duplicate nodes are detected
23-03-2010:
- [S] Small fix to allow the tuner and audio to be configured even though one of them fails to start
18-03-2010:
- [S] Fixed S-meter in Yaesu FT-817/FT-847 driver
05-03-2010:
- [S] Changed upgrade code to be even more failsafe - hopefully
03-03-2010:
- [S] Converted Yaesu radio driver package from VB.Net to C#
- [S] Released version 3211
- [S] Enhanced PID file management to improve restart times
28-02-2010:
- [S] Removed some obsolete files
- [S] Converted OSS and SlimDX audio drivers from VB.Net to C#
- [S] Converted External, Icom and WDM radio driver packages from VB.Net to C#
27-02-2010:
- [SH] Lowered default minimum and maximum number of idle threads in UCIS ThreadPool class, idle threads will now die if none are busy (clean shutdown)
- [S] Extended support for server 'Frontends'
- [S] Added a GUI Frontend/service manager/server controller
- [S] Rewrote service stop/restart code to use WMI
22-02-2010:
- [S] Changed the logging behaviour to create a backup of the local log file before erasing it
17-02-2010:
- [S] Added some error handling to the receiver initialization, to make the receiver (configuration) accessible even though the receiver fails to start.
- [S] Released version 3210
03-02-2010:
- [S] Fixed another ghost user issue (hopefully)
02-02-2010:
- [S] Fixed some multiple-receiver issues
- [H] Fixed upgrade code (downloads drivers depending on associated receivers)
- [S] Fixed audio configuration (now properly loads per-receiver configuration)
- [HS] Added throttle option to TCP server module (currently unused)
- [H] Fixed IRC receiver control session
29-01-2010:
- [S] Added drivers for Ten-tec RX-320 and RX-350
28-01-2010:
- [HS] Re-wrote much of the hub-radioserver code
- [HS] Hub and radioserver are now using the new improved PmlCommunicator (replaced LegacyPmlCommunicator)
- [HSP] Added support for multiple receivers on one radioserver
- [S] Some fixes in AOR AR-8600 driver
- [S] Released version 3209
- [D] Updated the GlobalTuners desktop client (bugfixes, new features)
14-01-2010:
- [H] Fixed timezone issues in hub software and database definitions (known problem: incorrect timestamps in receiver logs)
- [S] Attempted to fix late 'Read operation timed out' messages (relay mode, ForwardedXmlSocket.Close)
12-01-2010:
- [HS] Added PmlArray to UCIS library, modified PmlCollection to use PmlArray
02-01-2010:
- [PWF] Released new website and flash interface
- [R] Upgraded AOR AR-7030 driver (corrected filter buttons)
- [R] Small bugfix in WDM driver shutdown
30-12-2009:
- [S] Added support for Luc's antenna rotator (ask user vitesse)
29-12-2009:
- [S] Added some code to allow for future extensibility (EXT command)
- [S] Added some code to allow for 'Ask to tune'/'Grant permission' buttons and admin auto-grant
- [S] Released version 3207
26-12-2009:
- [S] (Re)Added/ported JRC NRD-525/545 driver
- [S] Released version 3206
03-12-2009:
- [S] In some cases the radioserver did not report leaving users to the hub, resulting in users still being marked as 'logged in' (fixed)
- [S] AOR AR-8200 driver: changed baud rate selection to dropdown
- [P] Fixed redirect function, which broke on URLs containing any special characters (especially &) (affected share.php)
16-11-2009:
- [HS] Fixed a few bugs introduced earlier on, related to relaying
- [S] Fixed a bug which caused the radioserver to enter an infinite loop when the MP3 encoder was failing
15-11-2009:
- [H] Some more optimizations and cleanup in Hub, Relay and UCIS library code
- [HS] Added support for multiple quality audio streams to Relay server, RadioServer and Hub
- [S] Released version 3205
14-11-2009:
- [PW] Added links to use the audio streams in an external MP3 player to the JavaScript interface
- [PW] Created some pages and scripts for the Mobile website: http://www.globaltuners.com/mobile/
- [H] Added support for webpage-reload-based receiver interface (Mobile website)
- [P] Finished Mobile receiver interface
- [H] Code cleanup and optimizations
10-11-2009:
- [S] Removed signal meter reading from fmio/v4l radio driver to fix a NullReferenceException
30-10-2009:
- [HS] Small change in TcpStream class to properly close sockets
- [S] Added Yaesu FRG-8800 driver, contributed by VK4FSGW
- [S] Decreased minimum tuning step and fixed a squelch problem in AOR AR-8000 driver, fixes contributed by VK4FSGW
- [S] Released version 3204
31-08-2009:
- [S] Fixed a bug that could slow down forwarded connections
30-08-2009:
- [S] Fixed a bug in the Uniden BC785 driver which caused the receiver to report offline after each tune operation
- [S] Modified the AOR AR-8600 driver to be compatible with the AR-8000
- [S] Added support for per thread debugging and stack traces
- [H] Reduced resource usage by eliminating one thread per connected client node
- [S] Some code cleanup to reduce file size, attempted to fix some bugs in ThreadPool code
24-08-2009:
- [S] Added driver for Uniden BC785
23-08-2009:
- [S] Added driver for Ten-tec RX-340 receiver
- [S] Added support for relative frequency and option (squelch etc) changing
- [S] Added some statements to debug ghost user issues on V3202+
- [W] Added support for relative frequency and option changing which makes interface more responsive
18-08-2009:
- [S] Fixed Yaesu VR-5000 driver
- [S] Added support for remote serial port debugging/control
17-08-2009:
- [S] Added support for frequency indication on audio only nodes
- [P] Automatically selecting special interface for audio only nodes
- [S] More failsafe restart procedure by moving some of the cleanup procedure to an async call, will restart even when a deadlock occurs
- [S] Fixed error handling which caused an unhandled exception in the framework's tread pool (LegacyPmlCommunicator.SyncRequestHandler)
- [H] Added support for a more flexible free text cascaded command interface
- [H] Introduced a new NODECMD command to the web interface
- [WPF] Added support for on-demand reconnection after connection is lost in JavaScript radio interface
- [WP] Added support for fixed frequency receivers in JavaScript radio interface
- [S] Added support for flexible free text cascaded command interface
- [S] Released version 3203
14-08-2009:
- [S] Added device selection to SlimDX audio recorder
- [S] Slightly modified audio recorder selection in CONF_RECORDER_CONFIG call
19-07-2009:
- [WP] Added URL detection/conversion to hyperlink to forum and news areas
16-07-2009:
- [P] Forum did not set FirstPost field for thread, fixed and updated the database
- [WP] Now using forum for news posts
- [H] Hub will now automatically kick (unauthorative) nodes when their (authorative) duplicate disconnects
- [H] Decreased timeouts in PHP (AJAX/Comet) receiver session handling
14-07-2009:
- [S] Fixed a problem in the Flash Cross Domain Policy File that prevented the classic interface from connecting
- [S] Upgrade backup files will now be moved to a new directory: upgrade_backup, hopefully evading any locking of the file
- [S] Improved reply reading in Icom CI-V driver
- [S] Added option for live soundcard switching for use with DRM decoder
13-07-2009:
- [S] Released version 3200
- [S] Added options to remotely modify bandguides
- [WP] Added pages to edit bandguides
- [L] Working SilverLight streaming MP3 player
- [L] Working XML based SilverLight-RadioServer communication - looking for alternatives to XML
- [S] Cleaned up GTController code
- [S] Improved client time-out detection
- [S] Modified some logging code to provide more informative receiver/user tagged entries
- [S] Radio drivers take an ISettingsCollection implementation for configuration, instead of a SettingsCollection instance
10-07-2009:
- [S] Completely re-ordered hub/server/audio related code
- [S] Major code cleanup and re-ordering
- [S] Added modules to improve interaction with the GlobalTuners database (GlobalTuners, GTUser, GTReceiverStatus)
- [S] Wrote general purpose caching class
- [S] Added AudioProcessor class, re-wrote all audio subsystem code to allow real-time recorder/channel/encoder switching, volume adjustment and DSP
08-07-2009:
- [S] Added support for single channel (left or right) audio recording
07-07-2009:
- [HP] Added support for live nodes listing
- [HP] Added support for kicking connected clients
- [H] Log data from radioserver is now written to the system log
- [P] Added date/time span limitation to SysLog viewer to increase performance
- [S] Changed version number to 3114
- [W] Changed forum thread/posts layout
- [WP] Added support for editing forum posts
- [WP] Added page numbering to forum thread list
- [W] Changed the support thread layout
- [W] Added Frequently Asked Questions page
03-07-2009:
- [HS] Migrated the PML communication layer in the node-hub communication
- [H] Enhanced support for 'duplicate' nodes
- [S] Fixed a bug in the PING/PONG code (counter was not cleared resulting in excessive traffic)
29-06-2009:
- [S] Cleaned up redundant variables in GTController class
- [S] Added possibility to run the server without a Radio instance
- [S] Audio URL detection is now based on whether the control socket is relayed or not
- [H] Added code to reconnect a duplicate node after the first one disconnects
- [H] Always sending audio relay base URL, just in case...
18-06-2009:
- [H] Added e-mail (optional!) notification when a receiver goes down
16-06-2009:
- [P] Changed the logging event codes, added a function to search and print log information
- [C] Desktop client: mpg123+DirectX audio, updated the protocol handler, added distribution to Downloads section of website
- [H] Converted the Hub code to C#
14-06-2009:
- [SWF] Added STREAMS command to inform the interface about available audio streams, added support to JavaScript and Modern flash interfaces
- [F] Integrated GlobalChat socket in Modern flash interface
- [H] Increased website session timeout from 1 hour to two hours
- [H] Allow receiver sessions closed less than 10 minutes ago back in
- [D] Added an how-to on how to setup bandgudies
- [S] Fixed a bug in the STREAMS comment which affects the medium quality stream (was sending stream name instead of mountpoint)
- [PS] Migrated some of the website and hub maintenance to a new logging system
12-06-2009:
- [WP] Added JavaScript interface to the user's/receiver default interface selection
- [WP] Fixed MSIE-only bugs in JavaScript interface (local chat going into global chat)
- [WP] Added basic page numbering to forum threads
- [H] Changed relay server address to relay.globaltuners.com
- [W] Added mouse-over effect to menu items
06-06-2009:
- [W] Replaced "x unread forum threads" link in template/menu bar with a more informative link target
- [P] Fixed a bug that caused errors on some pafes after a forum thread had been deleted
- [P] Replaced "DB_Eval" with "DB_EvalRow" in forum pre-caching code
01-06-2009:
- [W] Changed font to "Arial, Helvetica, sans-serif" / small
- [W] Javascript PING-timeout seems to be fixed (using instead of )
29-05-2009:
- [W] Fixed Global Chat in JavaScript interface
28-05-2009:
- [W] Fixed some design/stylesheet problems in IE6
26-05-2009:
- [WP] Added WMP and VLC audio players to JS interface, added audio player selection
- [WP] Fixed AJAC communication in JavaScript interface for MSIE(6)
25-05-2009 (V3113):
- [P] Fixed kick option in status page
- [S] Fixed hub link connection time-out bug which mostly affected forwarded connections (use UCIS TCPStream instead of MS NetworkStream)
- [P] Added some classes for forum access, modified forum.php and thread.php to use the classes
- [P] Added database cache to User and Forum* classes
24-05-2009:
- [P] Introduced some PHP classes to simplify internal receiver/user management
- [D] Stereo/Mono option will now change the AudioMode of the WDM Radio driver
- [WP] Slightly changed the website layout
23-05-2009:
- [HPW] Added AJAX/Comet based communication module to JavaScript interface
- [SH] Fixed a bug in the PmlConnection class which caused connection time outs
- [WP] Each forum thread and post has a unique ID number from now on
- [W] Added list of active forum threads to the website layout
22-05-2009 (V3112):
- [SHP] Added audio/control connection relaying support
Before 22-05-2009:
- [S] Re-wrote most code in C#
- [SH] Introduced PML for reliable multiplexed communications and remote procedure calls
- [PH] Added support for remote procedure calls from PHP to the Hub
- [H] Added logging to IRC
- [WH] Added Global Chat (flash based communication)
- Created GlobalTuners! :-D
17-02-2008:
- Fixed unclean shutdown in TCPServer and ICom PCR-1000 modules
- Redesigned portal communication protocol
- Added remote restart
- Fixed unclean client shutdown which caused disconnected users to show up in status info
13-02-2008:
- Changed delay in Icom CI-V communication from 10ms to 50ms
- Renamed project to URadioServer - DXTunerServer.cfg config file will be renamed automatically
- Removed old DXTuners heartbeat code
- Added new portal communication protocol module
16-01-2008:
- Changed text encoding for controller connections to UTF-8 (instead of Latin1), to support non-ASCII characters in the communication with the flash controller.
14-01-2008:
- Fixed DirectSound recorder device selection bug
- Enhanced PCR1500 support
- Removed PCR1000 BaudRate setting
- Renamed PCR1000.ComPort setting to PCR.ComPort
13-01-2008:
- Added updated readdsp binary to the package, this fixes the Linux 22050Hz samplerate issue on linux
09-01-2008:
- Fixed PCR1000 baudrate setting
07-01-2008:
- Added file logging for error messages
- Added stand-alone console server to installer package (for debugging purposes)
18-12-2007:
- Added PCR1000 baudrate setting (for use with other PCR radios, use 38400 for PCR1500)
- Much time has been spend on a new portal communication system for easier management and debugging
07-12-2007:
- Added frequency exclusion to configuration tool
- Added NodeInfo and Bandguide options to configuration tool
05-12-2007:
- Added DTR option for Icom CI-V serial port communication
- Attempted to fix 100% CPU usage bug (in DXTController.ServeClient)
04-12-2007:
- Fixed tuning bugs in JRC NRD-525 driver
03-12-2007:
- Added audio recorder configuration to configuration tool
- Fixed a bug in the Icom PCR-1000 configuration
02-12-2007:
- Added (windows) configuration tool
01-12-2007:
- Added windows installer package
- Added a Windows background Service version of the server application
30-11-2007:
- Added HTTP headers to prevent proxyservers from caching content (MP3 streams for example...)
29-11-2007:
- Renamed the main application and config file to DXTunerServer.exe and DXTunerServer.cfg!
- Rewrote the DXRFC-0001 to DXRFC-0001.1
- Added bandguides directory to server package
- Added configuration options to forbid frequencies, modes and filters
- Fixed some critical bugs I introduced earlier today
- Added support for the Icom CI-V protocol
28-11-2007:
- Fixed a bug in the Yaesu CAT driver and tested the driver with Dan.
- Default bandguide text is now read from NodeInfo.txt (most DXTuners options can be removed from the config file)
- Started testing with Icom CI-V protocol (Radio.Icom.dll -> CIV)
* [H] indicates a change in the Hub code (which may not be active until the Hub is restarted!)
* [S] indicates a change in the URadioServer code
* [P] indicates a change in the PHP scripts of the website
* [W] indicates a change in the rest of the website
* [F] indicates a change in the flash interface
* [D] indicates a change in the Desktop Client