I understand that this is just library for personal project and is not supported but maybe someone also had that question and found an answer. I don't quite understand this line, when we process last byte:
if (frameLength == CRSF_FRAME_LENGTH && m_inBuffer[0] == CRSF_ADDRESS_FLIGHT_CONTROLLER)
why frameLength should be equal to defined length? As far as I understood CRSF packets can can have different length, because payload can be different, so it looks weird.
I tried to use same code with SpeedyBee nano 2.4G ELRS as RX and Radiomaster TX16S as TX and from what I see I got packets with much bigger length then CRSF_FRAME_LENGTH, usually it's around 100
I guess for different TX the size of packet will be different, as far as they can have different amount of channels
I understand that this is just library for personal project and is not supported but maybe someone also had that question and found an answer. I don't quite understand this line, when we process last byte:
if (frameLength == CRSF_FRAME_LENGTH && m_inBuffer[0] == CRSF_ADDRESS_FLIGHT_CONTROLLER)why frameLength should be equal to defined length? As far as I understood CRSF packets can can have different length, because payload can be different, so it looks weird.
I tried to use same code with SpeedyBee nano 2.4G ELRS as RX and Radiomaster TX16S as TX and from what I see I got packets with much bigger length then
CRSF_FRAME_LENGTH, usually it's around 100I guess for different TX the size of packet will be different, as far as they can have different amount of channels