Unify to double quotes
This commit is contained in:
parent
393a068cae
commit
14a8201f00
1 changed files with 82 additions and 82 deletions
|
@ -100,7 +100,7 @@ GET_DATA_ADC_TEMP = 0x03 # Read Temperature ADC
|
||||||
GET_DATA_FANSTATUS = 0x04 # Read fan status
|
GET_DATA_FANSTATUS = 0x04 # Read fan status
|
||||||
|
|
||||||
# Files/paths
|
# Files/paths
|
||||||
clusterctrl_prefix = '/dev/ClusterCTRL-'
|
clusterctrl_prefix = "/dev/ClusterCTRL-"
|
||||||
vcgencmdpath = "/usr/bin/vcgencmd"
|
vcgencmdpath = "/usr/bin/vcgencmd"
|
||||||
hat_product = "/proc/device-tree/hat/product"
|
hat_product = "/proc/device-tree/hat/product"
|
||||||
hat_version = "/proc/device-tree/hat/product_ver"
|
hat_version = "/proc/device-tree/hat/product_ver"
|
||||||
|
@ -114,7 +114,7 @@ nfsroot = "/var/lib/clusterctrl/nfs/"
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
args = len(sys.argv)
|
args = len(sys.argv)
|
||||||
|
|
||||||
if (args == 1 or sys.argv[1] == 'help' or sys.argv[1] == '--help' or sys.argv[1] == '-h' or sys.argv[1] == '/?'):
|
if (args == 1 or sys.argv[1] == "help" or sys.argv[1] == "--help" or sys.argv[1] == "-h" or sys.argv[1] == "/?"):
|
||||||
print("""Usage :{0} <cmd>
|
print("""Usage :{0} <cmd>
|
||||||
|
|
||||||
<devices> can be a single device 'p1' or a list 'p2 p3 p5'
|
<devices> can be a single device 'p1' or a list 'p2 p3 p5'
|
||||||
|
@ -174,12 +174,12 @@ if __name__ == "__main__":
|
||||||
if os.path.isfile("/etc/default/clusterctrl"):
|
if os.path.isfile("/etc/default/clusterctrl"):
|
||||||
with open ("/etc/default/clusterctrl") as configfile:
|
with open ("/etc/default/clusterctrl") as configfile:
|
||||||
for line in configfile:
|
for line in configfile:
|
||||||
if (line[:1] != '#'):
|
if (line[:1] != "#"):
|
||||||
k, v = line.partition("=")[::2]
|
k, v = line.partition("=")[::2]
|
||||||
config[k.strip().lower()] = v.split('#')[0].strip(" \"'\n\t")
|
config[k.strip().lower()] = v.split("#")[0].strip(" \"'\n\t")
|
||||||
|
|
||||||
# If we're not a controller of some sort exit cleanly
|
# If we're not a controller of some sort exit cleanly
|
||||||
if ('type' not in config or not (config['type'] == "c" or config['type'] == "cnat")):
|
if ("type" not in config or not (config["type"] == "c" or config["type"] == "cnat")):
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
|
||||||
# Functions
|
# Functions
|
||||||
|
@ -210,14 +210,14 @@ if __name__ == "__main__":
|
||||||
# Get throttled status
|
# Get throttled status
|
||||||
def get_throttled():
|
def get_throttled():
|
||||||
if (not os.path.isfile(vcgencmdpath) or not os.access(vcgencmdpath, os.X_OK)):
|
if (not os.path.isfile(vcgencmdpath) or not os.access(vcgencmdpath, os.X_OK)):
|
||||||
return 'NA'
|
return "NA"
|
||||||
return ((os.popen(vcgencmdpath + ' get_throttled').readline()).split('=', 1)[-1].strip())
|
return ((os.popen(vcgencmdpath + " get_throttled").readline()).split("=", 1)[-1].strip())
|
||||||
|
|
||||||
# Get USB path (eg 1-1.4.1) for I2C bus
|
# Get USB path (eg 1-1.4.1) for I2C bus
|
||||||
def usbpathfrombus(bus):
|
def usbpathfrombus(bus):
|
||||||
for device in glob.glob("/sys/bus/usb/drivers/i2c-tiny-usb/*/i2c*"):
|
for device in glob.glob("/sys/bus/usb/drivers/i2c-tiny-usb/*/i2c*"):
|
||||||
parts = device.split('/')
|
parts = device.split("/")
|
||||||
path = parts[6].split(':')[0]
|
path = parts[6].split(":")[0]
|
||||||
id = parts[7][4:]
|
id = parts[7][4:]
|
||||||
if int(id) == bus:
|
if int(id) == bus:
|
||||||
return path
|
return path
|
||||||
|
@ -248,8 +248,8 @@ if __name__ == "__main__":
|
||||||
lastpi+=clusterhat_size
|
lastpi+=clusterhat_size
|
||||||
if (zero<=lastpi):
|
if (zero<=lastpi):
|
||||||
if (version == 1):
|
if (version == 1):
|
||||||
if 'clusterhatv1' in config:
|
if "clusterhatv1" in config:
|
||||||
paths[str(zero)] = config['clusterhatv1']+"."+str(5-zero)
|
paths[str(zero)] = config["clusterhatv1"]+"."+str(5-zero)
|
||||||
if (version == 2):
|
if (version == 2):
|
||||||
if cache_clusterhat == None:
|
if cache_clusterhat == None:
|
||||||
# Detect Cluster HAT by turning the HUB on / off / on
|
# Detect Cluster HAT by turning the HUB on / off / on
|
||||||
|
@ -264,7 +264,7 @@ if __name__ == "__main__":
|
||||||
devices = {}
|
devices = {}
|
||||||
hubs = prescan.find(idVendor=0x05e3, idProduct=0x0608, find_all=1)
|
hubs = prescan.find(idVendor=0x05e3, idProduct=0x0608, find_all=1)
|
||||||
for clusterhathub in hubs:
|
for clusterhathub in hubs:
|
||||||
devices[str(clusterhathub.bus)+'-'+'.'.join(map(str, clusterhathub.port_numbers))] = 'pre'
|
devices[str(clusterhathub.bus)+"-"+".".join(map(str, clusterhathub.port_numbers))] = "pre"
|
||||||
pre_count = len(devices)
|
pre_count = len(devices)
|
||||||
# Turn hub off
|
# Turn hub off
|
||||||
if (version_minor == 0):
|
if (version_minor == 0):
|
||||||
|
@ -275,13 +275,13 @@ if __name__ == "__main__":
|
||||||
import usb.core as postscan
|
import usb.core as postscan
|
||||||
hubs = postscan.find(idVendor=0x05e3, idProduct=0x0608, find_all=1)
|
hubs = postscan.find(idVendor=0x05e3, idProduct=0x0608, find_all=1)
|
||||||
for clusterhathub in hubs:
|
for clusterhathub in hubs:
|
||||||
devices[str(clusterhathub.bus)+'-'+'.'.join(map(str, clusterhathub.port_numbers))] = 'post'
|
devices[str(clusterhathub.bus)+"-"+".".join(map(str, clusterhathub.port_numbers))] = "post"
|
||||||
post_count = len(devices)
|
post_count = len(devices)
|
||||||
# Check we haven't gained an extra USB hubs
|
# Check we haven't gained an extra USB hubs
|
||||||
if pre_count == post_count:
|
if pre_count == post_count:
|
||||||
found = 0
|
found = 0
|
||||||
for path, state in devices.iteritems():
|
for path, state in devices.iteritems():
|
||||||
if (state=='pre'):
|
if (state=="pre"):
|
||||||
found=found+1
|
found=found+1
|
||||||
cache_clusterhat=path
|
cache_clusterhat=path
|
||||||
# Turn hub back on
|
# Turn hub back on
|
||||||
|
@ -302,19 +302,19 @@ if __name__ == "__main__":
|
||||||
# Get path to controller
|
# Get path to controller
|
||||||
send_cmd(c, CMD_GETPATH, 0)
|
send_cmd(c, CMD_GETPATH, 0)
|
||||||
# Remove controllers path from usbpathname
|
# Remove controllers path from usbpathname
|
||||||
pathdata = ''
|
pathdata = ""
|
||||||
for tmp in read_reg(c, REG_DATA7, len=8):
|
for tmp in read_reg(c, REG_DATA7, len=8):
|
||||||
if tmp!=255:
|
if tmp!=255:
|
||||||
if (len(pathdata)>0): pathdata=pathdata+'.'
|
if (len(pathdata)>0): pathdata=pathdata+"."
|
||||||
pathdata=pathdata+str(tmp)
|
pathdata=pathdata+str(tmp)
|
||||||
usbpathname=usbpathname[:-len(pathdata)]
|
usbpathname=usbpathname[:-len(pathdata)]
|
||||||
cache_clusterctrl[c[0]] = usbpathname
|
cache_clusterctrl[c[0]] = usbpathname
|
||||||
# Append path to Px
|
# Append path to Px
|
||||||
send_cmd(c, CMD_GETPATH, zero-lastpi+c[3])
|
send_cmd(c, CMD_GETPATH, zero-lastpi+c[3])
|
||||||
pathdata = ''
|
pathdata = ""
|
||||||
for tmp in read_reg(c, REG_DATA7, len=8):
|
for tmp in read_reg(c, REG_DATA7, len=8):
|
||||||
if tmp!=255:
|
if tmp!=255:
|
||||||
if (len(pathdata)>0): pathdata=pathdata+'.'
|
if (len(pathdata)>0): pathdata=pathdata+"."
|
||||||
pathdata=pathdata+str(tmp)
|
pathdata=pathdata+str(tmp)
|
||||||
paths[str(zero)] = cache_clusterctrl[c[0]]+pathdata
|
paths[str(zero)] = cache_clusterctrl[c[0]]+pathdata
|
||||||
return paths
|
return paths
|
||||||
|
@ -331,7 +331,7 @@ if __name__ == "__main__":
|
||||||
##########
|
##########
|
||||||
|
|
||||||
# Get Pi power on delay from config
|
# Get Pi power on delay from config
|
||||||
delay = 1 if 'clusterctrl_delay' not in config or not is_float(config['clusterctrl_delay']) or float(config['clusterctrl_delay'])<0 else config['clusterctrl_delay']
|
delay = 1 if "clusterctrl_delay" not in config or not is_float(config["clusterctrl_delay"]) or float(config["clusterctrl_delay"])<0 else config["clusterctrl_delay"]
|
||||||
|
|
||||||
maxpi=0
|
maxpi=0
|
||||||
clusterctrl = False
|
clusterctrl = False
|
||||||
|
@ -339,10 +339,10 @@ if __name__ == "__main__":
|
||||||
# Do we have a ClusterHAT ?
|
# Do we have a ClusterHAT ?
|
||||||
|
|
||||||
# Check for override
|
# Check for override
|
||||||
clusterhat = 1 if 'clusterhat_force' not in config else config['clusterhat_force']
|
clusterhat = 1 if "clusterhat_force" not in config else config["clusterhat_force"]
|
||||||
|
|
||||||
if (clusterhat != 1):
|
if (clusterhat != 1):
|
||||||
parts = clusterhat.split('.')
|
parts = clusterhat.split(".")
|
||||||
version = int(parts[0])
|
version = int(parts[0])
|
||||||
version_minor = int(parts[1])
|
version_minor = int(parts[1])
|
||||||
elif (not os.path.isfile(hat_product)
|
elif (not os.path.isfile(hat_product)
|
||||||
|
@ -358,13 +358,13 @@ if __name__ == "__main__":
|
||||||
clusterhat = False # No HAT found
|
clusterhat = False # No HAT found
|
||||||
else:
|
else:
|
||||||
# HAT has been found validate it
|
# HAT has been found validate it
|
||||||
f = open(hat_product, 'r')
|
f = open(hat_product, "r")
|
||||||
if (f.read().strip('\x00') != 'ZC4:ClusterHAT'):
|
if (f.read().strip("\x00") != "ZC4:ClusterHAT"):
|
||||||
clusterhat = False # No ClusterHAT found
|
clusterhat = False # No ClusterHAT found
|
||||||
if (clusterhat):
|
if (clusterhat):
|
||||||
version = 0
|
version = 0
|
||||||
f = open(hat_version, 'r')
|
f = open(hat_version, "r")
|
||||||
tmp = int(f.read().strip('\x00'), 16)
|
tmp = int(f.read().strip("\x00"), 16)
|
||||||
f.close()
|
f.close()
|
||||||
if (tmp >= 16 and tmp <=31):
|
if (tmp >= 16 and tmp <=31):
|
||||||
version = 1
|
version = 1
|
||||||
|
@ -375,9 +375,9 @@ if __name__ == "__main__":
|
||||||
else:
|
else:
|
||||||
clusterhat = False # No ClusterHAT found
|
clusterhat = False # No ClusterHAT found
|
||||||
if (clusterhat):
|
if (clusterhat):
|
||||||
clusterhat_size = 4 if 'clusterhat_size' not in config else int(config['clusterhat_size'])
|
clusterhat_size = 4 if "clusterhat_size" not in config else int(config["clusterhat_size"])
|
||||||
if clusterhat_size > 4: clusterhat_size = 4
|
if clusterhat_size > 4: clusterhat_size = 4
|
||||||
fangpio = False if 'fangpio' not in config else int(config['fangpio'])
|
fangpio = False if "fangpio" not in config else int(config["fangpio"])
|
||||||
|
|
||||||
# Init ClusterHAT if we have one
|
# Init ClusterHAT if we have one
|
||||||
if (clusterhat):
|
if (clusterhat):
|
||||||
|
@ -454,7 +454,7 @@ if __name__ == "__main__":
|
||||||
|
|
||||||
# Get list of ClusterCTRL I2C devices
|
# Get list of ClusterCTRL I2C devices
|
||||||
busses = [] # Get list of devices
|
busses = [] # Get list of devices
|
||||||
for fn in glob.glob(clusterctrl_prefix+'*'):
|
for fn in glob.glob(clusterctrl_prefix+"*"):
|
||||||
clusterctrl+=1
|
clusterctrl+=1
|
||||||
length = len(clusterctrl_prefix)
|
length = len(clusterctrl_prefix)
|
||||||
busses.append((smbus.SMBus(int(fn[length:])), int(fn[length:])))
|
busses.append((smbus.SMBus(int(fn[length:])), int(fn[length:])))
|
||||||
|
@ -489,8 +489,8 @@ if __name__ == "__main__":
|
||||||
ctrl.sort(key=lambda tup: tup[0])
|
ctrl.sort(key=lambda tup: tup[0])
|
||||||
|
|
||||||
# Are we running init and should we create the symlinks for usbboot?
|
# Are we running init and should we create the symlinks for usbboot?
|
||||||
if (args == 2 and sys.argv[1] == 'init'):
|
if (args == 2 and sys.argv[1] == "init"):
|
||||||
if 'link' in config and config['link'] == "1":
|
if "link" in config and config["link"] == "1":
|
||||||
# Only root should fiddle with the links
|
# Only root should fiddle with the links
|
||||||
if os.geteuid() == 0 and os.path.isdir(nfsboot) and os.path.isdir(nfsroot):
|
if os.geteuid() == 0 and os.path.isdir(nfsboot) and os.path.isdir(nfsroot):
|
||||||
paths = getusbpaths()
|
paths = getusbpaths()
|
||||||
|
@ -498,7 +498,7 @@ if __name__ == "__main__":
|
||||||
for link in glob.glob(nfsboot+"*-*"):
|
for link in glob.glob(nfsboot+"*-*"):
|
||||||
if os.path.islink(link):
|
if os.path.islink(link):
|
||||||
path = os.path.realpath(link)
|
path = os.path.realpath(link)
|
||||||
if path[0:len(nfsroot)] == nfsroot and path[-5:] == '/boot':
|
if path[0:len(nfsroot)] == nfsroot and path[-5:] == "/boot":
|
||||||
p = path[len(nfsroot):][:-5]
|
p = path[len(nfsroot):][:-5]
|
||||||
if p[1:] in paths:
|
if p[1:] in paths:
|
||||||
os.unlink(link)
|
os.unlink(link)
|
||||||
|
@ -508,7 +508,7 @@ if __name__ == "__main__":
|
||||||
# If the link already exists remove it
|
# If the link already exists remove it
|
||||||
if os.path.islink(nfsboot+path):
|
if os.path.islink(nfsboot+path):
|
||||||
os.unlink(nfsboot+path)
|
os.unlink(nfsboot+path)
|
||||||
os.symlink(nfsroot+'p'+p+"/boot/", nfsboot+path)
|
os.symlink(nfsroot+"p"+p+"/boot/", nfsboot+path)
|
||||||
|
|
||||||
##############
|
##############
|
||||||
## End Init ##
|
## End Init ##
|
||||||
|
@ -595,14 +595,14 @@ if __name__ == "__main__":
|
||||||
if (zero<=lastpi):
|
if (zero<=lastpi):
|
||||||
if (version==1):
|
if (version==1):
|
||||||
actioned+=1
|
actioned+=1
|
||||||
if (sys.argv[1] == 'on'):
|
if (sys.argv[1] == "on"):
|
||||||
if not GPIO.input(ports[zero]):
|
if not GPIO.input(ports[zero]):
|
||||||
GPIO.output(ports[zero], 1)
|
GPIO.output(ports[zero], 1)
|
||||||
if (actioned<len(zeros)): time.sleep(delay)
|
if (actioned<len(zeros)): time.sleep(delay)
|
||||||
else:
|
else:
|
||||||
GPIO.output(ports[zero], 0)
|
GPIO.output(ports[zero], 0)
|
||||||
else:
|
else:
|
||||||
if (sys.argv[1] == 'on'):
|
if (sys.argv[1] == "on"):
|
||||||
status = hat.read_byte()
|
status = hat.read_byte()
|
||||||
actioned+=1
|
actioned+=1
|
||||||
if (zero==1):
|
if (zero==1):
|
||||||
|
@ -631,7 +631,7 @@ if __name__ == "__main__":
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
lastpi+=c[3]
|
lastpi+=c[3]
|
||||||
if (zero<=lastpi):
|
if (zero<=lastpi):
|
||||||
if (sys.argv[1] == 'on'):
|
if (sys.argv[1] == "on"):
|
||||||
# Get power status for Pi Zero
|
# Get power status for Pi Zero
|
||||||
send_cmd(c, CMD_GET_PSTATUS, zero-lastpi+c[3])
|
send_cmd(c, CMD_GET_PSTATUS, zero-lastpi+c[3])
|
||||||
# Only turn on/delay if it's currently off
|
# Only turn on/delay if it's currently off
|
||||||
|
@ -642,7 +642,7 @@ if __name__ == "__main__":
|
||||||
else:
|
else:
|
||||||
send_cmd(c, CMD_OFF, zero-lastpi+c[3])
|
send_cmd(c, CMD_OFF, zero-lastpi+c[3])
|
||||||
break
|
break
|
||||||
elif (args > 2 and sys.argv[1] == 'usbboot' and (sys.argv[2] == 'on' or sys.argv[2] == 'off')):
|
elif (args > 2 and sys.argv[1] == "usbboot" and (sys.argv[2] == "on" or sys.argv[2] == "off")):
|
||||||
# Enable of Disable USBBOOT (supported on Compute Modules) for Px
|
# Enable of Disable USBBOOT (supported on Compute Modules) for Px
|
||||||
actioned = 0
|
actioned = 0
|
||||||
# Build list of pi zero numbers to turn USBBOOT on for
|
# Build list of pi zero numbers to turn USBBOOT on for
|
||||||
|
@ -662,7 +662,7 @@ if __name__ == "__main__":
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
lastpi+=c[3]
|
lastpi+=c[3]
|
||||||
if (zero<=lastpi):
|
if (zero<=lastpi):
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
# Turn USBBOOT on for Px
|
# Turn USBBOOT on for Px
|
||||||
send_cmd(c, CMD_USBBOOT_EN, zero-lastpi+c[3])
|
send_cmd(c, CMD_USBBOOT_EN, zero-lastpi+c[3])
|
||||||
actioned+=1
|
actioned+=1
|
||||||
|
@ -687,20 +687,20 @@ if __name__ == "__main__":
|
||||||
print("hat_version_major:{}".format(version))
|
print("hat_version_major:{}".format(version))
|
||||||
print("hat_version_minor:{}".format(version_minor))
|
print("hat_version_minor:{}".format(version_minor))
|
||||||
print("hat_size:{}".format(clusterhat_size))
|
print("hat_size:{}".format(clusterhat_size))
|
||||||
if 'clusterhat_force' in config:
|
if "clusterhat_force" in config:
|
||||||
print("hat_uuid:NA")
|
print("hat_uuid:NA")
|
||||||
print("hat_vendor:NA")
|
print("hat_vendor:NA")
|
||||||
print("hat_pid:NA")
|
print("hat_pid:NA")
|
||||||
print("hat_force:{}".format (config['clusterhat_force']))
|
print("hat_force:{}".format (config["clusterhat_force"]))
|
||||||
else:
|
else:
|
||||||
f = open(hat_uuid, 'r')
|
f = open(hat_uuid, "r")
|
||||||
print("hat_uuid:{}".format(f.read().strip('\x00')))
|
print("hat_uuid:{}".format(f.read().strip("\x00")))
|
||||||
f.close()
|
f.close()
|
||||||
f = open(hat_vendor, 'r')
|
f = open(hat_vendor, "r")
|
||||||
print("hat_vendor:{}".format(f.read().strip('\x00')))
|
print("hat_vendor:{}".format(f.read().strip("\x00")))
|
||||||
f.close()
|
f.close()
|
||||||
f = open(hat_pid, 'r')
|
f = open(hat_pid, "r")
|
||||||
print("hat_product_id:{}".format(f.read().strip('\x00')))
|
print("hat_product_id:{}".format(f.read().strip("\x00")))
|
||||||
f.close()
|
f.close()
|
||||||
if (version == 1):
|
if (version == 1):
|
||||||
print("hat_alert:{}".format(GPIO.input(ports[0])))
|
print("hat_alert:{}".format(GPIO.input(ports[0])))
|
||||||
|
@ -723,11 +723,11 @@ if __name__ == "__main__":
|
||||||
if (clusterctrl):
|
if (clusterctrl):
|
||||||
# Power/USBBOOT status for Px
|
# Power/USBBOOT status for Px
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
info=''
|
info=""
|
||||||
# Get firmware version
|
# Get firmware version
|
||||||
send_cmd(c, CMD_GET_DATA, GET_DATA_VERSION)
|
send_cmd(c, CMD_GET_DATA, GET_DATA_VERSION)
|
||||||
data = read_reg(c, REG_DATA1, 2)
|
data = read_reg(c, REG_DATA1, 2)
|
||||||
ctrl_version = float(str(data[0])+'.'+str(data[1]))
|
ctrl_version = float(str(data[0])+"."+str(data[1]))
|
||||||
fw_major = data[0];
|
fw_major = data[0];
|
||||||
fw_minor = data[1];
|
fw_minor = data[1];
|
||||||
# Get number of ADC supported
|
# Get number of ADC supported
|
||||||
|
@ -745,7 +745,7 @@ if __name__ == "__main__":
|
||||||
data = read_reg(c, REG_DATA2, 3)
|
data = read_reg(c, REG_DATA2, 3)
|
||||||
if data[2] == 2:
|
if data[2] == 2:
|
||||||
temp = ((((data[0]<<8)+data[1])-247)/1.22)
|
temp = ((((data[0]<<8)+data[1])-247)/1.22)
|
||||||
info += " T1:"+format(temp, '.2f')+'C'
|
info += " T1:"+format(temp, ".2f")+"C"
|
||||||
if fw_major==1 and fw_minor==6:
|
if fw_major==1 and fw_minor==6:
|
||||||
send_cmd(c, CMD_GET_DATA, GET_DATA_FANSTATUS)
|
send_cmd(c, CMD_GET_DATA, GET_DATA_FANSTATUS)
|
||||||
data = read_reg(c, REG_DATA0)
|
data = read_reg(c, REG_DATA0)
|
||||||
|
@ -760,12 +760,12 @@ if __name__ == "__main__":
|
||||||
if (read_reg(c, REG_DATA0) != 0xFF):
|
if (read_reg(c, REG_DATA0) != 0xFF):
|
||||||
print("u{}:{}".format(cnt, read_reg(c, REG_DATA0)))
|
print("u{}:{}".format(cnt, read_reg(c, REG_DATA0)))
|
||||||
|
|
||||||
elif (args == 3 and sys.argv[1] == 'hub' and (sys.argv[2] == 'on' or sys.argv[2] == 'off')):
|
elif (args == 3 and sys.argv[1] == "hub" and (sys.argv[2] == "on" or sys.argv[2] == "off")):
|
||||||
if (clusterhat):
|
if (clusterhat):
|
||||||
if (version==1):
|
if (version==1):
|
||||||
print("ERROR: hub control not supported on Cluster HAT v1.x\n")
|
print("ERROR: hub control not supported on Cluster HAT v1.x\n")
|
||||||
else:
|
else:
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
if (version_minor == 0):
|
if (version_minor == 0):
|
||||||
hub.on()
|
hub.on()
|
||||||
else:
|
else:
|
||||||
|
@ -776,7 +776,7 @@ if __name__ == "__main__":
|
||||||
else:
|
else:
|
||||||
hub.on()
|
hub.on()
|
||||||
# if (clusterctrl): # TODO
|
# if (clusterctrl): # TODO
|
||||||
elif (args == 3 and sys.argv[1] == 'hub' and (sys.argv[2] == 'reset')):
|
elif (args == 3 and sys.argv[1] == "hub" and (sys.argv[2] == "reset")):
|
||||||
if (clusterhat and version!=1):
|
if (clusterhat and version!=1):
|
||||||
if (version_minor == 0):
|
if (version_minor == 0):
|
||||||
hub.off()
|
hub.off()
|
||||||
|
@ -790,27 +790,27 @@ if __name__ == "__main__":
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
send_cmd(c, CMD_HUB_CYCLE)
|
send_cmd(c, CMD_HUB_CYCLE)
|
||||||
|
|
||||||
elif (args == 3 and sys.argv[1] == 'alert' and (sys.argv[2] == 'on' or sys.argv[2] == 'off')):
|
elif (args == 3 and sys.argv[1] == "alert" and (sys.argv[2] == "on" or sys.argv[2] == "off")):
|
||||||
# Turn ALL ALERT LED on/off
|
# Turn ALL ALERT LED on/off
|
||||||
if (clusterhat):
|
if (clusterhat):
|
||||||
if (version==1):
|
if (version==1):
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
GPIO.output(ports[0], 1)
|
GPIO.output(ports[0], 1)
|
||||||
else:
|
else:
|
||||||
GPIO.output(ports[0], 0)
|
GPIO.output(ports[0], 0)
|
||||||
else:
|
else:
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
alert.on()
|
alert.on()
|
||||||
else:
|
else:
|
||||||
alert.off()
|
alert.off()
|
||||||
|
|
||||||
if (clusterctrl):
|
if (clusterctrl):
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
send_cmd(c, CMD_ALERT_ON)
|
send_cmd(c, CMD_ALERT_ON)
|
||||||
else:
|
else:
|
||||||
send_cmd(c, CMD_ALERT_OFF)
|
send_cmd(c, CMD_ALERT_OFF)
|
||||||
elif (args > 3 and sys.argv[1] == 'alert' and (sys.argv[2] == 'on' or sys.argv[2] == 'off')):
|
elif (args > 3 and sys.argv[1] == "alert" and (sys.argv[2] == "on" or sys.argv[2] == "off")):
|
||||||
# Turn on/off ALERT LED for pX
|
# Turn on/off ALERT LED for pX
|
||||||
|
|
||||||
# Build list of pi zero numbers to turn alert LED on for
|
# Build list of pi zero numbers to turn alert LED on for
|
||||||
|
@ -827,12 +827,12 @@ if __name__ == "__main__":
|
||||||
lastpi+=clusterhat_size
|
lastpi+=clusterhat_size
|
||||||
if (zero<=lastpi):
|
if (zero<=lastpi):
|
||||||
if (version==1):
|
if (version==1):
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
GPIO.output(ports[0], 1)
|
GPIO.output(ports[0], 1)
|
||||||
else:
|
else:
|
||||||
GPIO.output(ports[0], 0)
|
GPIO.output(ports[0], 0)
|
||||||
else:
|
else:
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
alert.on()
|
alert.on()
|
||||||
else:
|
else:
|
||||||
alert.off()
|
alert.off()
|
||||||
|
@ -841,39 +841,39 @@ if __name__ == "__main__":
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
lastpi+=c[3]
|
lastpi+=c[3]
|
||||||
if (zero<=lastpi):
|
if (zero<=lastpi):
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
send_cmd(c, CMD_ALERT_ON)
|
send_cmd(c, CMD_ALERT_ON)
|
||||||
else:
|
else:
|
||||||
send_cmd(c, CMD_ALERT_OFF)
|
send_cmd(c, CMD_ALERT_OFF)
|
||||||
break
|
break
|
||||||
elif (args == 3 and sys.argv[1] == 'led' and (sys.argv[2] == 'on' or sys.argv[2] == 'off')):
|
elif (args == 3 and sys.argv[1] == "led" and (sys.argv[2] == "on" or sys.argv[2] == "off")):
|
||||||
# Enable or Disable LED (not supported on ClusterHAT v1.x)
|
# Enable or Disable LED (not supported on ClusterHAT v1.x)
|
||||||
if (clusterhat and version == 2):
|
if (clusterhat and version == 2):
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
led.on()
|
led.on()
|
||||||
else:
|
else:
|
||||||
led.off()
|
led.off()
|
||||||
if (clusterctrl):
|
if (clusterctrl):
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
send_cmd(c, CMD_LED_EN, 0)
|
send_cmd(c, CMD_LED_EN, 0)
|
||||||
else:
|
else:
|
||||||
send_cmd(c, CMD_LED_DIS, 0)
|
send_cmd(c, CMD_LED_DIS, 0)
|
||||||
elif (args == 3 and sys.argv[1] == 'wp' and (sys.argv[2] == 'on' or sys.argv[2] == 'off')):
|
elif (args == 3 and sys.argv[1] == "wp" and (sys.argv[2] == "on" or sys.argv[2] == "off")):
|
||||||
# Not supported on ClusterCTRL or ClusterHAT v1.x
|
# Not supported on ClusterCTRL or ClusterHAT v1.x
|
||||||
if (clusterhat and version == 2):
|
if (clusterhat and version == 2):
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
wp.on()
|
wp.on()
|
||||||
else:
|
else:
|
||||||
if (xra1200p and wp_link):
|
if (xra1200p and wp_link):
|
||||||
print("Unable to disable EEPROM WP (Solder link set)")
|
print("Unable to disable EEPROM WP (Solder link set)")
|
||||||
else:
|
else:
|
||||||
wp.off()
|
wp.off()
|
||||||
elif (args > 1 and sys.argv[1] == 'getpath'):
|
elif (args > 1 and sys.argv[1] == "getpath"):
|
||||||
paths = getusbpaths()
|
paths = getusbpaths()
|
||||||
for p, path in sorted(paths.iteritems()):
|
for p, path in sorted(paths.iteritems()):
|
||||||
print("p{}:{}".format(p, path))
|
print("p{}:{}".format(p, path))
|
||||||
elif (args == 3 and sys.argv[1] == 'savedefaults'):
|
elif (args == 3 and sys.argv[1] == "savedefaults"):
|
||||||
# Set default EEPROM for device with "order"
|
# Set default EEPROM for device with "order"
|
||||||
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
||||||
print("Invalid order")
|
print("Invalid order")
|
||||||
|
@ -885,7 +885,7 @@ if __name__ == "__main__":
|
||||||
print("saved")
|
print("saved")
|
||||||
sys.exit()
|
sys.exit()
|
||||||
print("Error: Unable to find Cluster CTRL device with that order")
|
print("Error: Unable to find Cluster CTRL device with that order")
|
||||||
elif (args == 4 and sys.argv[1] == 'setorder'):
|
elif (args == 4 and sys.argv[1] == "setorder"):
|
||||||
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
||||||
print("Invalid order old")
|
print("Invalid order old")
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
@ -896,7 +896,7 @@ if __name__ == "__main__":
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
if (int(sys.argv[2]) == int(c[0])):
|
if (int(sys.argv[2]) == int(c[0])):
|
||||||
send_cmd(c, CMD_SET_ORDER, int(sys.argv[3]))
|
send_cmd(c, CMD_SET_ORDER, int(sys.argv[3]))
|
||||||
elif (args == 3 and sys.argv[1] == 'save'):
|
elif (args == 3 and sys.argv[1] == "save"):
|
||||||
# Set Power on state/USBBOOT/order to EEPROM for device with "order"
|
# Set Power on state/USBBOOT/order to EEPROM for device with "order"
|
||||||
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
||||||
print("Invalid order")
|
print("Invalid order")
|
||||||
|
@ -909,7 +909,7 @@ if __name__ == "__main__":
|
||||||
sys.exit()
|
sys.exit()
|
||||||
print("Error: Unable to find Cluster CTRL device with that order")
|
print("Error: Unable to find Cluster CTRL device with that order")
|
||||||
|
|
||||||
elif (args == 3 and sys.argv[1] == 'saveorder'):
|
elif (args == 3 and sys.argv[1] == "saveorder"):
|
||||||
# Set order to EEPROM for device with "order"
|
# Set order to EEPROM for device with "order"
|
||||||
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
||||||
print("Invalid order")
|
print("Invalid order")
|
||||||
|
@ -921,7 +921,7 @@ if __name__ == "__main__":
|
||||||
sys.exit()
|
sys.exit()
|
||||||
print("Error: Unable to find Cluster CTRL device with that order")
|
print("Error: Unable to find Cluster CTRL device with that order")
|
||||||
|
|
||||||
elif (args == 3 and sys.argv[1] == 'saveusbboot'):
|
elif (args == 3 and sys.argv[1] == "saveusbboot"):
|
||||||
# Set usbboot to EEPROM for device with "order"
|
# Set usbboot to EEPROM for device with "order"
|
||||||
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
||||||
print("Invalid order")
|
print("Invalid order")
|
||||||
|
@ -933,7 +933,7 @@ if __name__ == "__main__":
|
||||||
sys.exit()
|
sys.exit()
|
||||||
print("Error: Unable to find Cluster CTRL device with that order")
|
print("Error: Unable to find Cluster CTRL device with that order")
|
||||||
|
|
||||||
elif (args == 3 and sys.argv[1] == 'savepos'):
|
elif (args == 3 and sys.argv[1] == "savepos"):
|
||||||
# Set Power On State to EEPROM for device with "order"
|
# Set Power On State to EEPROM for device with "order"
|
||||||
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
||||||
print("Invalid order")
|
print("Invalid order")
|
||||||
|
@ -945,7 +945,7 @@ if __name__ == "__main__":
|
||||||
sys.exit()
|
sys.exit()
|
||||||
print("Error: Unable to find Cluster CTRL device with that order")
|
print("Error: Unable to find Cluster CTRL device with that order")
|
||||||
|
|
||||||
elif (args == 3 and sys.argv[1] == 'reset'):
|
elif (args == 3 and sys.argv[1] == "reset"):
|
||||||
# Reset Cluster CTRL device with "order"
|
# Reset Cluster CTRL device with "order"
|
||||||
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
if (int(sys.argv[2])<1 or int(sys.argv[2])>255):
|
||||||
print("Invalid order")
|
print("Invalid order")
|
||||||
|
@ -957,7 +957,7 @@ if __name__ == "__main__":
|
||||||
print("reset")
|
print("reset")
|
||||||
sys.exit()
|
sys.exit()
|
||||||
print("Error: Unable to find Cluster CTRL device with that order")
|
print("Error: Unable to find Cluster CTRL device with that order")
|
||||||
elif (args == 3 and sys.argv[1] == 'fan' and (sys.argv[2] == 'on' or sys.argv[2] == 'off')):
|
elif (args == 3 and sys.argv[1] == "fan" and (sys.argv[2] == "on" or sys.argv[2] == "off")):
|
||||||
# Turn all fan on/off
|
# Turn all fan on/off
|
||||||
|
|
||||||
# "ClusterHAT" using GPIO
|
# "ClusterHAT" using GPIO
|
||||||
|
@ -967,27 +967,27 @@ if __name__ == "__main__":
|
||||||
GPIO.setmode(GPIO.BCM)
|
GPIO.setmode(GPIO.BCM)
|
||||||
GPIO.setup(fangpio, GPIO.OUT)
|
GPIO.setup(fangpio, GPIO.OUT)
|
||||||
GPIO.output(fangpio, 1)
|
GPIO.output(fangpio, 1)
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
GPIO.output(fangpio, 1)
|
GPIO.output(fangpio, 1)
|
||||||
else:
|
else:
|
||||||
GPIO.output(fangpio, 0)
|
GPIO.output(fangpio, 0)
|
||||||
|
|
||||||
if (clusterctrl):
|
if (clusterctrl):
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
send_cmd(c, CMD_FAN, 1)
|
send_cmd(c, CMD_FAN, 1)
|
||||||
else:
|
else:
|
||||||
send_cmd(c, CMD_FAN, 0)
|
send_cmd(c, CMD_FAN, 0)
|
||||||
elif (args == 4 and sys.argv[1] == 'fan' and (sys.argv[2] == 'on' or sys.argv[2] == 'off')):
|
elif (args == 4 and sys.argv[1] == "fan" and (sys.argv[2] == "on" or sys.argv[2] == "off")):
|
||||||
# Turn fan on/off for CTRL device with "order" or Controller if arg is "c"
|
# Turn fan on/off for CTRL device with "order" or Controller if arg is "c"
|
||||||
if (sys.argv[3] != 'c' and (int(sys.argv[3])<1 or int(sys.argv[3])>255)):
|
if (sys.argv[3] != "c" and (int(sys.argv[3])<1 or int(sys.argv[3])>255)):
|
||||||
print("Invalid order")
|
print("Invalid order")
|
||||||
if (clusterhat and fangpio and sys.argv[3]=='c'):
|
if (clusterhat and fangpio and sys.argv[3]=="c"):
|
||||||
import RPi.GPIO as GPIO
|
import RPi.GPIO as GPIO
|
||||||
GPIO.setwarnings(False)
|
GPIO.setwarnings(False)
|
||||||
GPIO.setmode(GPIO.BCM)
|
GPIO.setmode(GPIO.BCM)
|
||||||
GPIO.setup(fangpio, GPIO.OUT)
|
GPIO.setup(fangpio, GPIO.OUT)
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
GPIO.output(fangpio, 1)
|
GPIO.output(fangpio, 1)
|
||||||
else:
|
else:
|
||||||
GPIO.output(fangpio, 0)
|
GPIO.output(fangpio, 0)
|
||||||
|
@ -995,15 +995,15 @@ if __name__ == "__main__":
|
||||||
if (clusterctrl):
|
if (clusterctrl):
|
||||||
for c in ctrl:
|
for c in ctrl:
|
||||||
if (int(sys.argv[3]) == int(c[0])):
|
if (int(sys.argv[3]) == int(c[0])):
|
||||||
if (sys.argv[2] == 'on'):
|
if (sys.argv[2] == "on"):
|
||||||
send_cmd(c, CMD_FAN, 1)
|
send_cmd(c, CMD_FAN, 1)
|
||||||
else:
|
else:
|
||||||
send_cmd(c, CMD_FAN, 0)
|
send_cmd(c, CMD_FAN, 0)
|
||||||
sys.exit()
|
sys.exit()
|
||||||
|
|
||||||
elif (args == 2 and sys.argv[1] == 'maxpi'):
|
elif (args == 2 and sys.argv[1] == "maxpi"):
|
||||||
print(maxpi)
|
print(maxpi)
|
||||||
elif (args == 2 and sys.argv[1] == 'init'):
|
elif (args == 2 and sys.argv[1] == "init"):
|
||||||
# First run init is handled above this is just here to allow the command to succeed
|
# First run init is handled above this is just here to allow the command to succeed
|
||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
|
|
Loading…
Reference in a new issue