11import datetime
22import math
3+ import os
4+ import platform
5+ import sys
36
47from psutil ._common import bytes2human
58
69import library .config as config
7- import library .sensors .sensors_python as sensors
810from library .display import display
911from library .log import logger
1012
1113THEME_DATA = config .THEME_DATA
1214CONFIG_DATA = config .CONFIG_DATA
1315ETH_CARD = CONFIG_DATA ["config" ]["ETH" ]
1416WLO_CARD = CONFIG_DATA ["config" ]["WLO" ]
17+ HW_SENSORS = CONFIG_DATA ["config" ]["HW_SENSORS" ]
18+
19+ if HW_SENSORS == "PYTHON" :
20+ import library .sensors .sensors_python as sensors
21+ elif HW_SENSORS == "LHM" :
22+ pass
23+ elif HW_SENSORS == "STUB" :
24+ import library .sensors .sensors_stub as sensors
25+ elif HW_SENSORS == "AUTO" :
26+ if platform .system () == 'Windows' :
27+ pass
28+ else :
29+ import library .sensors .sensors_python as sensors
30+ else :
31+ logger .error ("Unsupported SENSORS value in config.yaml" )
32+ try :
33+ sys .exit (0 )
34+ except :
35+ os ._exit (0 )
1536
1637
1738def get_full_path (path , name ):
@@ -375,6 +396,8 @@ def stats():
375396class Disk :
376397 @staticmethod
377398 def stats ():
399+ used = sensors .Disk .disk_used ()
400+ free = sensors .Disk .disk_free ()
378401 if THEME_DATA ['STATS' ]['DISK' ]['USED' ]['GRAPH' ].get ("SHOW" , False ):
379402 display .lcd .DisplayProgressBar (
380403 x = THEME_DATA ['STATS' ]['DISK' ]['USED' ]['GRAPH' ].get ("X" , 0 ),
@@ -394,7 +417,7 @@ def stats():
394417
395418 if THEME_DATA ['STATS' ]['DISK' ]['USED' ]['TEXT' ].get ("SHOW" , False ):
396419 display .lcd .DisplayText (
397- text = f"{ int (sensors . Disk . disk_used () / 1000000000 ):>5} G" ,
420+ text = f"{ int (used / 1000000000 ):>5} G" ,
398421 x = THEME_DATA ['STATS' ]['DISK' ]['USED' ]['TEXT' ].get ("X" , 0 ),
399422 y = THEME_DATA ['STATS' ]['DISK' ]['USED' ]['TEXT' ].get ("Y" , 0 ),
400423 font = THEME_DATA ['STATS' ]['DISK' ]['USED' ]['TEXT' ].get ("FONT" , "roboto-mono/RobotoMono-Regular.ttf" ),
@@ -425,7 +448,7 @@ def stats():
425448
426449 if THEME_DATA ['STATS' ]['DISK' ]['TOTAL' ]['TEXT' ].get ("SHOW" , False ):
427450 display .lcd .DisplayText (
428- text = f"{ int (sensors . Disk . disk_total ( ) / 1000000000 ):>5} G" ,
451+ text = f"{ int (( free + used ) / 1000000000 ):>5} G" ,
429452 x = THEME_DATA ['STATS' ]['DISK' ]['TOTAL' ]['TEXT' ].get ("X" , 0 ),
430453 y = THEME_DATA ['STATS' ]['DISK' ]['TOTAL' ]['TEXT' ].get ("Y" , 0 ),
431454 font = THEME_DATA ['STATS' ]['DISK' ]['TOTAL' ]['TEXT' ].get ("FONT" , "roboto-mono/RobotoMono-Regular.ttf" ),
@@ -439,7 +462,7 @@ def stats():
439462
440463 if THEME_DATA ['STATS' ]['DISK' ]['FREE' ]['TEXT' ].get ("SHOW" , False ):
441464 display .lcd .DisplayText (
442- text = f"{ int (sensors . Disk . disk_free () / 1000000000 ):>5} G" ,
465+ text = f"{ int (free / 1000000000 ):>5} G" ,
443466 x = THEME_DATA ['STATS' ]['DISK' ]['FREE' ]['TEXT' ].get ("X" , 0 ),
444467 y = THEME_DATA ['STATS' ]['DISK' ]['FREE' ]['TEXT' ].get ("Y" , 0 ),
445468 font = THEME_DATA ['STATS' ]['DISK' ]['FREE' ]['TEXT' ].get ("FONT" , "roboto-mono/RobotoMono-Regular.ttf" ),
0 commit comments