use static variables for callout instead of using xbeeboard struct
[protos/xbee-avr.git] / rc_proto.h
index 217bb96..868f921 100644 (file)
@@ -10,7 +10,7 @@ struct rc_proto_hdr {
 #define RC_PROTO_HELLO 0
 struct rc_proto_hello {
        uint8_t type;
-       uint8_t datalen;
+       uint8_t datalen; /* len of data excluding header */
        uint8_t data[];
 } __attribute__((packed));
 
@@ -18,7 +18,7 @@ struct rc_proto_hello {
 #define RC_PROTO_ECHO_REQ 1
 struct rc_proto_echo_req {
        uint8_t type;
-       uint8_t datalen;
+       uint8_t datalen; /* len of data excluding header */
        uint8_t data[];
 } __attribute__((packed));
 
@@ -26,7 +26,7 @@ struct rc_proto_echo_req {
 #define RC_PROTO_ECHO_ANS 2
 struct rc_proto_echo_ans {
        uint8_t type;
-       uint8_t datalen;
+       uint8_t datalen; /* len of data excluding header */
        uint8_t data[];
 } __attribute__((packed));
 
@@ -52,6 +52,11 @@ struct rc_proto_ack {
        uint8_t seq;
 } __attribute__((packed));
 
-void rc_proto_rx_range(int power_level);
+
+/* send a Hello message to a peer */
+int8_t rc_proto_send_hello(uint64_t addr, void *data, uint8_t data_len);
+
+/* reception of a xbee message */
+int rc_proto_rx(struct xbee_recv_hdr *recvframe, unsigned len);
 
 #endif