From 6283b5ab672eed7ec654cfbf23e1f18cfff29898 Mon Sep 17 00:00:00 2001 From: "stefan@pico.ruhr.de" Date: Fri, 8 Jun 2012 13:38:51 +0000 Subject: [PATCH] fix checksum calculation git-svn-id: http://multiwii.googlecode.com/svn/trunk/MultiWiiConf_shared@865 02679b44-d973-9852-f2fa-63770883b36c --- MultiWiiConf.pde | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/MultiWiiConf.pde b/MultiWiiConf.pde index b4a2a36..b4018be 100644 --- a/MultiWiiConf.pde +++ b/MultiWiiConf.pde @@ -580,9 +580,11 @@ void draw() { inBuf[offset++] = (byte)(c&0xFF); } else if (c_state == HEADER_CMD && offset >= dataSize) { /* compare calculated and transferred checksum */ - if (checksum == (c&0xFF)) { + if ((checksum&0xFF) == (c&0xFF)) { /* we got a valid response packet, evaluate it */ evaluateCommand(cmd, (int)dataSize); + } else { + System.out.println("invalid checksum for command "+((int)(cmd&0xFF))+": "+(checksum&0xFF)+" expected, got "+(int)(c&0xFF)); } c_state = IDLE; }