Browse Source

pypackage add txpower min, high

Now txpower can be one of min, low, high, max
pull/54/head
Jan-Jonas Sämann 3 years ago
parent
commit
d5252866f8
  1. 4
      tools/rpi/ahoy.yml.example
  2. 8
      tools/rpi/hoymiles/__init__.py

4
tools/rpi/ahoy.yml.example

@ -8,7 +8,7 @@ ahoy:
nrf:
- ce_pin: 22
cs_pin: 0
txpower: 'low' # default txpower (low,max)
txpower: 'low' # default txpower (min,low,high,max)
mqtt:
disabled: false
@ -32,7 +32,7 @@ ahoy:
inverters:
- name: 'balkon'
serial: 114172220003
txpower: 'low' # txpower per inverter (low,max)
txpower: 'low' # txpower per inverter (min,low,high,max)
mqtt:
send_raw_enabled: false # allow inject debug data via mqtt
topic: 'hoymiles/114172221234' # defaults to 'hoymiles/{serial}'

8
tools/rpi/hoymiles/__init__.py

@ -11,7 +11,7 @@ import re
from datetime import datetime
import json
import crcmod
from RF24 import RF24, RF24_PA_LOW, RF24_PA_MAX, RF24_250KBPS, RF24_CRC_DISABLED, RF24_CRC_8, RF24_CRC_16
from RF24 import RF24, RF24_PA_MIN, RF24_PA_LOW, RF24_PA_HIGH, RF24_PA_MAX, RF24_250KBPS, RF24_CRC_DISABLED, RF24_CRC_8, RF24_CRC_16
from .decoders import *
f_crc_m = crcmod.predefined.mkPredefinedCrcFun('modbus')
@ -319,8 +319,12 @@ class HoymilesNRF:
self.radio.setCRCLength(RF24_CRC_16)
self.radio.enableDynamicPayloads()
if txpower == 'low':
if txpower == 'min':
self.radio.setPALevel(RF24_PA_MIN)
elif txpower == 'low':
self.radio.setPALevel(RF24_PA_LOW)
if txpower == 'high':
self.radio.setPALevel(RF24_PA_HIGH)
else:
self.radio.setPALevel(RF24_PA_MAX)

Loading…
Cancel
Save