Skip to content

Commit 8a7b310

Browse files
authored
Merge pull request #5 from myDevicesIoT/fix/hardware-info
Update manufacturer and model detection.
2 parents 8a91f06 + 84a9b5b commit 8a7b310

File tree

1 file changed

+33
-27
lines changed

1 file changed

+33
-27
lines changed

myDevices/os/hardware.py

Lines changed: 33 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -15,37 +15,43 @@ def __init__(self):
1515
if key=='Revision':
1616
self.Revision = value
1717
except:
18-
exception ("Error reading cpuinfo")
19-
self.model = {}
20-
self.model["Beta"] = "Model B (Beta)"
21-
self.model["000d"] = self.model["000e"] = self.model["000f"] = self.model["0002"] = self.model["0003"] = self.model["0004"] = self.model["0005"] = self.model["0006"] = "Model B"
22-
self.model["0007"] = self.model["0008"] = self.model["0009"] = "Model A"
23-
self.model["0010"] = "Model B+"
24-
self.model["0011"] = "Compute Module"
25-
self.model["0012"] = "Model A+"
26-
self.model["0013"] = "Model B+"
27-
self.model["a01041"] = "Pi 2 Model B"
28-
self.model["a21041"] = "Pi 2 Model B"
29-
self.model["900092"] = "Zero"
30-
self.model["a22082"]=self.model["a02082"] = "Pi 3 Model B"
18+
exception ("Error reading cpuinfo")
19+
self.model = 'Unknown'
20+
if self.Revision == 'Beta':
21+
self.model = 'Model B (Beta)'
22+
if self.Revision in ('000d', '000e', '000f', '0002', '0003', '0004', '0005', '0006'):
23+
self.model = 'Model B'
24+
if self.Revision in ('0007', '0008', '0009'):
25+
self.model = 'Model A'
26+
if self.Revision in ('0010', '0013', '900032'):
27+
self.model = 'Model B +'
28+
if self.Revision in ('0011', '0014'):
29+
self.model = 'Compute Module'
30+
if self.Revision in ('0012', '0015'):
31+
self.model = 'Model A+'
32+
if self.Revision in ('a01041', 'a21041', 'a22042'):
33+
self.model = 'Pi 2 Model B'
34+
if self.Revision in ('900092', '900093'):
35+
self.model = 'Zero'
36+
if self.Revision in ('9000c1',):
37+
self.model = 'Zero W'
38+
if self.Revision in ('a02082', 'a22082'):
39+
self.model = 'Pi 3 Model B'
40+
self.manufacturer = 'Element14/Premier Farnell'
41+
if self.Revision in ('a01041', '900092', 'a02082', '0012', '0011', '0010', '000e', '0008', '0004'):
42+
self.manufacturer = 'Sony, UK'
43+
if self.Revision in ('0014', '0015', 'a21041', 'a22082'):
44+
self.manufacturer = 'Embest, China'
45+
if self.Revision in ('0005', '0009', '000f'):
46+
self.manufacturer = 'Qisda'
47+
if self.Revision in ('0006', '0007', '000d'):
48+
self.manufacturer = 'Egoman'
3149

3250
def getManufacturer(self):
33-
if self.Revision in ["a01041","900092", "a02082", "0012", "0011", "0010", "000e", "0008", "0004"]:
34-
return "Sony, UK"
35-
if self.Revision == "a21041":
36-
return "Embest, China"
37-
if self.Revision in ["0005", "0009", "000f"]:
38-
return "Qisda"
39-
if self.Revision in ["0006", "0007", "000d"]:
40-
return "Egoman"
41-
return "Element14/Premier Farnell"
51+
return self.manufacturer
4252

4353
def getModel(self):
44-
try:
45-
model = self.model[self.Revision]
46-
except:
47-
model = "Unknown"
48-
return model
54+
return self.model
4955

5056
def getMac(self, format=2):
5157
if format < 2:

0 commit comments

Comments
 (0)