feat: implement cel_crsf_param_write

Fire-and-forget parameter write. Builds CRSF PARAM_WRITE frame
and sends it over the serial port.
This commit is contained in:
2026-06-14 21:55:15 +02:00
parent 5d18258330
commit 8c4045e2a4
3 changed files with 55 additions and 11 deletions
+8 -7
View File
@@ -27,13 +27,14 @@ int cel_crsf_param_read(cel_serial_port* port, uint8_t index,
int cel_crsf_param_write(cel_serial_port* port, uint8_t index,
uint8_t value) {
/* TODO: send param write frame.
* Use cel_crsf_build_param_write_frame() + cel_serial_write().
* No response expected for write — fire and forget. */
(void)port;
(void)index;
(void)value;
return -1;
if (port == NULL) return -1;
uint8_t frame[16];
size_t len = cel_crsf_build_param_write_frame(frame, index, value);
if (len == 0) return -1;
size_t written = cel_serial_write(port, frame, len);
return (written == len) ? 0 : -1;
}
int cel_crsf_param_set_power(cel_serial_port* port, int mw,