RFKitAmpTuner PgTgBridge Plugin Version 1.1.4 by N3OC ------------------------------------------------------ RFKitAmpTuner PgTgBridge Plugin is a plugin designed to operate with PgTg Bridge by KD4Z and provide functionality for the RF-Power RF2K-S amplifier. (It may work on other RFKIT amplifiers with similar APIs but has not been tested.) The plugin must be added to the PgTg plugin directory, either manually or by using this installer. After installation, it must be configured with the IP address of the RF2K-S amplifier in the PgTg Controller settings menu, then PgTg must be restarted and the PgTg service restarted. Not every feature of the RF2K-S is supported. The plugin uses the APIs made available in the amplifier software by RF-Power and are mapped by the plugin into similar Elecraft KPA1500 functions. Some APIs do not exist, and feature requests have been made with the RF2K-S developers to add these and they will be added to this plugin when made available. You can continue to use VNC for a remote operate screen of the amp, and continue to use CAT connections to the amp. This plugin does not interfere with any of those and will work along side of those connections. INSTALLATION ------------ The program uses the NSIS installer and just follow the on-screen instructions. The installer will attempt to stop PgTg Bridge, close PgTg Controller, and stop the PgTg service before installing the plugin. The file cannot be written to the plugin directory unless PgTg is completely stopped. After the file is copied, the installer will attempt to restart PgTg. Uninstall will completely remove the plugin and its registry keys, but will not remove PgTg or any other plugins. KNOWN ISSUES ------------ 1. Version 1.1.3 and later implement the tune API for amplifiers that have the custom REST API server python module (restServer.py) changes entered. The tune cycle occasionally receives a ResponseEnded error from the amplifier. The plugin will repeat the tune command up to 5 times if this occurs, and it will usually succeed on the second or third try. A copy of the modified restServer.py module is in the distribution zip file, as well as instructions on how to install this modified rest server in your amplifier (at your own risk). You need to backup your existing restServer.py module to restServer_backup.py and copy the new file into the amplifier, then reboot. Instructions on how to do this are also in the distribution zip file. The modified rest server module is based on the current software release, GUI186 and is backwards-compatible. After installing this, if you update your amp software using the updater, it will overwrite the modifications and the mod must be repeated, until RF-Power decides to add this API to their mainstream software release. If they do add it, it might be different that how I did it, in which case I will modify the plugin at that time to use the method they implemented it. NOTE - you can still use plugin version 1.1.3 and newer even if you do not modify the rest server in your amp, in which case clicking the Tune button in SmartSDR will start a tune cycle and immediately abort it without doing anything. 2. RF2K-S only reports the amplifier power by API. It does not report any separate tuner power values, so the Tuner Genius panel in SmartSDR will show the same RF power as the Power Genius panel. 3. Inductor and capacitor values shown on the SmartSDR Tuner Genius panel are not the actual values if they are over 256. This is a limitation of the Tuner Genius panel meters which have a full scale of 256, where the RF2K-S has capacitor and inductor values higher than this. If values are present over 256, the meter will roll over, and the value displayed will either be 256 or 512 higher than what the Tuner Genius meter panel shows. Also, the tuner in the RF2K-S is a LC or CL tuner (not a pi-tuner) so there is no C2 value to report. RELEASE HISTORY --------------- 1.1.4 - exposed timing constants to a JSON file the user can edit, located in the C:\ProgramData\PgTg\RfKitAmpTuner folder, added a copy of restServer.py (GUI 186) to the distribution zip file 1.1.3 - fixed tuning on a band where tuner was disabled, now ignores the tune command and instead sends synthetic TPL 1 then TPL 0 to bridge to stop the tune cycle 1.1.2 - updated for PgTg 1030, updated NuGet dependencies, changed PUT commands to HTTP 1.1 to try to mitigate Http ResponseEnded errors from the amp rest server, trap out FRQ poll responses from ResponseParser 1.1.1 - reverted plugin disconnect code to 1.0.9, added tuner start HTTP command, removed reconnect on transient HTTP send errors, moved HTTP error logging to LogError, added up to 5 retries for HTTP PUT to mitigate 409 errors from the amp 1.1.0 - implemented tune command but broke device control panel reconnect after plugin disconnect 1.0.9 - bring in device ID as serial number to populate title of device control panel window 1.0.8 - muted PTT during standby to prevent SmartSDR from toggling operate/standby LED on every PTT, muted fan polling 1.0.7 - improved REST API performance during transmit (fast meter polling) where the plugin would occasionally go into reconnecting status. 1.0.6 - updated to work with PgTg version 1014. Implemented fault text reporting to SmartSDR via PgTg, temporarily masking PTT sent to PgTg until bug is fixed where SmartSDR toggles operate/standby on every PTT. 1.0.5 - updated to work with PgTg version 1011. Fixed device control panel power LED, now it is tied to device connection detection and will turn off if the amp is no longer detected via TCP connection status. There is no RFKIT power on/off API so the power LED is not clickable. 1.0.4 - updated to work with PgTg version 1010. All device control panel functions working except power LED which is still linked to operate/standby LED. 1.0.3 - updated to work with PgTg version 1007, fixed antenna polling on the device control panel 1.0.2 - first working, stable release for PgTg version 1000, with partial functionality of the device control panel. SUPPORT ------- Support for third-party plugins is not provided by Warren, KD4Z. You can ask for help on the PgTg Groups.Io group or the PgTg Facebook group. You can also email N3OC at n3oc.brian@gmail.com and I will try to help.