|
|
@@ -0,0 +1,32 @@
|
|
|
+from __future__ import unicode_literals
|
|
|
+
|
|
|
+import re
|
|
|
+import ttfw_idf
|
|
|
+
|
|
|
+
|
|
|
+@ttfw_idf.idf_example_test(env_tag='Example_GENERIC', target=['esp32s2'])
|
|
|
+def test_examples_ulp_riscv(env, extra_data):
|
|
|
+ dut = env.get_dut('ulp_riscv', 'examples/system/ulp_riscv')
|
|
|
+ dut.start_app()
|
|
|
+
|
|
|
+ dut.expect_all('Not a ULP-RISC-V wakeup, initializing it!',
|
|
|
+ 'Entering in deep sleep',
|
|
|
+ timeout=30)
|
|
|
+
|
|
|
+ # Run two times to make sure device sleep
|
|
|
+ # and wake up properly
|
|
|
+ for i in range(0, 2):
|
|
|
+ # Pulling GPIO0 low using DTR
|
|
|
+ dut.port_inst.setDTR(True)
|
|
|
+
|
|
|
+ dut.expect('ULP-RISC-V woke up the main CPU!', timeout=5)
|
|
|
+
|
|
|
+ # We pulled GPIO0 low previously
|
|
|
+ dut.expect(re.compile(r'ULP-RISC-V read changes in GPIO_0 current is: Low'), timeout=5)
|
|
|
+
|
|
|
+ # Go back to sleep
|
|
|
+ dut.expect('Entering in deep sleep', timeout=5)
|
|
|
+
|
|
|
+
|
|
|
+if __name__ == '__main__':
|
|
|
+ test_examples_ulp_riscv()
|