Everything re-written from scratch in a more OO manner
Increased MAX_BUFFER_SIZE to 140
Changed m_nData data type to unsigned long long (64bit) and change printDataHex accordingly
additional decoders

adding decoders for WT450 and arlec door chime. packet rewind was done
because the number of pulses in WT450 is not fixed.
Adding encoding values

Adding encoding values for MAG_SW, WT450 and ARLEC. Also the sanity
check duration was changed because WT450 inter-frame delay was 72500us.
New Decoders and packet headers

Adding decoders for WT450 and Arlec door chime.
Changing the m_nCode to 64 bit.
Creating packet headers according to new protocol spec
Printing headers

Added new function to print data header before the data according to the
new protocol. Header format is
| 1byte encoding | 1 byte reserved | 2byte pulse width | variable bytes
payload |
Pause receiver while transmitting
Merge branch 'rewrite' of https://github.com/ninjablocks/arduino into rewrite
Corrected version of rewrite code
Merge branch 'rewrite' of https://github.com/ninjablocks/arduino into rewrite
- Removed legacy code from NinjaPacket (binary encoding)
- Split header data into 2 seperate class members that can be accessed independently
- Added header parsing for RF packets
- The received timing will now be used in OnBoardManager when transmitting RF data
Fixed RGB color hex values to be always sent as 3 bytes, possibly with leading zeros
Raising the serial baud rate to 57600
code readability

Replacing device ID literal with the proper #define value
Adding new encoders

adding arlec encoder and facilitating the referencing of different types
of encoders by the common Encoder class type object.
Changed the code value for common protocol encoder to ull because the
actual value in the Ninja packet is ull. This can be changed back to ul
if required.
handling multiple encoders

selecting the correct encoder based on encoding value
adding HE330v2 Receive and Transmit

Added support to receive and transmit Home Easy 330v2  power socket
/remote. For packet decoding use following info.
Total packet size 32 bits
0 - 25  -> controller id
26  -> Group flag
27 -> On/OFF
28 - 31 -> Switch Number (device Code)
Adding push button/PIR functionality for ports
Return baud rate to 9600

Can do after dynamic baud detection is implemented in the client.