Power Management Software Errors

Just installed the software per the demo video. It’s failing badly:

Apr 29 16:48:12 picayune-2 systemd[1]: Started Sixfab PMS Agent.
Apr 29 16:48:13 picayune-2 python3[24329]: Traceback (most recent call last):
Apr 29 16:48:13 picayune-2 python3[24329]: File “agent.py”, line 4, in
Apr 29 16:48:13 picayune-2 python3[24329]: from core import Agent
Apr 29 16:48:13 picayune-2 python3[24329]: File “/opt/sixfab/pms/agent/core/init.py”, line 9, in
Apr 29 16:48:13 picayune-2 python3[24329]: from .modules import *
Apr 29 16:48:13 picayune-2 python3[24329]: File “/opt/sixfab/pms/agent/core/modules/init.py”, line 3, in
Apr 29 16:48:13 picayune-2 python3[24329]: from .set_configurations import set_configurations
Apr 29 16:48:13 picayune-2 python3[24329]: File “/opt/sixfab/pms/agent/core/modules/set_configurations.py”, line 109
Apr 29 16:48:13 picayune-2 python3[24329]: if f"event_{event[’_id’]}" == ignored_field:
Apr 29 16:48:13 picayune-2 python3[24329]: ^
Apr 29 16:48:13 picayune-2 python3[24329]: SyntaxError: invalid syntax
Apr 29 16:48:13 picayune-2 systemd[1]: pms_agent.service: Main process exited, code=exited, status=1/FAILURE
Apr 29 16:48:13 picayune-2 systemd[1]: pms_agent.service: Unit entered failed state.
Apr 29 16:48:13 picayune-2 systemd[1]: pms_agent.service: Failed with result ‘exit-code’.
Apr 29 16:48:16 picayune-2 systemd[1]: pms_agent.service: Service hold-off time over, scheduling restart.
Apr 29 16:48:16 picayune-2 systemd[1]: Stopped Sixfab PMS Agent.

Could this be a Python2/Python3 issue?

The software has some kind of problem with text strings. there are many strings with f" at the beginning, like maybe a bad UTF-8 code?

set_configurations.py: if f"event_{event['id’]}" == ignored_field:
set_configurations.py: if f"event
{id}" in data[“ignored_fields”]:
updater.py: f"/device/{token}/hive",
updater.py: os.system(f"cd {LOCAL_FIRMWARE_FOLDER} && sudo git pull")
updater.py: os.system(f"sudo git clone {remote_repository} {LOCAL_FIRMWARE_FOLDER}")
updater.py: latest_version = open(f"{LOCAL_FIRMWARE_FOLDER}/latest_version").read().strip()
updater.py: latest_firmware = f"{LOCAL_FIRMWARE_FOLDER}/sixfab_pms_firmware
{latest_version}.bin"
updater.py: f"/device/{token}/hive",

The code seems to be running without error now, but I’m getting nothing on my Dashboard:

May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:[FEEDER] Starting, locking
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getBatteryLevel] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getBatteryHealth] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getFanSpeed] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getFanHealth] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getWorkingMode] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[askWatchdogAlarm] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getInputTemp] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getInputVoltage] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getInputCurrent] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getInputPower] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getSystemTemp] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getSystemVoltage] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getSystemCurrent] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getSystemPower] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getBatteryTemp] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getBatteryVoltage] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getBatteryCurrent] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getBatteryPower] #033[0m done
May 6 17:08:08 picayune-2 python3[6489]: DEBUG:root:#033[94m[getFirmwareVer] #033[0m done

The f" string problem is a new string format option introduced in Python 3.6. It’s not a bad UTF-8 code and it’s not usable in Python 3.5. This software package needs to check for Python 3.6 and issue a warning message if not available.

I’m sorry for that.
We will do it as soon as possible :+1:

Edit:
The installer updated. It is doing this now:

Thanks for contributing. :heart:

Sincerely.