@@ -101,8 +101,8 @@ def show_list(verbose, zones):
101101
102102 # Display header
103103 if verbose == 0 :
104- print ("ID Zone Name Heat Temp Mode Current Humidity" )
105- print ("-" * 70 )
104+ print ("ID Zone Name Heat Target Status Current Humidity" )
105+ print ("-" * 72 )
106106
107107 for zone_data in display_zones :
108108 zone_id = zone_data ['zone_id' ]
@@ -116,34 +116,36 @@ def show_list(verbose, zones):
116116 state = zone_data .get ('state' , {})
117117 cur_temp = state .get ('cur_temp_c' )
118118 cur_hum = state .get ('hum_perc' )
119- heating_active = state .get ('cur_heating' ) == 1
120- mode = state .get ('mode' , 0 )
119+ cur_heating = state .get ('cur_heating' , 0 ) # 0=off, 1=heating, 2=cooling
120+ mode = state .get ('mode' , 0 ) # mode: 0=OFF, 1=ON (enabled)
121121 target_temp = state .get ('target_temp_c' )
122122
123- # Format setting
123+ # Format target temperature
124124 if mode == 0 :
125125 setting = 'OFF'
126126 elif target_temp is not None :
127127 setting = f'{ target_temp :4.1f} °C'
128128 else :
129129 setting = 'AUTO'
130130
131- # Heating status
132- heat_s = 'ON ' if heating_active else ' '
131+ # Activity indicator (for Heat column)
132+ heat_s = 'ON ' if cur_heating > 0 else ' '
133133
134- # Mode description
135- if mode == 1 :
136- mode_str = 'HEAT'
137- elif mode == 0 :
138- mode_str = 'OFF'
134+ # Activity status (what the system is doing)
135+ if mode == 0 :
136+ status_str = 'OFF'
137+ elif cur_heating == 1 :
138+ status_str = 'HEAT'
139+ elif cur_heating == 2 :
140+ status_str = 'COOL'
139141 else :
140- mode_str = f'MODE { mode } '
142+ status_str = 'IDLE '
141143
142144 # Format output
143145 if cur_temp is not None and cur_hum is not None :
144- print (f'{ zone_id :<4} { zone_data ["name" ]:<13} { heat_s } { setting :<6 } { mode_str :<9} { cur_temp :5.1f} °C { cur_hum :5.1f} %' )
146+ print (f'{ zone_id :<4} { zone_data ["name" ]:<13} { heat_s } { setting :<8 } { status_str :<9} { cur_temp :5.1f} °C { cur_hum :5.1f} %' )
145147 else :
146- print (f'{ zone_id :<4} { zone_data ["name" ]:<13} - No data available ' )
148+ print (f'{ zone_id :<4} { zone_data ["name" ]:<13} - - - - - ' )
147149
148150 print ()
149151
0 commit comments