melexis / mlx90640-library

MLX90640 library functions
Apache License 2.0
241 stars 192 forks source link

MLX90640 EEPROM check #90

Closed VaZso closed 2 years ago

VaZso commented 2 years ago

Hello,

I have mistakenly run setEmissivity function of MLX9014 which is most likely overwrote first register of MLX90640 as its address was given. I have saved its eeprom data after it happen...

I have assumed the first register should be around 0x00C4 as other sensors have similar data but it has a value of 0x00AE now. So, I have tried to restore my eeprom save by calling MLX90640_I2CWrite function where it differs but using 0x00C4 for first register; res is its return value.

The following changes were happened: [000] 00AE --> 00C4, res:-1 [012] 0000 --> 1901, res:0 [105] 0000 --> 0080, res:0 [196] 1BF0 --> 1BD0, res:0 [198] 0000 --> 24B0, res:0 [291] 0000 --> 08B0, res:0 [384] 0000 --> 14B2, res:0 [477] 0000 --> 0362, res:0 [570] 0000 --> F370, res:0 [663] 0000 --> F830, res:0 [756] 0000 --> 17F2, res:0

On re-run, the following changes are trying to be run again: [000] 00AE --> 00C4, res:254 [196] 1BF0 --> 1BD0, res:0

So, it seems I can not modify first register and register 196 becomes 1BF0 instead of 1BD0 sometime after eeprom write and restart of firmware. Also, I had other corrupted data somehow...

Read temperature values are extremely bad (around -20 - -40 degree Celsius), so it seems calibration data were also lost. However, I can draw a thermal image using these data and if I use another sensor's configuration, it displays relatively correct temperatures.

Could you please look at my eeprom data and suggest what could be wrong and what may I do to restore as much data of the sensor as possible?

Thank you your help in advance.

This is my current EEPROM data in the following format: [addr] value where address is (0x2400 + addr):

