summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDaniel Campora <daniel@wipy.io>2015-08-09 14:30:50 +0200
committerDaniel Campora <daniel@wipy.io>2015-08-09 19:22:26 +0200
commitaa3569cd5758a2f7b43111fa1b2131725c74bf7a (patch)
tree9f83d07bf7ab321b074b253ada98042cbd9a19c5
parent8cd9fedf58f4126a9a4a3fb8ccd6ef2f7905d471 (diff)
downloadmicropython-aa3569cd5758a2f7b43111fa1b2131725c74bf7a.tar.gz
micropython-aa3569cd5758a2f7b43111fa1b2131725c74bf7a.zip
cc3200: Add factory smoke test as part of the tools.
-rw-r--r--cc3200/tools/smoke.py63
-rw-r--r--cc3200/tools/smoke.py.exp101
2 files changed, 164 insertions, 0 deletions
diff --git a/cc3200/tools/smoke.py b/cc3200/tools/smoke.py
new file mode 100644
index 0000000000..e1e3bbec5e
--- /dev/null
+++ b/cc3200/tools/smoke.py
@@ -0,0 +1,63 @@
+import pyb
+import os
+
+"""
+Execute it like this:
+
+python3 run-tests --target wipy --device 192.168.1.1 ../cc3200/tools/smoke.py
+"""
+
+pin_map = [2, 1, 23, 24, 11, 12, 13, 14, 15, 16, 17, 22, 28, 10, 9, 8, 7, 6, 30, 31, 3, 0, 4, 5]
+test_bytes = os.urandom(2048)
+
+def test_pin_read (type):
+ # enable the pull resistor on all pins, then read the value
+ for p in pin_map:
+ pin = pyb.Pin('GP' + str(p), af= 0, mode=pyb.Pin.IN, type=type)
+ # read the pin value
+ print (pin.value())
+
+def test_pin_shorts (type):
+ if type == pyb.Pin.STD_PU:
+ type_inverted = pyb.Pin.STD_PD
+ else:
+ type_inverted = pyb.Pin.STD_PU
+ # enable all pulls of the specified type
+ for p in pin_map:
+ pin = pyb.Pin('GP' + str(p), af= 0, mode=pyb.Pin.IN, type=type_inverted)
+ # then change the pull one pin at a time and read its value
+ i = 0
+ while i < len(pin_map):
+ pin = pyb.Pin('GP' + str(pin_map[i]), af= 0, mode=pyb.Pin.IN, type=type)
+ pyb.Pin('GP' + str(pin_map[i - 1]), af= 0, mode=pyb.Pin.IN, type=type_inverted)
+ i += 1
+ # read the pin value
+ print (pin.value())
+
+test_pin_read(pyb.Pin.STD_PU)
+test_pin_read(pyb.Pin.STD_PD)
+test_pin_shorts(pyb.Pin.STD_PU)
+test_pin_shorts(pyb.Pin.STD_PD)
+
+# create a test directory
+os.mkdir('/flash/test')
+os.chdir('/flash/test')
+print(os.getcwd())
+# create a new file
+f = open ('test.txt', 'w')
+n_w = f.write (test_bytes)
+print (n_w == len(test_bytes))
+f.close()
+f = open('test.txt', 'r')
+r = bytes(f.readall(), 'ascii')
+# check that we can write and read it correctly
+print (r == test_bytes)
+f.close()
+os.remove('test.txt')
+os.chdir('..')
+os.rmdir('test')
+
+ls = os.listdir()
+print('test' not in ls)
+print(ls)
+
diff --git a/cc3200/tools/smoke.py.exp b/cc3200/tools/smoke.py.exp
new file mode 100644
index 0000000000..1bd7b34618
--- /dev/null
+++ b/cc3200/tools/smoke.py.exp
@@ -0,0 +1,101 @@
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+1
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+0
+/flash
+True
+True
+True
+['main.py', 'sys', 'lib', 'cert', 'boot.py']