#include "wires.h" uint32_t total_strikes; static const char *TAG = "wires"; static const uint32_t STRIKE_TIME_PENALTY = 30'000; static bool button_state; static bool button_pressed; static bool button_released; static uint8_t wires_state; static uint8_t wires_cut; static uint8_t buf[8]; static void poll_wires_task(void *arg); static void receive_wires(void); static void receive_button(void); void init_wires(void) { i2c_config_t wires_conf = { .mode = I2C_MODE_MASTER, .sda_io_num = GPIO_NUM_41, .scl_io_num = GPIO_NUM_42, .sda_pullup_en = GPIO_PULLUP_ENABLE, .scl_pullup_en = GPIO_PULLUP_ENABLE, .master = { .clk_speed = 100000, } }; gpio_reset_pin(GPIO_NUM_41); gpio_reset_pin(GPIO_NUM_42); ESP_ERROR_CHECK(i2c_param_config(WIRES_I2C_NUM, &wires_conf)); ESP_ERROR_CHECK(i2c_driver_install(WIRES_I2C_NUM, wires_conf.mode, 0, 0, 0)); gpio_config_t int_pin_conf = {}; // delta_pin_conf.intr_type = GPIO_INTR_LOW_LEVEL; int_pin_conf.mode = GPIO_MODE_INPUT; int_pin_conf.pin_bit_mask = (1ULL<