errorchecking for fans

This commit is contained in:
2026-08-13 17:58:53 +02:00
parent cf203edc32
commit 046cff01f8

View File

@@ -58,10 +58,12 @@ static void aio_usb_release(libusb_device_handle *dev) {
libusb_release_interface(dev, 0);
}
static void aio_post(libusb_device_handle *dev, uint8_t *req, const int req_len, uint8_t *resp, const int resp_len) {
static int aio_post(libusb_device_handle *dev, uint8_t *req, const int req_len, uint8_t *resp, const int resp_len) {
// applog(LOG_DBG, "writing to aio, %02x", req[0]);
libusb_bulk_transfer(dev, 0x01, req, req_len, nullptr, usb_timeout);
libusb_bulk_transfer(dev, 0x81, resp, resp_len, nullptr, usb_timeout);
int ret = 0;
ret += libusb_bulk_transfer(dev, 0x01, req, req_len, nullptr, usb_timeout);
ret += libusb_bulk_transfer(dev, 0x81, resp, resp_len, nullptr, usb_timeout);
return ret;
}
static float aio_get_water_temp(libusb_device_handle *dev) {
@@ -106,8 +108,9 @@ static void aio_set_fan_duty(libusb_device_handle *dev, const uint8_t *duty) {
req[2] = MIN(MAX(duty[i], 0), 100);
if (params.fans.fan_stop && req[2] <= params.fans.min_duty)
req[2] = 0;
aio_post(dev, req, sizeof(req), resp, buf_size);
last_duty = req[2];
const int ret = aio_post(dev, req, sizeof(req), resp, buf_size);
if (ret == 0)
last_duty = req[2];
}
}