toPacket method
toPacket returns the packet in the format of Layrz Protocol v3.
Definition:
<Pi>IMEI;FW_ID;FW_BUILD;SYS_DEV_ID;SYS_DEV_HW_ID;SYS_DEV_MD_ID;SYS_DEV_FW_BRANCH;FOTA_ENABLED;CRC16</Pi>
Implementation
@override
String toPacket() {
String payload = '$ident;';
payload += '$firmwareId;';
payload += '$firmwareBuild;';
payload += '$deviceId;';
payload += '$hardwareId;';
payload += '$modelId;';
payload += '${firmwareBranch.toPacket()};';
payload += '${fotaEnabled ? '1' : '0'};';
String crc = calculateCrc(payload.codeUnits).toRadixString(16).padLeft(4, '0').toUpperCase();
return '<Pi>$payload$crc</Pi>';
}