@@ -355,31 +355,52 @@ int InternalCombustionEngineControl::print_usage(const char *reason)
355
355
PRINT_MODULE_DESCRIPTION (
356
356
R"DESCR_STR(
357
357
### Description
358
+
358
359
The module controls internal combustion engine (ICE) features including:
359
- ignition (on/off),throttle and choke level, starter engine delay, and user request.
360
- The module publishes [InternalCombustionEngineControl.msg](../msg_docs/InternalCombustionEngineControl.md).
361
- The architecture is as shown below.:
362
- 
360
+ ignition (on/off), throttle and choke level, starter engine delay, and user request.
363
361
364
362
### Enabling
363
+
365
364
This feature is not enabled by default needs to be configured in the
366
365
build target for your board together with the rpm capture driver:
366
+
367
+ ```
367
368
CONFIG_MODULES_INTERNAL_COMBUSTION_ENGINE_CONTROL=y
368
369
CONFIG_DRIVERS_RPM_CAPTURE=y
370
+ ```
369
371
370
372
Additionally, to enable the module:
371
- - set [ICE_EN](https://docs.px4.io/main/en/advanced_config/parameter_reference.html#ICE_EN)
372
- to true and adjust the other module parameters ICE_ according to your needs.
373
- - set [RPM_CAP_ENABLE](https://docs.px4.io/main/en/advanced_config/parameter_reference.html#RPM_CAP_ENABLE) to true.
373
+
374
+ - Set [ICE_EN](../advanced_config/parameter_reference.md#ICE_EN)
375
+ to true and adjust the other `ICE_` module parameters according to your needs.
376
+ - Set [RPM_CAP_ENABLE](../advanced_config/parameter_reference.md#RPM_CAP_ENABLE) to true.
377
+
378
+ The module outputs control signals for ignition, throttle, and choke,
379
+ and takes inputs from an RPM sensor.
380
+ These must be mapped to AUX outputs/inputs in the [Actuator configuration](../config/actuators.md),
381
+ similar to the setup shown below.
382
+
383
+ 
374
384
375
385
### Implementation
386
+
376
387
The ICE is implemented with a (4) state machine:
377
- 
388
+
389
+ 
390
+
378
391
The state machine:
379
- - checks if [Rpm.msg](../msg_docs/Rpm.md) is updated to know if the engine is running
380
- - allows for user inputs from
381
- - AUX{N}
382
- - Arming state in [VehicleStatus.msg(../msg_docs/VehicleStatus.md)
392
+
393
+ - Checks if [Rpm.msg](../msg_docs/Rpm.md) is updated to know if the engine is running
394
+ - Allows for user inputs from:
395
+ - AUX{N}
396
+ - Arming state in [VehicleStatus.msg](../msg_docs/VehicleStatus.md)
397
+
398
+ The module publishes [InternalCombustionEngineControl.msg](../msg_docs/InternalCombustionEngineControl.md).
399
+
400
+ The architecture is as shown below:
401
+
402
+ 
403
+
383
404
<a id="internal_combustion_engine_control_usage"></a>
384
405
)DESCR_STR" );
385
406
0 commit comments