JetECU-Core

Getting Started

  • Getting Started
    • Building
      • Prerequisites
      • Quick Build
      • Build Types
      • Cross-Compilation
    • Simulator
      • Running
      • Output Format
      • Engine Model
      • CSV Replay
    • Testing
      • Running Tests
      • Test Categories
      • CI Matrix

Design

  • Architecture
    • Architecture Overview
      • Layer Diagram
      • Layers
      • Design Principles
    • State Machine
      • State Transition Diagram
      • States
      • Timeout Handling
      • Callbacks

API Reference

  • API Reference
    • Core ECU
      • ecu_init()
      • ecu_step()
      • ecu_inputs_t
        • rpm
        • egt
        • throttle
      • ecu_outputs_t
        • fuel_pct
        • igniter_on
        • starter_on
        • state
        • fault_code
      • ecu_t
        • sm
        • config
        • rpm_pid
        • fuel
        • rpm_sensor
        • egt_sensor
        • rpm_sensor_cfg
        • egt_sensor_cfg
        • fuel_map
        • egt_limit_map
        • fault_code
        • time_ms
    • State Machine
      • ecu_state_t
        • ECU_STATE_OFF
        • ECU_STATE_PRESTART
        • ECU_STATE_SPINUP
        • ECU_STATE_IGNITION
        • ECU_STATE_RAMP
        • ECU_STATE_RUN
        • ECU_STATE_COOLDOWN
        • ECU_STATE_SHUTDOWN
        • ECU_STATE_FAULT
      • sm_result_t
        • SM_NO_CHANGE
        • SM_TRANSITION
      • ecu_sm_callback_t
      • ecu_sm_init()
      • ecu_sm_transition()
      • ecu_sm_state()
      • ecu_sm_state_name()
      • ecu_sm_set_callbacks()
      • ecu_sm_set_timeout()
      • ecu_sm_timed_out()
      • ECU_STATE_COUNT
      • ecu_sm_t
        • current
        • state_enter_time
        • timeout_ms
        • on_enter
        • on_exit
        • cb_ctx
    • Sensor Processing
      • SENSOR_FAULT_NONE
      • SENSOR_FAULT_RANGE
      • SENSOR_FAULT_RATE
      • SENSOR_FAULT_STUCK
      • SENSOR_FAULT_PLAUSIBLE
      • ecu_sensor_init()
      • ecu_sensor_validate()
      • ecu_sensor_egt_plausible()
      • ecu_sensor_reading_t
        • value
        • raw
        • valid
        • faults
      • ecu_sensor_config_t
        • range_min
        • range_max
        • rate_limit
        • stuck_tolerance
        • stuck_count_limit
      • ecu_sensor_state_t
        • last_value
        • stuck_count
        • initialized
    • PID Controller
      • ecu_pid_init()
      • ecu_pid_reset()
      • ecu_pid_update()
      • ecu_pid_config_t
        • kp
        • ki
        • kd
        • output_min
        • output_max
        • integral_max
      • ecu_pid_t
        • cfg
        • integral
        • prev_error
        • initialized
    • Fuel Scheduling
      • ecu_fuel_init()
      • ecu_fuel_compute()
      • ecu_fuel_cutoff()
      • ecu_fuel_release()
      • ecu_fuel_output_t
        • command_pct
        • actual_pct
        • cutoff
      • ecu_fuel_state_t
        • last_pct
        • cutoff_active
    • Fault Manager
      • ecu_fault_severity_t
        • FAULT_SEV_INFO
        • FAULT_SEV_WARNING
        • FAULT_SEV_CRITICAL
        • FAULT_SEV_FATAL
      • ecu_fault_action_t
        • FAULT_ACTION_NONE
        • FAULT_ACTION_DEGRADE
        • FAULT_ACTION_SHUTDOWN
      • ecu_fault_init()
      • ecu_fault_report()
      • ecu_fault_clear()
      • ecu_fault_get_action()
      • ecu_fault_is_active()
      • ecu_fault_count()
      • ecu_fault_try_retry()
      • ecu_fault_set_retries()
      • FAULT_MAX_ACTIVE
      • FAULT_LOG_SIZE
      • ecu_fault_t
        • code
        • severity
        • action
        • timestamp
        • latched
        • active
        • retry_count
        • max_retries
      • ecu_fault_mgr_t
        • active
        • active_count
        • log
        • log_head
        • log_count
        • highest_action
    • Lookup Maps
      • ecu_map1d_lookup()
      • ecu_map2d_lookup()
      • MAP_MAX_POINTS
      • MAP2D_MAX_ROWS
      • MAP2D_MAX_COLS
      • ecu_map1d_t
        • x
        • y
        • count
      • ecu_map2d_t
        • row_keys
        • col_keys
        • values
        • rows
        • cols
    • Scheduler
      • sched_priority_t
        • SCHED_PRIO_CRITICAL
        • SCHED_PRIO_HIGH
        • SCHED_PRIO_MEDIUM
        • SCHED_PRIO_LOW
      • sched_task_fn
      • ecu_sched_init()
      • ecu_sched_add()
      • ecu_sched_tick()
      • ecu_sched_get_wcet()
      • ecu_sched_any_overrun()
      • SCHED_MAX_TASKS
      • sched_task_t
        • name
        • fn
        • ctx
        • priority
        • interval_ms
        • last_run_ms
        • worst_case_us
        • run_count
        • overrun
      • ecu_scheduler_t
        • tasks
        • task_count
        • tick_ms
    • Configuration
      • ecu_config_defaults()
      • ecu_config_t
        • rpm_idle
        • rpm_max
        • rpm_start_target
        • egt_max
        • egt_start_min
        • fuel_start_pct
        • fuel_max_pct
        • fuel_ramp_rate
        • prestart_timeout_ms
        • spinup_timeout_ms
        • ignition_timeout_ms
        • rpm_ramp_rate
        • pid_kp
        • pid_ki
        • pid_kd
    • Telemetry
      • Framing
        • tel_decode_state_t
        • tel_frame_encode()
        • tel_decoder_init()
        • tel_decoder_feed()
        • tel_crc16()
        • TEL_SYNC1
        • TEL_SYNC2
        • TEL_MAX_PAYLOAD
        • TEL_FRAME_OVERHEAD
        • TEL_MAX_FRAME
        • tel_decoder_t
      • Send / Receive
        • tel_transport_fn
        • tel_init()
        • tel_send_status()
        • tel_process_byte()
        • tel_get_throttle()
        • tel_ctx_t
    • C++ Wrappers
      • Quick Example
      • Available Classes
      • Engine
      • StateMachine
      • Sensor
      • Pid
      • FaultManager
      • Map1D / Map2D
      • Scheduler
      • Config
      • Telemetry

Guides

  • Configuration
    • JSON Format
    • Parameters
    • Loading
  • Fault Handling
    • Fault Catalogue
    • Severity Levels
    • Degrade Mode
    • Recovery
    • Fault Log

Development

  • Contributing
    • Development Workflow
    • Code Style
    • Project Layout
    • Adding a New Module
    • License
JetECU-Core
  • API Reference
  • Edit on GitHub
Previous Next

API Reference

Auto-generated from Doxygen annotations in the C headers via Breathe.

  • Core ECU
  • State Machine
  • Sensor Processing
  • PID Controller
  • Fuel Scheduling
  • Fault Manager
  • Lookup Maps
  • Scheduler
  • Configuration
  • Telemetry
  • C++ Wrappers
Previous Next

© Copyright 2025-2026, JetECU contributors.

Built with Sphinx using a theme provided by Read the Docs.
v: 0.3 (latest)