From cdce17874a21ba0116b64e5cc943df27138d647f Mon Sep 17 00:00:00 2001 From: Hermes Date: Wed, 30 Sep 2026 11:30:33 +0200 Subject: [PATCH] hilink: map 0 to 100 power control to RTL range --- .../general/overlay/usr/bin/wfb-power | 5 +++-- .../general/overlay/usr/bin/wifibroadcast | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/devices/ssc338q_fpv_openipc-urllc-aio/general/overlay/usr/bin/wfb-power b/devices/ssc338q_fpv_openipc-urllc-aio/general/overlay/usr/bin/wfb-power index d6800eb..f68dfc8 100755 --- a/devices/ssc338q_fpv_openipc-urllc-aio/general/overlay/usr/bin/wfb-power +++ b/devices/ssc338q_fpv_openipc-urllc-aio/general/overlay/usr/bin/wfb-power @@ -18,8 +18,9 @@ fi trap 'rmdir "$LOCK" 2>/dev/null || true' EXIT HUP INT TERM if pidof wfb_tx wfb_rx wfb_tun wifilink >/dev/null; then - # RTL8812EU expects the OpenIPC scalar multiplied by 50 mBm. - iw wlan0 set txpower fixed $((POWER * 50)) + # RTL8812EU accepts 0..3150 mBm driver units; map the user-facing 0..100 + # scalar over that complete hardware-supported range. + iw wlan0 set txpower fixed $((POWER * 3150 / 100)) logger -t wfb-power "runtime txpower=$POWER" exit 0 fi diff --git a/devices/ssc338q_fpv_openipc-urllc-aio/general/overlay/usr/bin/wifibroadcast b/devices/ssc338q_fpv_openipc-urllc-aio/general/overlay/usr/bin/wifibroadcast index 9fbbf6d..857dfb0 100755 --- a/devices/ssc338q_fpv_openipc-urllc-aio/general/overlay/usr/bin/wifibroadcast +++ b/devices/ssc338q_fpv_openipc-urllc-aio/general/overlay/usr/bin/wifibroadcast @@ -86,7 +86,7 @@ load_interface() { iw "$wfb_dev" set channel "$channel" "$wfb_width" iw reg set 00 - [ "$driver" = "88XXau" ] && wfb_power=$((txpower * -100)) || wfb_power=$((txpower * 50)) + [ "$driver" = "88XXau" ] && wfb_power=$((txpower * -100)) || wfb_power=$((txpower * 3150 / 100)) iw "$wfb_dev" set txpower fixed "$wfb_power" }