diff options
Diffstat (limited to 'main/src')
| -rw-r--r-- | main/src/bell.c | 46 | ||||
| -rw-r--r-- | main/src/led.c | 2 | ||||
| -rw-r--r-- | main/src/lock.c | 8 |
3 files changed, 14 insertions, 42 deletions
diff --git a/main/src/bell.c b/main/src/bell.c index 8c0cf4b..07386ee 100644 --- a/main/src/bell.c +++ b/main/src/bell.c @@ -27,61 +27,31 @@ static hap_char_t *intercom_bell_current_state; void bell_hap_ring() { - ESP_LOGI(TAG, "Intercom bell HAP RING"); + ESP_LOGI(TAG, "bell HAP RING"); hap_char_update_val(intercom_bell_current_state, &HAP_PROGRAMMABLE_SWITCH_EVENT_SINGLE_PRESS); } void bell_block() { is_intercom_bell_blocked = true; - ESP_LOGI(TAG, "Intercom bell updated [blocked: %s]", is_intercom_bell_blocked ? "true" : "false"); + ESP_LOGI(TAG, "bell updated [blocked: true]"); xTimerReset(intercom_bell_timer, pdFALSE); } -void bell_unblock() -{ - is_intercom_bell_blocked = false; - ESP_LOGI(TAG, "Intercom bell updated [blocked: %s]", is_intercom_bell_blocked ? "true" : "false"); -} - -bool is_bell_blocked() -{ - ESP_LOGI(TAG, "Intercom bell triggered [blocked: %s]", is_intercom_bell_blocked ? "true" : "false"); - return is_intercom_bell_blocked; -} - -int read_adc() -{ - int val = adc1_get_raw(ADC1_GPIO33_CHANNEL); - ESP_LOGI(TAG, "Intercom bell read [val: %d]", val); - return val; -} - bool is_bell_ringing() { - int val = read_adc(); - bool is_ringing = 2340 < val && val < 2360; - ESP_LOGI(TAG, "Intercom bell rang [val: %d; is_ringing: %s]", val, is_ringing ? "true" : "false"); + int val = adc1_get_raw(ADC1_GPIO33_CHANNEL); + bool is_ringing = 1935 < val && val < 1945; + ESP_LOGI(TAG, "bell rang [val: %d; is_ringing: %s]", val, is_ringing ? "true" : "false"); return is_ringing; } -int read_adc_avg() -{ - //new average = old average + (next data - old average) / next count - int avg = 0; - for (int i = 1; i < 10; i++) - { - avg = avg + ((read_adc() - avg) / i); - } - return avg; -} - void intercom_bell_read(void *p) { for (;;) { ulTaskNotifyTake(pdTRUE, portMAX_DELAY); - if (!is_bell_blocked() && is_bell_ringing()) + if (!is_intercom_bell_blocked && is_bell_ringing()) { bell_hap_ring(); bell_block(); @@ -99,7 +69,9 @@ void IRAM_ATTR intercom_bell_isr(void *arg) void intercom_bell_timer_cb(TimerHandle_t timer) { - bell_unblock(); + ESP_LOGI(TAG, "bell timer triggered"); + is_intercom_bell_blocked = false; + ESP_LOGI(TAG, "bell updated [blocked: false]"); } void intercom_bell_blocker_init() diff --git a/main/src/led.c b/main/src/led.c index 0dc0e8d..b000e18 100644 --- a/main/src/led.c +++ b/main/src/led.c @@ -14,7 +14,7 @@ int intercom_led_identify(hap_acc_t *ha) { - ESP_LOGI(TAG, "Accessory identified"); + ESP_LOGI(TAG, "accessory identified"); for (int i = 0; i < LED_NUM_BLINK; i++) { gpio_set_level(GPIO_NUM_13, LED_ON); diff --git a/main/src/lock.c b/main/src/lock.c index 558968b..cc1605b 100644 --- a/main/src/lock.c +++ b/main/src/lock.c @@ -29,7 +29,7 @@ static hap_char_t *intercom_lock_target_state; void intercom_lock_unsecure() { - ESP_LOGI(TAG, "Intercom lock unsecure"); + ESP_LOGI(TAG, "lock updated [secured: false]"); gpio_set_level(GPIO_NUM_21, INTERCOM_LOCK_GPIO_UNLOCKED); hap_char_update_val(intercom_lock_current_state, &HAP_VAL_LOCK_CURRENT_STATE_UNSECURED); xTimerReset(intercom_lock_timer, 10); @@ -37,7 +37,7 @@ void intercom_lock_unsecure() void intercom_lock_secure() { - ESP_LOGI(TAG, "Intercom lock secure"); + ESP_LOGI(TAG, "lock updated [secured: true]"); gpio_set_level(GPIO_NUM_21, INTERCOM_LOCK_GPIO_LOCKED); hap_char_update_val(intercom_lock_current_state, &HAP_VAL_LOCK_CURRENT_STATE_SECURED); } @@ -51,7 +51,7 @@ int intercom_lock_write_cb(hap_write_data_t write_data[], int count, void *serv_ write = &write_data[i]; if (!strcmp(hap_char_get_type_uuid(write->hc), HAP_CHAR_UUID_LOCK_TARGET_STATE)) { - ESP_LOGI(TAG, "Intercom lock received write [%d]", write->val.u); + ESP_LOGI(TAG, "lock received write [val: %d]", write->val.u); switch (write->val.u) { @@ -77,7 +77,7 @@ int intercom_lock_write_cb(hap_write_data_t write_data[], int count, void *serv_ void intercom_lock_timer_cb(TimerHandle_t timer) { - ESP_LOGI(TAG, "Intercom lock timer fired"); + ESP_LOGI(TAG, "lock timer fired"); intercom_lock_secure(); hap_char_update_val(intercom_lock_target_state, &HAP_VAL_LOCK_TARGET_STATE_SECURED); } |
