61void error_message(uint8_t error_header, uint8_t source_header, uint32_t value, uint8_t sub_source_header = 255);
62void error_message(uint8_t error_header, uint8_t source_header);
63void send_pin(uint8_t header, uint8_t
id, uint8_t value,
bool is_confirmation =
false);
64void send_data_i2c(uint8_t header,uint8_t device_address_8, uint8_t register_address, uint8_t value_ms, uint8_t value_ls,
bool is_confirmation =
false);
65void send_data32(uint8_t header, uint32_t value,
bool is_confirmation =
false);
66void send_config(uint8_t header, uint8_t config_header, uint8_t value);
void send_output_ring_buffer()
void error_message(uint8_t error_header, uint8_t source_header, uint32_t value, uint8_t sub_source_header=255)
void set_read_on_request(uint8_t state)
void error_message_bypass_buffer(uint8_t error_header, uint8_t source_header, uint32_t value, uint8_t sub_source_header=255)
volatile uint16_t output_ring_buffer_next_free
void send_pin(uint8_t header, uint8_t id, uint8_t value, bool is_confirmation=false)
volatile packet_t input_ring_buffer[INPUT_BUFFER_SIZE]
volatile unsigned long offset_time
void send_input_ring_buffer()
volatile uint16_t input_ring_buffer_start
volatile bool output_buffer_read
bool is_output_buffer_not_full()
bool is_input_buffer_not_full()
void send_data32(uint8_t header, uint32_t value, bool is_confirmation=false)
volatile packet_t output_ring_buffer[OUTPUT_BUFFER_SIZE]
volatile uint16_t input_ring_buffer_next_free
void enable_gpio_interrupt()
volatile bool read_active
void send_input_ring_buffer_free_spots()
volatile uint16_t loop_runs_without_gpio_interrups
void send_output_ring_buffer_first()
volatile bool is_realtime
void send_output_ring_buffer_last(bool conf=true)
void send_config(uint8_t header, uint8_t config_header, uint8_t value)
volatile uint16_t output_ring_buffer_start
void send_data_i2c(uint8_t header, uint8_t device_address_8, uint8_t register_address, uint8_t value_ms, uint8_t value_ls, bool is_confirmation=false)
void disable_gpio_interrupt()
volatile bool output_buffer_overflow
void add_input_packet(packet_t *input_packet)
#define OUTPUT_BUFFER_SIZE
#define INPUT_BUFFER_SIZE