openwebrxplus-plugins

OpenWebRX+ Plugins

MIT License

OpenWebRX+ Plugins is a community-driven collection of plugins that extend OpenWebRX+ with new features, UI enhancements, and integrations for SDR receivers.

Table of Contents

Project Overview

This repository provides a set of plugins for OpenWebRX+, allowing users to customize and enhance their SDR experience. Plugins are grouped into:

Each plugin is documented in its own folder.

Plugin List

Receiver Plugins

Name Description
search_bookmarks Search all OWRX bookmarks and click to tune (Yannis)
toggle_scannable Toggle the scannable state of bookmarks with right mouse button
tune_precise Add buttons for precise frequency tuning (LZ2DMV)
mouse_freq Show frequency under cursor on the waterfall
doppler Track Doppler shift/effect of satellites
magic_key Set MagicKey without typing it in the browser’s address bar
screenshot Take screenshot of the waterfall
screen_reader Provide spoken notifications for accessibility
antenna_switcher Antenna switching for Raspberry Pi devices (LZ2DMV)
tune_checkbox Enable mouse-scroll to zoom by default (LZ2DMV)
frequency_far_jump Jump to a frequency outside the current profile (LZ2DMV)
keyboard_shortcuts (deprecated) Add keyboard shortcuts
colorful_spectrum Colorize the spectrum analyzer
connect_notify Send/receive notifications on user connect/disconnect
sort_profiles Sort profiles by name
utils Utility plugin, required by many plugins
notify Notification utility plugin
example Example plugin for developers
example_theme Example theme plugin for developers

Map Plugins

Name Description
layer_qth_maidenhead (deprecated) Add Maidenhead (QTH) grid to the map

Thirdparty Plugins

Name Description
owrxantswitcher Switch antenna ports using a WebAPI on the server.

Installation & Loading Plugins

  1. Find your OpenWebRX+ htdocs folder
    Use the following command to locate it:

    find / -name openwebrx.js
    
  2. Typical locations for htdocs:
    • /opt/openwebrx/htdocs
    • /usr/lib/python3/dist-packages/htdocs
  3. Create the plugins folders if they doesn’t exist

    mkdir -p /path/to/htdocs/plugins/{receiver,map}
    
  4. Create or edit the init.js file inside the coresponding plugin type folder (receiver or map)
    Use the provided templates:
  5. Add plugin loading lines to your init.js file
    For example:

    Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/receiver/tune_precise/tune_precise.js');
    

Example setup for receiver plugins

OWRX_FOLDER=$(dirname `find / -name openwebrx.js`)
mkdir -p "$OWRX_FOLDER/plugins/receiver"
cd "$OWRX_FOLDER/plugins/receiver"
wget https://0xaf.github.io/openwebrxplus-plugins/receiver/init.js.sample -O init.js
${EDITOR-nano} init.js

See each plugin’s README for specific instructions.

Raspberry Pi & Docker Notes

Developing Plugins

If you want to create new plugins:

  1. Get familiar with the OWRX+ JS codebase.
  2. Review the example plugin and example theme plugin.
  3. Develop plugins locally in $OWRX_FOLDER/plugins/{type}/your_plugin/.
  4. Load local plugins by folder name:
    Plugins.load('your_plugin');
  5. Load remote plugins by URL (example for map plugin):
    Plugins.load('https://0xaf.github.io/openwebrxplus-plugins/map/layer_qth_maidenhead/layer_qth_maidenhead.js');

Hosting on GitHub

To host plugins on GitHub, use GitHub Pages for correct JS Content-Type.

Contributing

Contributions are welcome!

Support

Use these plugins at your own risk. No warranty is provided.
For support, contact LZ2SLL or join the OWRX+ Telegram Chat.

FAQ

Q: My plugin changes are not visible after editing init.js.
A: If using Raspberry Pi images, restart varnish and nginx as described above.

Q: Where do I put my local plugins?
A: In the htdocs/plugins/receiver or htdocs/plugins/map folder of your OpenWebRX+ installation.

Q: How do I load a plugin from a URL?
A: Use Plugins.load('https://.../plugin_name/plugin_name.js'); in your init.js.


Contributors


License

This project is licensed under the MIT License.