Interface_Name,Interface_Type,Provider_Component,Provider_Location,Used_By_Components,Software_Features,System_Requirements,Communication_Pattern,Data_Types,Description
State Manager Interface,API,State Manager,application_layer/business_stack/STM/,All components requiring state awareness,F-SYS;F-OTA;F-PWR,SR-SYS-001;SR-SYS-002;SR-SYS-003,Synchronous API calls,system_state_t;transition_reason_t;state_listener_t,System state machine management and coordination
Event System Interface,Event Bus,Event System,application_layer/business_stack/event_system/,All components for inter-component communication,F-SYS;F-DAQ;F-COM;F-DIAG,SR-SYS-002;SR-COM-005,Asynchronous publish/subscribe,event_type_t;event_handler_t,Cross-component event-based communication
Sensor Manager Interface,API,Sensor Manager,application_layer/business_stack/sensor_manager/,"Data Pool, Main Hub APIs, Diagnostics",F-DAQ;F-DQC,SR-DAQ-001;SR-DAQ-002;SR-DAQ-003;SR-DAQ-004;SR-DAQ-005,Synchronous API calls,sensor_data_record_t;sensor_state_t;machine_constants_t,Sensor lifecycle and data acquisition management
Sensor Abstraction Layer Interface,Hardware Abstraction,Sensor Abstraction Layer,drivers/sensor_abstraction/,Sensor Manager,F-HW;F-DAQ,SR-HW-001;SR-HW-002,Synchronous API calls,sensor_metadata_t;calibration_data_t,Hardware abstraction for sensor access
Data Pool Interface,API,Data Pool,application_layer/DP_stack/data_pool/,"Main Hub APIs, Persistence, Diagnostics",F-DATA;F-DAQ;F-COM,SR-DATA-002;SR-PERF-003,Synchronous API calls,sensor_data_record_t;system_state_t,Runtime data storage and access
Persistence Interface,API,Persistence,application_layer/DP_stack/persistence/,All components requiring persistent storage,F-DATA;F-DIAG;F-DQC;F-OTA,SR-DATA-001;SR-DATA-002;SR-DATA-003;SR-DATA-004;SR-DATA-005,Synchronous API calls,sensor_data_record_t;diagnostic_event_t;machine_constants_t,Persistent storage abstraction and management
Main Hub APIs Interface,Communication Protocol,Main Hub APIs,application_layer/business_stack/main_hub_apis/,Event System (for data transmission triggers),F-COM,SR-COM-001;SR-COM-002;SR-COM-003,Asynchronous network communication,main_hub_request_t;connection_status_t,Main Hub communication protocol implementation
Network Stack Interface,Network Protocol,Network Stack,drivers/network_stack/,"Main Hub APIs, OTA Manager",F-COM;F-SEC;F-OTA,SR-COM-002;SR-COM-004;SR-COM-005,Asynchronous network I/O,tls_config_t;network_status_t,Network protocol and connectivity management
Diagnostics Task Interface,API,Diagnostics Task,application_layer/diag_task/,"Error Handler, Engineering Tools",F-DIAG,SR-DIAG-001;SR-DIAG-002;SR-DIAG-003;SR-DIAG-004,Synchronous API calls,diagnostic_event_t;diagnostic_filter_t;system_health_t,Diagnostic event collection and management
Error Handler Interface,API,Error Handler,application_layer/error_handler/,All components for error reporting,F-PWR;F-DIAG;F-SYS,SR-PWR-003;SR-PWR-004;SR-DIAG-001,Synchronous API calls,error_code_t;diagnostic_severity_t;error_statistics_t,Error classification and escalation management
GPIO Manager Interface,Hardware Abstraction,GPIO Manager,drivers/gpio_manager/,All components requiring GPIO access,F-HW,SR-HW-002;SR-HW-003,Synchronous API calls,gpio_function_t;gpio_config_t;gpio_conflict_t,GPIO resource management and conflict detection
I2C Wrapper Interface,Hardware Interface,I2C Wrapper,ESP_IDF_FW_wrappers/i2c/,"Sensor Drivers, OLED Driver",F-HW;F-DAQ,SR-HW-002,Synchronous hardware I/O,i2c_config_t,I2C hardware interface abstraction
SPI Wrapper Interface,Hardware Interface,SPI Wrapper,ESP_IDF_FW_wrappers/spi/,"Sensor Drivers, SD Card Driver",F-HW;F-DAQ;F-DATA,SR-HW-002,Synchronous hardware I/O,spi_config_t,SPI hardware interface abstraction
UART Wrapper Interface,Hardware Interface,UART Wrapper,ESP_IDF_FW_wrappers/uart/,Sensor Drivers,F-HW;F-DAQ,SR-HW-002,Synchronous hardware I/O,uart_config_t,UART hardware interface abstraction
ADC Wrapper Interface,Hardware Interface,ADC Wrapper,ESP_IDF_FW_wrappers/adc/,Sensor Drivers,F-HW;F-DAQ,SR-HW-002,Synchronous hardware I/O,adc_config_t,ADC hardware interface abstraction
WiFi Wrapper Interface,Hardware Interface,WiFi Wrapper,ESP_IDF_FW_wrappers/wifi/,Network Stack,F-COM;F-SEC,SR-COM-002;SR-COM-004,Asynchronous network I/O,wifi_config_t,WiFi hardware interface abstraction
Security Manager Interface,API,Security Manager,application_layer/security/,All components for security enforcement,F-SEC,SR-SEC-001;SR-SEC-002;SR-SEC-003;SR-SEC-004,Synchronous API calls,security_violation_type_t;security_policy_t;security_status_t,Security policy enforcement and violation handling
Encryption Engine Interface,API,Encryption Engine,application_layer/security/crypto/,"Security Manager, OTA Manager, Persistence",F-SEC,SR-SEC-002;SR-SEC-003,Synchronous cryptographic operations,key_type_t,Cryptographic operations and key management
Machine Constant Manager Interface,API,Machine Constant Manager,application_layer/business_stack/machine_constant_manager/,"All components requiring configuration",F-DQC;F-SYS,SR-DQC-004;SR-DQC-005,Synchronous API calls,machine_constants_t;mc_validation_result_t,Machine constants management and validation
OTA Manager Interface,API,OTA Manager,application_layer/business_stack/fw_upgrader/,"Main Hub APIs, State Manager",F-OTA,SR-OTA-001;SR-OTA-002;SR-OTA-003;SR-OTA-004;SR-OTA-005,Synchronous API calls,ota_request_t;ota_status_t;firmware_info_t,Over-the-air firmware update management
Logger Interface,Utility,Logger,utils/logger/,All components for debug logging,All Features (cross-cutting),SR-DIAG-002,Synchronous logging calls,log_level_t;log_output_t,Debug and diagnostic logging utility
Time Utils Interface,Utility,Time Utils,utils/time_utils/,"Sensor Manager, Diagnostics Task",F-DAQ;F-DIAG,SR-DAQ-004,Synchronous utility calls,uint64_t (timestamp),Time and timestamp utility functions
SD Card Driver Interface,Hardware Interface,SD Card Driver,drivers/SDcard/,Persistence,F-DATA,SR-DATA-001,Synchronous storage I/O,sd_card_config_t,SD card storage interface
NVM Driver Interface,Hardware Interface,NVM Driver,drivers/nvm/,Persistence,F-DATA;F-SEC,SR-DATA-001;SR-SEC-006,Synchronous storage I/O,nvm_config_t,Non-volatile memory interface
Actuator Manager Interface,API,Actuator Manager,application_layer/business_stack/actuator_manager/,Main Hub APIs,F-SYS,SR-SYS-004,Synchronous API calls,actuator_command_t;actuator_status_t,Actuator control and status management
HMI Interface,API,HMI,application_layer/hmi/,"State Manager, Diagnostics Task",F-SYS,SR-SYS-004,Synchronous API calls,hmi_display_data_t;button_event_t,Human-machine interface for local interaction
Task Abstraction Interface,OSAL,Task Abstraction,os/task/,All task-based components,All Features,N/A,RTOS abstraction,task_handle_t;task_config_t,FreeRTOS task abstraction layer
Software Timer Interface,OSAL,Software Timer,os/swtimer/,Components requiring timers,All Features,N/A,RTOS abstraction,timer_handle_t;timer_config_t,FreeRTOS software timer abstraction