diff --git a/firmware/applications/schneider.c b/firmware/applications/schneider.c index ee24e29..27ace29 100644 --- a/firmware/applications/schneider.c +++ b/firmware/applications/schneider.c @@ -30,10 +30,10 @@ #define CHANNEL 81 #define MAC "\x1\x2\x3\x2\x1" -#define UB_NONE 0 -#define UB_ESCAPE '\\' -#define UB_STOP '0' -#define UB_PACKETLEN 128 +#define SERIAL_NONE 0 +#define SERIAL_ESCAPE '\\' +#define SERIAL_STOP '0' +#define SERIAL_PACKETLEN 128 struct NRF_CFG config = { .channel= CHANNEL, @@ -43,12 +43,13 @@ struct NRF_CFG config = { .maclen ="\x10", }; -uint8_t serialmsg_message[UB_PACKETLEN]; +uint8_t serialmsg_message[SERIAL_PACKETLEN]; uint8_t serialmsg_len = 0; void serialmsg_init(void); uint8_t serialmsg_put(uint8_t data); char snd_pkt_no_crc(int size, uint8_t * pkt); +void dump_encoded(int len, uint8_t *data); #define INPUTLEN 99 /**************************************************************************/ @@ -57,7 +58,7 @@ void main_schneider(void) { GLOBAL(daytrig)=10; GLOBAL(lcdbacklight)=10; - char input[INPUTLEN+1]; + char input[64]; usbCDCInit(); delayms(500); @@ -66,13 +67,13 @@ void main_schneider(void) nrf_rcv_pkt_start(); while(1){ - int l=INPUTLEN, i, status; + int l, i, status; CDC_OutBufAvailChar (&l); if(l>0){ CDC_RdOutBuf (input, &l); for(i=0; i 0 ){ puts("\\1"); - CDC_WrInBuf(buf, &len); + dump_encoded(len, buf); puts("\\0"); } } } +void dump_encoded(int len, uint8_t *data) +{ + int i=0,j=0; + uint8_t buf[SERIAL_PACKETLEN*2]; + for(i=0; i