Fixed short between GND and Data
Added assembler version of firmware
Cleanup and some speedup