@@ -159,7 +159,7 @@ def _set_serial(self, serial):
159159 self .pvis = self .pvis or [{"index" : 0 }]
160160 if not self .serialNumberPrefix :
161161 self .serialNumberPrefix = "S10-"
162- if self .serialNumber .startswith ("74" ):
162+ elif self .serialNumber .startswith ("74" ):
163163 self .model = "S10E_Compact"
164164 self .powermeters = self .powermeters or [{"index" : 0 }]
165165 self .pvis = self .pvis or [{"index" : 0 }]
@@ -1984,27 +1984,25 @@ def set_powersave(self, enable, keepAlive=False):
19841984 0 if success
19851985 -1 if error
19861986 """
1987- if enable :
1988- res = self .sendRequest (
1989- (
1990- "EMS_REQ_SET_POWER_SETTINGS" ,
1991- "Container" ,
1992- [("EMS_POWERSAVE_ENABLED" , "UChar8" , 1 )],
1993- ),
1994- keepAlive = keepAlive ,
1995- )
1996- else :
1997- res = self .sendRequest (
1998- (
1999- "EMS_REQ_SET_POWER_SETTINGS" ,
2000- "Container" ,
2001- [("EMS_POWERSAVE_ENABLED" , "UChar8" , 0 )],
2002- ),
2003- keepAlive = keepAlive ,
2004- )
1987+ res = self .sendRequest (
1988+ (
1989+ "EMS_REQ_SET_POWER_SETTINGS" ,
1990+ "Container" ,
1991+ [("EMS_POWERSAVE_ENABLED" , "UChar8" , int (enable ))],
1992+ ),
1993+ keepAlive = keepAlive ,
1994+ )
20051995
2006- # validate return code for EMS_RES_POWERSAVE_ENABLED is 0
2007- if res [2 ][0 ][2 ] == 0 :
1996+ # Returns value of EMS_REQ_SET_POWER_SETTINGS, we get a success flag here,
1997+ # that we normalize and push outside.
1998+ # [ "EMS_SET_POWER_SETTINGS",
1999+ # "Container",
2000+ # [
2001+ # ["EMS_RES_POWERSAVE_ENABLED", "Char8", 0]
2002+ # ]
2003+ # ]
2004+
2005+ if rscpFindTagIndex (res , "EMS_RES_POWERSAVE_ENABLED" ) == 0 :
20082006 return 0
20092007 else :
20102008 return - 1
0 commit comments