== Communication protocol between CAN and CC2540 chip [[BR]] List of commands from CC2540 to CAN transiver: 1. Subscribe to a message 2. Subscribe to a message with a bitmask 3. Unsubscribe from messages 4. Unsubscribe from messages with a bitmask 5. List of all subscriptions 6. Reset filter state 7. Passthrough message {{{ enum { CMD_SUBSCRIBE = 1, CMD_SUBSCRIBE_BITMASK, CMD_UNSUBSCRIBE, CMD_UNSUBSCRIBE_BITMASK, CMD_LIST, CMD_RESET, CMD_MSG } cmd_type; }}} List of responces from CAN transiver: {{{ enum { ACK_SUBSCRIBE = 1, ACK_SUBSCRIBE_BITMASK, ACK_UNSUBSCRIBE, ACK_UNSUBSCRIBE_BITMASK, ACK_LIST, ACK_RESET, ACK_MSG } cmd_type; }}} Command message structure ||= Byte =||= Bitmask =||= Description =||= Values =|| || 0 || || Command code || 1 - 7|| || 1 || || Payload size || 0 - 254|| || 2 - 255 || || Payload |||| Examples {{{ 01:08:76:00:55:01:44:02:01:00 03:02:76:00 05:00 06:00 07:76:06:05:01:02:03:04:05 }}} 1. byte - subsribe command 2. byte - payload size 8 byte = 2 CAN message IDs * 4 byte each 3. - 10. bytes 0076h & 0155h