Skip to content

Commit 864e348

Browse files
boybookclaude
andcommitted
feat: add RFPOWER_METER_WATTS level support
Add string mapping for RFPOWER_METER_WATTS in GetLevel and GetSupportedLevels, enabling JS callers to read absolute watt power readings from radios that support it (e.g. IC-705, IC-7300). Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 24e491e commit 864e348

3 files changed

Lines changed: 5 additions & 2 deletions

File tree

index.d.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ interface SplitStatusInfo {
178178
type LevelType = 'AF' | 'RF' | 'SQL' | 'RFPOWER' | 'MICGAIN' | 'IF' | 'APF' | 'NR' |
179179
'PBT_IN' | 'PBT_OUT' | 'CWPITCH' | 'KEYSPD' | 'NOTCHF' | 'COMP' |
180180
'AGC' | 'BKINDL' | 'BALANCE' | 'VOXGAIN' | 'VOXDELAY' | 'ANTIVOX' |
181-
'STRENGTH' | 'RAWSTR' | 'SWR' | 'ALC' | 'RFPOWER_METER' |
181+
'STRENGTH' | 'RAWSTR' | 'SWR' | 'ALC' | 'RFPOWER_METER' | 'RFPOWER_METER_WATTS' |
182182
'COMP_METER' | 'VD_METER' | 'ID_METER' | 'TEMP_METER' | string;
183183

184184
/**

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "hamlib",
3-
"version": "0.2.6",
3+
"version": "0.2.7",
44
"description": "Node.js wrapper for hamlib radio control library",
55
"main": "index.js",
66
"module": "lib/index.mjs",

src/hamlib.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2962,6 +2962,8 @@ Napi::Value NodeHamLib::GetLevel(const Napi::CallbackInfo & info) {
29622962
levelType = SHIM_RIG_LEVEL_RAWSTR;
29632963
} else if (levelTypeStr == "RFPOWER_METER") {
29642964
levelType = SHIM_RIG_LEVEL_RFPOWER_METER;
2965+
} else if (levelTypeStr == "RFPOWER_METER_WATTS") {
2966+
levelType = SHIM_RIG_LEVEL_RFPOWER_METER_WATTS;
29652967
} else if (levelTypeStr == "COMP_METER") {
29662968
levelType = SHIM_RIG_LEVEL_COMP_METER;
29672969
} else if (levelTypeStr == "VD_METER") {
@@ -3026,6 +3028,7 @@ Napi::Value NodeHamLib::GetSupportedLevels(const Napi::CallbackInfo & info) {
30263028
if (levels & SHIM_RIG_LEVEL_SWR) levelArray[index++] = Napi::String::New(env, "SWR");
30273029
if (levels & SHIM_RIG_LEVEL_ALC) levelArray[index++] = Napi::String::New(env, "ALC");
30283030
if (levels & SHIM_RIG_LEVEL_RFPOWER_METER) levelArray[index++] = Napi::String::New(env, "RFPOWER_METER");
3031+
if (levels & SHIM_RIG_LEVEL_RFPOWER_METER_WATTS) levelArray[index++] = Napi::String::New(env, "RFPOWER_METER_WATTS");
30293032
if (levels & SHIM_RIG_LEVEL_COMP_METER) levelArray[index++] = Napi::String::New(env, "COMP_METER");
30303033
if (levels & SHIM_RIG_LEVEL_VD_METER) levelArray[index++] = Napi::String::New(env, "VD_METER");
30313034
if (levels & SHIM_RIG_LEVEL_ID_METER) levelArray[index++] = Napi::String::New(env, "ID_METER");

0 commit comments

Comments
 (0)