mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2024-12-11 19:24:10 +01:00
5c0921e92c
This module and its associated settings uavo can be used to test various fault conditions during initialization. To enable the module, add the TEST_FAULTS=YES to your make command line: make fw_coptercontrol TEST_FAULTS=YES Once this module is part of your firmware load, you can enable it in the hwsettings uavo and then select the type of fault to insert by editing the faultsettings uavo. On the next reset, the configured fault will be inserted into the init sequence to allow you to test the boot fault recovery code. With a fault inserted, you should see 3 failed boot attempts followed by a successful (recovery) boot. You will see the BootFault alarm set to Critical, and the RAM version of your hwsettings will be reset to defaults. Since the defaults have all optional modules disabled, the fault module will be out of the way during the recovery boot. You can then "Load" the flash version of the hwsettings uavo in the object browser, disable the Fault module and then "Save" the hwsettings module back to the board. The next reset will boot normally without the fault inserted.
13 lines
586 B
XML
13 lines
586 B
XML
<xml>
|
|
<object name="FaultSettings" singleinstance="true" settings="true">
|
|
<description>Allows testers to simulate various fault scenarios.</description>
|
|
|
|
<field name="ActivateFault" units="fault" type="enum" elements="1" options="NoFault,ModuleInitAssert,InitOutOfMemory,InitBusError,RunawayTask,TaskOutOfMemory" defaultvalue="NoFault"/>
|
|
|
|
<access gcs="readwrite" flight="readwrite"/>
|
|
<telemetrygcs acked="true" updatemode="onchange" period="0"/>
|
|
<telemetryflight acked="true" updatemode="onchange" period="0"/>
|
|
<logging updatemode="never" period="0"/>
|
|
</object>
|
|
</xml>
|