MCPcopy Create free account
hub / github.com/ArduPilot/ArduRemoteID / receive

Method receive

RemoteIDModule/CANDriver.cpp:260–278  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

258}
259
260bool CANDriver::receive(CANFrame &out_frame)
261{
262 twai_message_t message {};
263 esp_err_t recverr = twai_receive(&message, pdMS_TO_TICKS(5));
264 if (recverr != ESP_OK) {
265 return false;
266 }
267
268 memcpy(out_frame.data, message.data, 8);// copy new data
269 out_frame.dlc = message.data_length_code;
270 out_frame.id = message.identifier;
271 if (message.extd) {
272 out_frame.id |= CANARD_CAN_FRAME_EFF;
273 }
274 if (out_frame.id & CANFrame::FlagERR) { // same as a message.isErrorFrame() if done later.
275 return false;
276 }
277 return true;
278}
279
280#endif // AP_DRONECAN_ENABLED

Callers 1

processRxMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected