22 Commits

Author SHA1 Message Date
Kevin Hester
b464e90368 make ppk2 power meter threadsafe 2024-07-11 12:19:16 -07:00
Kevin Hester
3c76e19c33 poll for power readings much more rapidly - traces now look great 2024-07-11 11:49:12 -07:00
Kevin Hester
d0db5cae13 Store much higher (time) res power readings any time we've just fetched
new readings.  This allows for better plotting/analysis but still keeping
runtime polling low.
2024-07-10 16:44:27 -07:00
Kevin Hester
84b4188211 Gracefully cope with exceptions during power-stress test 2024-07-07 14:07:27 -07:00
Kevin Hester
ecbda74bd6 make PPK2 power supply monitor work in supply-mode 2024-07-06 16:41:33 -07:00
Kevin Hester
462d9a83df Automatically extract and store all known structured-logs 2024-07-06 15:07:13 -07:00
Kevin Hester
42e069455e transition through power stress states and capture data
meshtastic-py3.12kevinh@kdesktop:~/development/meshtastic/meshtastic-python$  cd /home/kevinh/development/meshtastic/meshtastic-python ; /usr/bin/env /home/kevinh/.cache/pypoetry/virtualenvs/meshtastic-l6tP90xw-py3.12/bin/python /home/kevinh/.vscode/extensions/ms-python.debugpy-2024.6.0-linux-x64/bundled/libs/debugpy/adapter/../../debugpy/launcher 52521 -- -m meshtastic --slog --power-ppk2-meter --power-stress --power-voltage 3.3
INFO file:ppk2.py __init__ line:52 Connected to Power Profiler Kit II (PPK2)
INFO file:__main__.py create_power_meter line:1022 Setting power supply to 3.3 volts
Connected to radio
INFO file:slog.py __init__ line:183 Writing slogs to /home/kevinh/.local/share/meshtastic/slogs/20240706-123803
INFO file:stress.py syncPowerStress line:68 Sending power stress command PRINT_INFO
INFO file:stress.py run line:105 Running power stress test 48 for 5.0 seconds
INFO file:stress.py syncPowerStress line:68 Sending power stress command LED_ON
INFO file:stress.py run line:105 Running power stress test 80 for 5.0 seconds
INFO file:stress.py syncPowerStress line:68 Sending power stress command BT_OFF
INFO file:stress.py run line:105 Running power stress test 81 for 5.0 seconds
INFO file:stress.py syncPowerStress line:68 Sending power stress command BT_ON
INFO file:stress.py run line:105 Running power stress test 34 for 5.0 seconds
INFO file:stress.py syncPowerStress line:68 Sending power stress command CPU_FULLON
INFO file:stress.py run line:105 Running power stress test 32 for 5.0 seconds
INFO file:stress.py syncPowerStress line:68 Sending power stress command CPU_IDLE
INFO file:stress.py run line:105 Running power stress test 33 for 5.0 seconds
INFO file:stress.py syncPowerStress line:68 Sending power stress command CPU_DEEPSLEEP
INFO file:stress.py run line:108 Power stress test complete.
INFO file:slog.py close line:201 Closing slogs in /home/kevinh/.local/share/meshtastic/slogs/20240706-123803
WARNING file:arrow.py close line:67 Discarding empty file: /home/kevinh/.local/share/meshtastic/slogs/20240706-123803/slog.arrow
INFO file:arrow.py close line:70 Compressing log data into /home/kevinh/.local/share/meshtastic/slogs/20240706-123803/power.feather
meshtastic-py3.12kevinh@kdesktop:~/development/meshtastic/meshtastic-python$
2024-07-06 12:43:34 -07:00
Kevin Hester
ae2ef78560 fix linter warnings
(note: the linter test for min/max is buggy so disabled)
2024-07-03 09:57:24 -07:00
Kevin Hester
dabb4ea44c PowerStress client approximately works 2024-06-28 09:40:33 -07:00
Kevin Hester
119be81000 PowerStress WIP 2024-06-27 16:37:58 -07:00
Kevin Hester
2294546560 fix bogus high current reading on first ppk2 read 2024-06-26 16:43:14 -07:00
Kevin Hester
67bb6665f2 the stock PPK2 API is super inefficient, remove lots of buffering 2024-06-26 15:29:18 -07:00
Kevin Hester
231bc25255 PPK2 based power measurements seem to approximately work 2024-06-25 15:19:21 -07:00
Kevin Hester
d1aadf0c8e close power meter gracefully 2024-06-25 12:22:47 -07:00
Kevin Hester
402622f427 fix type warnings 2024-06-25 11:25:07 -07:00
Kevin Hester
1b045bec88 fix linter warnings 2024-06-25 11:02:24 -07:00
Kevin Hester
9cdfde47ec store slogs in correct default directory (OS dependent) 2024-06-25 10:27:35 -07:00
Kevin Hester
91066f6aed add powermon_sim support 2024-06-25 10:26:45 -07:00
Kevin Hester
ea18057c1f Add support for NRF PPK2 power testing board. 2024-06-25 10:26:44 -07:00
Kevin Hester
0e45637f2c generalize the powermon stuff to become structured logging 2024-06-25 10:21:11 -07:00
Kevin Hester
be74c3eea0 fix linter warnings 2024-06-25 10:21:11 -07:00
Kevin Hester
cc60f3ebc0 begin support for multiple power meter types 2024-06-25 10:21:11 -07:00