From 6bfc5657a29479632d9cbd6a9e437659bbb97e5a Mon Sep 17 00:00:00 2001 From: Joerg Date: Fri, 5 Dec 2025 18:24:49 +0100 Subject: [PATCH 1/5] Respect ENV-Param WLGATE_SLEEP to enable sleeping/snooze --- main.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/main.js b/main.js index 7d3cee4..dbda7d3 100644 --- a/main.js +++ b/main.js @@ -9,6 +9,7 @@ const WebSocket = require('ws'); // In some cases we need to make the WLgate window resizable (for example for tiling window managers) // Default: false const resizable = process.env.WLGATE_RESIZABLE === 'true' || false; +const sleepable = process.env.WLGATE_SLEEP === 'true' || false; const gotTheLock = app.requestSingleInstanceLock(); @@ -259,7 +260,9 @@ process.on('SIGINT', () => { app.on('will-quit', () => { try { - powerSaveBlocker.stop(powerSaveBlockerId); + if (!sleepable) { + powerSaveBlocker.stop(powerSaveBlockerId); + } } catch(e) { console.log(e); } @@ -270,7 +273,9 @@ if (!gotTheLock) { } else { startserver(); app.whenReady().then(() => { - powerSaveBlockerId = powerSaveBlocker.start('prevent-app-suspension'); + if (!sleepable) { + powerSaveBlockerId = powerSaveBlocker.start('prevent-app-suspension'); + } s_mainWindow=createWindow(); globalShortcut.register('Control+Shift+I', () => { return false; }); app.on('activate', function () { From 7eb9edcca5458ff52866c0cdcf576b32d2dc4008 Mon Sep 17 00:00:00 2001 From: Joerg Date: Sat, 6 Dec 2025 08:03:45 +0100 Subject: [PATCH 2/5] Update Electron --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 35806f9..f2d71b0 100644 --- a/package.json +++ b/package.json @@ -34,7 +34,7 @@ "@electron-forge/maker-zip": "^7.10.2", "@electron-forge/plugin-auto-unpack-natives": "^7.10.2", "@electron-forge/publisher-github": "^7.10.2", - "electron": "^36.9.2", + "electron": "^36.9.5", "electron-rebuild": "^3.2.9" } } From 3d82d695484524ab8753f1c89ddb3119e62f8e75 Mon Sep 17 00:00:00 2001 From: Joerg Date: Sat, 6 Dec 2025 08:08:06 +0100 Subject: [PATCH 3/5] Added Hints for ENV-Vars to Readme --- README.md | 37 ++++++++++++++++++++++++++++++++++--- 1 file changed, 34 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index be1f432..205ccd6 100644 --- a/README.md +++ b/README.md @@ -199,15 +199,46 @@ Access advanced settings by pressing **Ctrl+Shift+D** in the configuration windo **Note**: Advanced settings are in beta - restart the application after changes to ensure they're applied correctly. -### Special: Tiling Window Managers like i3 or Hyprland +### Environment Variables -With tiling window managers the window will be at it's fixed size which is usually okay for the normal user. In tiling WM this doesn't work properly. To fix that you can allow the window to resize by setting a env variable. This will only affect a handful of users and they will know how to handle it. +WaveLogGate supports two environment variables to control specific behaviors: +#### WLGATE_RESIZABLE +**Purpose**: Makes the application window resizable instead of fixed size + +**Use Case**: Useful for tiling window managers (i3, Hyprland, etc.) or when you need to resize the window manually + +**Linux/macOS Usage**: ```bash export WLGATE_RESIZABLE=true -./path_to_your_bin +./waveloggate +``` + +**Windows Usage**: +```cmd +set WLGATE_RESIZABLE=true +WavelogGate.exe +``` + +#### WLGATE_SLEEP +**Purpose**: Enables sleeping/snooze functionality for the application + +**Use Case**: When set, allows WaveLogGate to enter sleep mode during inactivity, reducing system resource usage. **DANGER** Use with care. It may happen that CAT stops working with this setting. + +**Linux/macOS Usage**: +```bash +export WLGATE_SLEEP=true +./waveloggate ``` +**Windows Usage**: +```cmd +set WLGATE_SLEEP=true +WavelogGate.exe +``` + +**Note**: Both environment variables are optional and only need to be set when the specific functionality is required. + ## Development ### Prerequisites From aa58fd6a220a0e703296c02e00c17f5b966a500c Mon Sep 17 00:00:00 2001 From: Joerg Date: Sat, 6 Dec 2025 08:09:56 +0100 Subject: [PATCH 4/5] Removed CTRL+ALT+D Hint. not longer needed --- README.md | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/README.md b/README.md index 205ccd6..e7fdbb2 100644 --- a/README.md +++ b/README.md @@ -188,17 +188,6 @@ ws.onmessage = (event) => { }; ``` - -## Advanced Settings - -Access advanced settings by pressing **Ctrl+Shift+D** in the configuration window: - -- **Force Hamlib**: Override FLRig and use Hamlib instead -- **Disable Power Transfer**: Stop sending power readings to WaveLog -- **Debug Options**: Additional logging and troubleshooting options - -**Note**: Advanced settings are in beta - restart the application after changes to ensure they're applied correctly. - ### Environment Variables WaveLogGate supports two environment variables to control specific behaviors: From e51cca6f71d72525d94fd4bc7a5aa9fa3c185688 Mon Sep 17 00:00:00 2001 From: Joerg Date: Sat, 6 Dec 2025 08:11:38 +0100 Subject: [PATCH 5/5] Corrected ID for Hamlib, IC7300, removed example Radio-IDs (use rigctld -l instead) --- README.md | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/README.md b/README.md index e7fdbb2..a1789ac 100644 --- a/README.md +++ b/README.md @@ -121,14 +121,14 @@ As an example for Icom transceivers like the IC-7300, you can use `rigctld` (Ham 2. **Start rigctld for IC-7300**: ```bash # Basic configuration for IC-7300 on USB serial port - rigctld -m 306 -r /dev/ttyUSB0 -s 38400 -T localhost -t 4532 + rigctld -m 3073 -r /dev/ttyUSB0 -s 38400 -T localhost -t 4532 # Windows example (replace COM3 with your actual port) - rigctld.exe -m 306 -r COM3 -s 38400 -T localhost -t 4532 + rigctld.exe -m 3073 -r COM3 -s 38400 -T localhost -t 4532 ``` **Parameters explained**: - - `-m 306`: Model number for - e.g. - Icom IC-7300 (use `rigctl -l` to see all models) + - `-m 3073`: Model number for - e.g. - Icom IC-7300 (use `rigctl -l` to see all models) - `-r /dev/ttyUSB0`: Serial port device (adjust for your setup / on Windows its COMx) - `-s 38400`: Serial baud rate (IC-7300 default is 38400) - `-T localhost`: TCP host for rigctld daemon @@ -139,20 +139,13 @@ As an example for Icom transceivers like the IC-7300, you can use `rigctld` (Ham - Host: `127.0.0.1` - Port: `4532` (must match rigctld port) -#### Common Hamlib Model Numbers -- **Icom IC-7300**: `306` -- **Icom IC-705**: `439` -- **Icom IC-7610**: `378` -- **Yaesu FT-891**: `161` -- **Yaesu FT-991A**: `146` - #### Troubleshooting Hamlib ```bash # List all supported radios rigctl -l # Test connection (run after rigctld is running) -rigctl -m 306 -r /dev/ttyUSB0 get_freq +rigctl -m 3073 -r /dev/ttyUSB0 get_freq ``` **Important**: `rigctld` must remain running in the background for WaveLogGate to control your radio.