====== Eratta ====== It was recently found that all of the JSON strings used for Quick Kards were representing numbers as hexadecimal values. These are malformed json strings and work is under way to correct the issue. The plan is to make a sketch that will search for the malformed json strings and correct them and update the EEPROM on the Kard. If you need specific details contact [[mailto:tech.support@pontech.com|tech.support@pontech.com]]. ====== Kard ID Format ====== Data format of I2C EEPROM which stores Kard Maker, Version, and Configuration. ^Byte number^Description^Example^ |8|Short SHA of JSON Header stored as ASCII string|de9f2c74| |200*|JSON Header, null terminated and padded|{"org":"pontech.com","cn":"Drive Kard","rev":"A", ...}| |48|User Data|User Defined| *** max, null padded** ^Required Fields^ |org, cn, rev| ^Protected Fields^ |io, label| ====== Examples ====== ===== Base Format ===== {"org":"pontech.com","cn":"Drive Kard","rev":"1.0",...} ===== ISO Kard ===== 98aac0b5{"org":"pontech.com","cn":"ISO Common Cathode","rev":"D","io":31} a1acc9b8{"org":"pontech.com","cn":"ISO Common Anode","rev":"D","io":31} Previously used malformed json strings: cf59e076{"org":"pontech.com","cn":"ISO Common Cathode","rev":"D","io":0x1F} 732653c5{"org":"pontech.com","cn":"ISO Common Anode","rev":"D","io":0x1F} ===== Drive Kard ===== 6e5f0d81{"org":"pontech.com","cn":"Drive Source","rev":"C","io":0} bd0dc7a0{"org":"pontech.com","cn":"Drive Sink","rev":"C","io":0} Previously used malformed json strings: ae1c1716{"org":"pontech.com","cn":"Drive Source","rev":"C","io":0x00} dc27dc34{"org":"pontech.com","cn":"Drive Sink","rev":"C","io":0x00} ===== Drive Ticket ===== 9d39f6aa{"org":"pontech.com","cn":"Drive S.Sink","rev":"A","io":0} 75d2619d{"org":"pontech.com","cn":"RGBW LED Sink","rev":"A","io":0} ===== Big Easy ===== d4cba19e{"org":"pontech.com","cn":"BigEasy","rev":"C","io":0,"label":["step","dir","enable","sleep","ms3"],"i2cMask":40} bba3c9aa{"org":"pontech.com","cn":"BigEasy","rev":"C1","io":0,"label":["step","dir","enable","sleep","ms2"],"i2cMask":40} e659e6bd{"org":"pontech.com","cn":"BigEasy","rev":"D","io":0,"label":["step","dir","enable","ms1","ms2"],"i2cMask":80} 4c9d1381{"org":"pontech.com","cn":"BigEasy","rev":"E","io":0,"label":["step","dir","enable","ms1","ms2"],"i2cMask":82} Previously used malformed json strings (no kards with these strings ever released into the wild): cfaafb2a{"org":"pontech.com","cn":"BigEasy","rev":"C","io":0x00,"label":["step","dir","enable","sleep","ms3"],"i2cMask":0x28} 89865d2a{"org":"pontech.com","cn":"BigEasy","rev":"C1","io":0x00,"label":["step","dir","enable","sleep","ms2"],"i2cMask":0x28} 507256b1{"org":"pontech.com","cn":"BigEasy","rev":"D","io":0x00,"label":["step","dir","enable","ms1","ms2"],"i2cMask":0x50} 2d2457db{"org":"pontech.com","cn":"BigEasy","rev":"E","io":0x00,"label":["step","dir","enable","ms1","ms2"],"i2cMask":0x52} ===== DAC ===== ''{"io":0x00,"spi":true}'' ===== UART ===== ''{"uart":true}'' ===== Com Kard ===== ''{"uart1a":true,"uart1b":true,"uart3b":true}'' ===== 4 SD Card ===== ''{"io":0x00,"spi":true,"label":["sd0", "sd1", "sd2", "sd3", "led"]}'' ===== Full Example ===== ''{"org":"Prolinear/Pontech Inc.","cn":"Drive Kard","rev":1.0,"email":"support@pontech.com","io":0x00,"label":["step","dir","en","sleep","ms3"]}'' ====== Useful links ====== [[http://json.org/|json spec]] [[http://www.freeformatter.com/json-validator.html|web based json validator]] [[http://www.sha1-online.com/|sha1 checker]]