[000] 00AE [001] 599B [002] 0000 [003] 2061 [004] 0004 [005] 0320 [006] 03E0 [007] 150B [008] A228 [009] 0185 [010] 0499 [011] 0000 [012] 1901 [013] 0000 [014] 0000 [015] BE33 [016] 4310 [017] FFB3 [018] 0101 [019] 0101 [020] 0101 [021] F1F1 [022] E0F1 [023] CFD0 [024] FFFF 
[025] 0001 [026] F102 [027] 0103 [028] F204 [029] F204 [030] E2F5 [031] A2D3 [032] 88A5 [033] 37D3 [034] DCA9 [035] 11FF [036] 3322 [037] 3333 [038] 1122 [039] CCFF [040] FFFE [041] 0000 [042] 1111 [043] 1222 [044] 1122 [045] 0011 [046] EF00 [047] CDEE [048] 1791 [049] 2FA2 
[050] F3DF [051] 9D79 [052] 7666 [053] F9D1 [054] 3F3B [055] 3A39 [056] 2452 [057] FC6B [058] 17AF [059] 0626 [060] EC00 [061] 9797 [062] 9797 [063] 2AFB [064] 110E [065] 1350 [066] 209E [067] 008E [068] 046E [069] 0880 [070] 24EE [071] FCEE [072] 046E [073] 0490 [074] 2040 
[075] FCBE [076] 039E [077] 03BE [078] 1F3E [079] F0EC [080] 0B10 [081] FF2E [082] 1480 [083] FBDE [084] 000E [085] F01E [086] 1060 [087] EFBE [088] F7B0 [089] F700 [090] 0F4E [091] EC8E [092] F7EE [093] FB00 [094] 0F00 [095] F04E [096] 10F0 [097] 0B40 [098] F89C [099] 1870 
[100] 0060 [101] 0470 [102] 00FE [103] 0CF0 [104] 0470 [105] 0080 [106] FC3E [107] 10B0 [108] 0390 [109] FFBE [110] FF3E [111] 0CE0 [112] 0B32 [113] 033E [114] F48E [115] 13D0 [116] 0412 [117] F42E [118] F47E [119] 0BC0 [120] FFA2 [121] FB0E [122] F76E [123] 0490 [124] FFE0 
[125] 030E [126] F31E [127] 0850 [128] 10DE [129] 0F92 [130] 1CEE [131] 00CE [132] 085E [133] 1040 [134] 2110 [135] F91E [136] 086E [137] 010E [138] 1C90 [139] FCEE [140] 0B00 [141] 07B0 [142] 1F2E [143] F12E [144] 0F50 [145] 0370 [146] 14C0 [147] F45E [148] 0800 [149] F820 
[150] 1110 [151] EC3E [152] 0750 [153] FB20 [154] 1370 [155] E8DE [156] 03C0 [157] FF50 [158] 0F40 [159] E8CE [160] 10D0 [161] 0770 [162] F8DE [163] 1490 [164] 0460 [165] 04CE [166] FD1E [167] 10D0 [168] 0840 [169] 00C0 [170] F87E [171] 10A0 [172] 0AE2 [173] 036E [174] FF1E 
[175] 0900 [176] 0F42 [177] FF40 [178] F4CE [179] 1440 [180] 0814 [181] FC10 [182] F51E [183] 0820 [184] 0B74 [185] FF10 [186] F78E [187] 08C0 [188] 0BB2 [189] 0340 [190] F74E [191] 08A0 [192] 1C90 [193] 12F0 [194] 2030 [195] 00AE [196] 1BF0 [197] 0C20 [198] 24B0 [199] FCAE 
[200] 17B0 [201] 0FE0 [202] 23C0 [203] 003E [204] 0B20 [205] 0EC0 [206] 1EEE [207] F4BE [208] 16E0 [209] 06C0 [210] 1C40 [211] F84E [212] 0C02 [213] 03D0 [214] 1C60 [215] F06E [216] 0752 [217] FEC0 [218] 1340 [219] F43E [220] 0390 [221] 02F2 [222] 12D0 [223] ECAE [224] 14F2 
[225] 0750 [226] F8AE [227] 10E0 [228] 1032 [229] 0470 [230] F92E [231] 0CF0 [232] 1002 [233] 043E [234] 06DE [235] 1040 [236] 0782 [237] 0710 [238] FF4E [239] 08E0 [240] 0F42 [241] 0310 [242] F88E [243] 1090 [244] 0C64 [245] FC10 [246] F8EE [247] 08C0 [248] 07C2 [249] FF30 
[250] F7A0 [251] 0C90 [252] 0402 [253] 034E [254] F74E [255] 04F0 [256] 1080 [257] 1320 [258] 2040 [259] 006E [260] 0FD0 [261] 13E2 [262] 2470 [263] FC7E [264] 0FC0 [265] 0FC0 [266] 23E0 [267] 001E [268] 0AD0 [269] 0E80 [270] 1EF0 [271] F4DE [272] 0B00 [273] 0720 [274] 14B0 
[275] FBFE [276] 0420 [277] 03C0 [278] 14F0 [279] F070 [280] 0772 [281] FF20 [282] 1340 [283] F0A0 [284] FFD0 [285] FF60 [286] 1310 [287] F06E [288] 04E0 [289] FF60 [290] F0AE [291] 08B0 [292] 0022 [293] 0010 [294] F4CE [295] 08B0 [296] 0402 [297] FFE0 [298] F42E [299] 0C60 
[300] FF30 [301] 02C0 [302] F34E [303] 04D0 [304] 0332 [305] FB50 [306] ED0E [307] 0830 [308] 0072 [309] FBF0 [310] ED5E [311] 04C0 [312] 03D4 [313] FB70 [314] F3B0 [315] 0500 [316] FC32 [317] FBB0 [318] F360 [319] 04A0 [320] 1490 [321] 16F2 [322] 1C60 [323] 0050 [324] 0830 
[325] 13F2 [326] 1CE0 [327] FC80 [328] 0FD0 [329] 0FF2 [330] 1880 [331] 001E [332] 06B0 [333] 0ED0 [334] 1ED0 [335] F49E [336] 0EA2 [337] 0340 [338] 1822 [339] F85E [340] 07F0 [341] 0030 [342] 1872 [343] F46E [344] 07B2 [345] 0350 [346] 1750 [347] F0D0 [348] 07C0 [349] 0380 
[350] 1342 [351] F0BE [352] 00E2 [353] FB30 [354] E8CE [355] 0480 [356] F472 [357] F810 [358] E91E [359] 00B0 [360] FC02 [361] F420 [362] E4CE [363] 0850 [364] FB02 [365] FB00 [366] EF1E [367] 00C0 [368] 06F4 [369] F76E [370] EC6E [371] 0480 [372] 0032 [373] F460 [374] F0C0 
[375] 0482 [376] FC04 [377] F790 [378] F39E [379] 0112 [380] FC02 [381] FBB0 [382] EB90 [383] 00E0 [384] 14B2 [385] 0F62 [386] 2010 [387] 0070 [388] 17A0 [389] 0C02 [390] 1C70 [391] FC50 [392] 1750 [393] 0BC2 [394] 17D0 [395] 07C0 [396] 0AC0 [397] 0B12 [398] 1A72 [399] F850 
[400] 0B02 [401] 06B0 [402] 1420 [403] F800 [404] 0BC2 [405] 03B2 [406] 0D10 [407] F080 [408] 0392 [409] 02F2 [410] 0BB0 [411] F0F0 [412] FFE0 [413] FFA2 [414] 0F20 [415] F090 [416] F8F2 [417] EF80 [418] E44E [419] F8A2 [420] FFC2 [421] F030 [422] E4CE [423] FC72 [424] FF82 
[425] F3E0 [426] E41E [427] 03D0 [428] F712 [429] F340 [430] EABE [431] F870 [432] FB32 [433] F2E0 [434] E06E [435] 0020 [436] F814 [437] F3E0 [438] E13E [439] FCA0 [440] FBD4 [441] F310 [442] E00E [443] F920 [444] F412 [445] EFD0 [446] E780 [447] F8D0 [448] 00F0 [449] 0B62 
[450] 1090 [451] F890 [452] FC40 [453] 0472 [454] 1490 [455] F4C0 [456] 03E0 [457] 0BB2 [458] 0C82 [459] F880 [460] FB30 [461] 0702 [462] 12E0 [463] ED10 [464] 0312 [465] 02E2 [466] 1012 [467] F7E0 [468] FFF2 [469] FC02 [470] 0CE2 [471] EC90 [472] FBD2 [473] FBB2 [474] 0F72 
[475] ED00 [476] FFE0 [477] 0362 [478] 0F02 [479] F0B0 [480] 0522 [481] FF70 [482] F0BE [483] 10B2 [484] 0052 [485] FCB0 [486] F8CE [487] 0CE0 [488] 0422 [489] 07E0 [490] F0BE [491] 14A0 [492] 0372 [493] 0730 [494] FB1E [495] 0D20 [496] 0F32 [497] 0B00 [498] F85E [499] 1802 
[500] 0C02 [501] 0410 [502] F91E [503] 10A0 [504] 0824 [505] 07D0 [506] 0390 [507] 1522 [508] 1012 [509] 1380 [510] 0310 [511] 18C0 [512] F880 [513] 0742 [514] 0870 [515] F0D0 [516] F7E0 [517] 0022 [518] 08D0 [519] E8E0 [520] FBA0 [521] FFD2 [522] 0080 [523] F030 [524] EF10 
[525] 02C2 [526] 0AC2 [527] EC30 [528] FAD0 [529] FB02 [530] 0410 [531] E830 [532] F020 [533] FBC2 [534] 0482 [535] E850 [536] F3E2 [537] FB82 [538] 0752 [539] E8D0 [540] F000 [541] FB72 [542] FF62 [543] E8B0 [544] F882 [545] F750 [546] E49E [547] FCE0 [548] F410 [549] F820 
[550] E4FE [551] FCF0 [552] FFC2 [553] FBE0 [554] E0AE [555] 0830 [556] F360 [557] FEE0 [558] EEFE [559] 0850 [560] 0312 [561] FB20 [562] EC5E [563] 0840 [564] FC52 [565] FFE0 [566] F0AE [567] 0870 [568] 03F4 [569] FF90 [570] F370 [571] 0CD0 [572] 0412 [573] 0780 [574] F370 
[575] 10C0 [576] F4D0 [577] 0352 [578] 0050 [579] ECC0 [580] F022 [581] F812 [582] 00B2 [583] E480 [584] F030 [585] F412 [586] F070 [587] EC00 [588] EF20 [589] FB02 [590] FAF0 [591] E0E0 [592] F6E0 [593] F6B2 [594] FC20 [595] E430 [596] F7D2 [597] F012 [598] FC82 [599] E0A0 
[600] EBB2 [601] F362 [602] F390 [603] E0D0 [604] EF90 [605] F782 [606] F350 [607] E4B0 [608] E8D2 [609] EB50 [610] D86E [611] F4D2 [612] EC32 [613] EC20 [614] D8CE [615] F890 [616] F052 [617] E830 [618] D49E [619] FC20 [620] EF32 [621] F300 [622] DF1E [623] F4F0 [624] FB14 
[625] F6C0 [626] E03E [627] 0040 [628] FFE2 [629] F020 [630] E890 [631] 00A0 [632] F7B4 [633] F360 [634] E7A0 [635] 00C0 [636] FF92 [637] FB80 [638] E750 [639] 04B2 [640] F0E0 [641] 1352 [642] 08B0 [643] FCE0 [644] F440 [645] 0CA2 [646] 0D20 [647] F8F0 [648] 03D0 [649] 0FF2 
[650] 0C60 [651] 0020 [652] FB10 [653] 0B52 [654] 16C2 [655] F870 [656] FF40 [657] 0B22 [658] 0C50 [659] FFE0 [660] 07B0 [661] 0BE2 [662] 0CD0 [663] F830 [664] FF50 [665] 0B32 [666] 0F40 [667] FC50 [668] 0390 [669] 16E2 [670] 0F02 [671] 0430 [672] E8F0 [673] F750 [674] D8AE 
[675] 00C2 [676] F040 [677] F4A0 [678] E52E [679] 04F2 [680] FFF2 [681] FC00 [682] E48E [683] 1030 [684] FB22 [685] 0350 [686] F2DE [687] 0C80 [688] 0362 [689] 0310 [690] EC6E [691] 17E0 [692] 0FB2 [693] 07C0 [694] ECCE [695] 1422 [696] 0B42 [697] 0B10 [698] F74E [699] 1C32 
[700] 0F82 [701] 16D0 [702] F6F0 [703] 2030 [704] DD10 [705] 0392 [706] F4C0 [707] F0B0 [708] EC30 [709] FCE2 [710] 0140 [711] E980 [712] F020 [713] FC92 [714] FC90 [715] F090 [716] EB90 [717] 0332 [718] 0700 [719] EC80 [720] F340 [721] FF50 [722] 0440 [723] F7F0 [724] F000 
[725] FFB2 [726] 00D2 [727] EFFE [728] F722 [729] 02D0 [730] 0AE0 [731] ECE0 [732] F3A0 [733] 0B20 [734] FF32 [735] F870 [736] F0F0 [737] FF60 [738] E0AE [739] 1082 [740] 0012 [741] 00C0 [742] ED4E [743] 0D60 [744] 0820 [745] 0880 [746] F49E [747] 2090 [748] 0782 [749] 1720 
[750] FF0E [751] 2060 [752] 1342 [753] 1330 [754] FC3E [755] 27F0 [756] 17F2 [757] 1790 [758] F89E [759] 2000 [760] 1B02 [761] 1AB0 [762] 06CE [763] 24C0 [764] 1B72 [765] 2300 [766] 0300 [767] 3030 [768] F960 [769] 1BC2 [770] 08F0 [771] 08B0 [772] 0440 [773] 14C2 [774] 0D30 
[775] 0130 [776] FCE0 [777] 14A2 [778] 051E [779] 08A0 [780] 0790 [781] 1792 [782] 0BDE [783] 0100 [784] 0BB0 [785] 1752 [786] 10C0 [787] 0420 [788] 0810 [789] 1B70 [790] 1C40 [791] 042E [792] 0730 [793] 1AE0 [794] 0F40 [795] 04D0 [796] 03E0 [797] 2330 [798] 0B20 [799] 1470 
[800] E140 [801] F390 [802] CCCE [803] 0070 [804] F020 [805] F0A0 [806] D92E [807] 0100 [808] F0D0 [809] FC70 [810] DD0E [811] 0870 [812] FF70 [813] FF9E [814] E3BE [815] 08E0 [816] 0392 [817] 0720 [818] E8AE [819] 1BF0 [820] 07F2 [821] 0F50 [822] F41E [823] 17F0 [824] 0B12 
[825] 0AC0 [826] F33E [827] 0CC0 [828] 0BB0 [829] 1720 [830] F6FE [831] 2060