44 lines
1.2 KiB
Plaintext
44 lines
1.2 KiB
Plaintext
|
Firmware testing
|
||
|
----------------
|
||
|
|
||
|
Situations/features to test:
|
||
|
|
||
|
- factory firmware
|
||
|
- USB debugging
|
||
|
- is disabled by default after start
|
||
|
- can be enabled/disabled at runtime
|
||
|
- via I2C
|
||
|
- if Pine + F + U is pressed (status is reflected over I2C
|
||
|
in a control register)
|
||
|
- scanning block works
|
||
|
- switching it on/off works at runtime
|
||
|
- no interrupts are fired when blocked
|
||
|
- no keys appear pressed during a block
|
||
|
- USB bootloader jump works
|
||
|
- if Pine + F + B is pressed
|
||
|
- via USB debugger mode
|
||
|
- via I2C command
|
||
|
- reset over I2C works
|
||
|
- I2C debug log readout works
|
||
|
- selftest works
|
||
|
- shows result via I2C debug log
|
||
|
- exposed GPIOs are accessible over I2C
|
||
|
- direction configuration works
|
||
|
- readout/setting works
|
||
|
|
||
|
- interrupt
|
||
|
- 10us pulse visible on logical probe capture
|
||
|
- POGO interrupt is received on the SoC
|
||
|
|
||
|
- charger
|
||
|
- I2C A communication works
|
||
|
- I2C A timeout mechanism works when the bus is blocked
|
||
|
|
||
|
- user firmware
|
||
|
- flashing works
|
||
|
- reading works
|
||
|
- deletion works
|
||
|
- is not jumped to unless it's commited after flashing
|
||
|
- can be executed
|
||
|
- starts automatically unless Pine+F+H is held on powerup
|