void CapSenseMonitor::connect_sensor(UART_Ptr the_uart)
{
    CapacitiveSensor cs;
    auto sensor_index = m_sensors.size();
    cs.set_thresholds(*m_cap_sense_thresh_touch, *m_cap_sense_thresh_release);
    cs.set_charge_current(*m_cap_sense_charge_current);
    cs.set_touch_callback(std::bind(&CapSenseMonitor::sensor_touch, this,
                                    sensor_index, std::placeholders::_1));
    cs.set_release_callback(std::bind(&CapSenseMonitor::sensor_release, this,
                                      sensor_index, std::placeholders::_1));
    cs.set_timeout_reconnect(5.f);
    
    if(cs.connect(the_uart)){ m_sensors.push_back(cs); }
}