List of Requests¶
Requests are one-byte instructions, defined by library. They are used by embedded methods, but You can call them manually by sendRequest() method.
enum dp_requests {
DP_START_OF_TRANSMISSION = 0xAA,
DP_SEND_ID = 0xBB,
DP_BURN_ID = 0xDD,
DP_SEND_STATUS = 0xAF,
DP_STATUS_ALIVE = 0xFA,
DP_WRONG_REQUEST = 0xEE,
DP_WRONG_ID_FORMAT = 0xEA,
DP_ID_TRANSMISSION = 0xDA,
DP_BACKUP_TRANSMISSION = 0xDB,
DP_CORRUPTED_ID = 0xDC,
DP_NEW_DEVICE = 0xDE
};
DP_START_OF_TRANSMISSION¶
value: 0xAA
This byte marks the beginning of message, it’s a base of the protocol-frame.
DP_SEND_ID¶
value: 0xBB
Request to send device ID. Device will return EEPROM status byte and it’s ID.
DP_BURN_ID¶
value: 0xDD
Gives device information to enter the burning mode. You should send new ID with standard message method as soon as sending this request. Device will sleep for 2 seconds before reading sent ID. After burning it will return EEPROM status and burned ID.
DP_SEND_STATUS¶
value: 0xAF
This request checks if device is still connected. After receiving this request device should answer with DP_STATUS_ALIVE. It’s automatic via request-loop called by getRequest(), You should avoid long operation blocks without calling this method, otherwise connection status will return No response…
DP_STATUS_ALIVE¶
value: 0xFA
Sent by device by status-monitor implemented in request-loop. It gives information that connection with device is still alive.
DP_ID_TRANSMISSION¶
value: 0xDA
Status sent right before message with ID. Transmission from first sector EEPROM without CRC errors.
DP_BACKUP_TRANSMISSION¶
value: 0xDB
Status sent right before message with ID. First sector EEPROM reach CRC error. Device started self-repair instructions. Transmission from backup sector EEPROM without CRC errors.
DP_CORRUPTED_ID¶
value: 0xDC
Device couldn’t send proper ID. Both sectors reach CRC error, so device can’t run self-repair. If you receive this code you should try re-Burn device ID with IDBurner tool.
DP_NEW_DEVICE¶
value: 0xDE
Device couldn’t send proper ID, because EEPROM sectors are blank. By protocol it will be recognized like new device without ID, but it also can be result of massive EEPROM errors.