Other Parts Discussed in Thread: ALP
Dear Shruti,
I need some clarification on the use of Automatic Equalizer (AEQ). In particular, I have a Deserializer evaluation board connected to a serializer evaluation board. After start up I set some registers by means of the I2C interface. You find in the following the initialization procedure I use. iI is written in C code and function write_register takes as inputs (device_address, register_address, register_data). In red you will find some questions:
write_register (DESER_954, 0x01, 0x02)); //force a reset of the deserializer
write_register (DESER_954, 0x0C, 0x81)); //enable port 0
write_register (DESER_954, 0x4C, 0x01)); //access to port 0
//indirect access to register 0x08 (STROBE_SET) of port 0 to set base delay = 0
write_register (DESER_954, 0xB0, 0x06)); //access to specific registers of PORT0 with auto increment enabled
write_register (DESER_954, 0xB1, 0x08)); //indirect register address = 0x08
write_register (DESER_954, 0xB2, 0x00)); //write 0x00 into indirect register
write_register (DESER_954, 0x42, 0x71)); //Loop position + Errors checked (default values)
write_register (DESER_954, 0xD2, 0x94)); //AEQ settings left as default
write_register (DESER_954, 0xD5, 0xE0)); //Max/Min EQ Levels
write_register (DESER_954, 0x41, 0xE4)); //Max/Min STROBE positions (SFILTER level) --> here my intention was to put 0xE0 to give the AEQ maximum freedom to select the best strobe position between 0 and 14. Nevertheless, if I put a value between 0 and 3 as minimum strobe position I get that the system does not lock! I do not understand why this happens, since I believed that AEQ process could automatically find the correct strobe setting which ensure no communication errors. Is there any error in the way I am activating AEQ process?
write_register (DESER_954, 0xD4, 0x70)); //Enable AEQ and enable lock only if AEQ works
write_register (DESER_954, 0xD2, 0x9C)); //force a reset of Equalizer
usleep (500000); //wait 500ms
At this point I read register 0xD3 of deserializer and I read 0x00, meaning that the actual EQ level is 0. Where can I read the actual strobe position selected by the AEQ process?
write_register (DESER_954, 0x5C, 0x18); //address alias of remote serializer set to 0x0C (0x0C<<1 = 0x18)
write_register (DESER_954, 0x58, 0x5E)); //enable I2C pass-through
write_register (DESER_954, 0x33, 0x21)); //2 Lanes enabled, CSI enabled (on channel 0)
write_register (DESER_954, 0x7C, 0x00)); //discard frames on errors disabled
write_register (DESER_954, 0x20, 0x20)); //enable video stream on port 0
write_register (DESER_954, 0x6E, 0x20)); //remote GPIO1 linked to GPIO2 (that is led pwm)
write_register (SER_953, 0x0D, 0xF0)); //enable all 4 GPIO at serializer side to forward data at ser side
write_register (SER_953, 0x0E, 0xF0)); //set all 4 GPIO at serializer side as OUTPUTs
write_register (SER_953, 0x02, 0x53)); //continuous clock, 2 Lanes, CRC EN, I2C at 1.8V
write_register (SER_953, 0x03, 0x10)); //force to operate with the CSI2-SYNC MODE, even if strap on condition are different
//Configure clock frequency: Input reference clock = 25MHz, f_out = f_in*160/DIV*M/N, desired f_out = 25MHz
write_register (SER_953, 0x06, 0x81)); //set clock divider DIV=16 and M=1
write_register (SER_953, 0x07, 0x0A)); //set N=10
write_register (DESER_954, 0x5D, 0X6C)); //I2C address of remote CMOS sensor (0x36<<1 = 0x6C)
write_register (DESER_954, 0x65, 0x6C)); //I2C alias address of remote CMOS sensor (equal to real address)
write_register (SER_953, 0x49, 0x28)); //clear error flags on Serializer
write_register (DESER_954, 0x49, 0x28)); //clear error flags on Deserializer
Finally, I wanted to ask if you find any error in my initialization routine. In particular, is the AEQ correctly activated? In my configuration, if the system undergoes a loss of lock what will happen?
Please, find attached 4 txt files with a complete list of registers values at startup (after I turn on the boards and reset the deser) and after my initialization procedure.
In the txt files at startup asterisc indicate register I will write on during initialization. in addition I added comments to highlight why registers changed values.
Register 0x00 = 0x60 Register 0x01 = 0x00 Register 0x02 = 0x1E Register 0x03 = 0x20 Register 0x04 = 0xDF Register 0x05 = 0x01 Register 0x06 = 0x00 Register 0x07 = 0xFE Register 0x08 = 0x1C Register 0x09 = 0x10 Register 0x0A = 0x7A Register 0x0B = 0x7A Register 0x0C = 0x81 //Enable PORT 0 Register 0x0D = 0x09 Register 0x0E = 0x08 Register 0x0F = 0x7F Register 0x10 = 0x00 Register 0x11 = 0x00 Register 0x12 = 0x00 Register 0x13 = 0x00 Register 0x14 = 0x00 Register 0x15 = 0x00 Register 0x16 = 0x00 Register 0x17 = 0x00 Register 0x18 = 0x00 Register 0x19 = 0x00 Register 0x1A = 0x00 Register 0x1B = 0x00 Register 0x1C = 0x00 Register 0x1D = 0x00 Register 0x1E = 0x04 Register 0x1F = 0x02 Register 0x20 = 0x20 //enable video stream on port 0 Register 0x21 = 0x01 Register 0x22 = 0x00 Register 0x23 = 0x00 Register 0x24 = 0x00 Register 0x25 = 0x00 Register 0x26 = 0x00 Register 0x27 = 0x00 Register 0x28 = 0x00 Register 0x29 = 0x00 Register 0x2A = 0x00 Register 0x2B = 0x00 Register 0x2C = 0x00 Register 0x2D = 0x00 Register 0x2E = 0x00 Register 0x2F = 0x00 Register 0x30 = 0x00 Register 0x31 = 0x00 Register 0x32 = 0x00 Register 0x33 = 0x21 ///2 lanes enabled, CSI enabled (on channel 0) Register 0x34 = 0x40 Register 0x35 = 0x00 Register 0x36 = 0x00 Register 0x37 = 0x00 Register 0x38 = 0x00 Register 0x39 = 0x00 Register 0x3A = 0x00 Register 0x3B = 0x01 Register 0x3C = 0x14 Register 0x3D = 0x6F Register 0x3E = 0x00 Register 0x3F = 0x40 Register 0x40 = 0x00 Register 0x41 = 0xE4 //Max strobe = 14, min strobe = 4 (I would like to put min strobe = 0 to have full range, but putting min strobe < 4 the system does not lock!) Register 0x42 = 0x71 //Loop position + Errors checked (default values) Register 0x43 = 0x01 Register 0x44 = 0x00 Register 0x45 = 0x00 Register 0x46 = 0x00 Register 0x47 = 0x00 Register 0x48 = 0x00 Register 0x49 = 0x00 Register 0x4A = 0x00 Register 0x4B = 0x12 Register 0x4C = 0x01 //access to port 0 Register 0x4D = 0x03 //at the end of my custom initialization of registers I see LOCK and PASS = 1 (everything OK) Register 0x4E = 0x04 Register 0x4F = 0x64 Register 0x50 = 0x00 Register 0x51 = 0x00 Register 0x52 = 0x00 Register 0x53 = 0x03 Register 0x54 = 0x00 Register 0x55 = 0x00 Register 0x56 = 0x00 Register 0x57 = 0x00 Register 0x58 = 0x5E //enable I2C pass-through Register 0x59 = 0x00 Register 0x5A = 0x00 Register 0x5B = 0x30 Register 0x5C = 0x18 //I put 0x18 as serializer alias address Register 0x5D = 0x6C //I2C address of remote CMOS sensor Register 0x5E = 0x00 Register 0x5F = 0x00 Register 0x60 = 0x00 Register 0x61 = 0x00 Register 0x62 = 0x00 Register 0x63 = 0x00 Register 0x64 = 0x00 Register 0x65 = 0x6C //I2C alias address of remote CMOS sensor Register 0x66 = 0x00 Register 0x67 = 0x00 Register 0x68 = 0x00 Register 0x69 = 0x00 Register 0x6A = 0x00 Register 0x6B = 0x00 Register 0x6C = 0x00 Register 0x6D = 0x7C Register 0x6E = 0x20 //remote GPIO1 linked to GPIO2 Register 0x6F = 0x88 Register 0x70 = 0x2B Register 0x71 = 0x2C Register 0x72 = 0xE4 Register 0x73 = 0x00 Register 0x74 = 0x00 Register 0x75 = 0x00 Register 0x76 = 0x00 Register 0x77 = 0xC5 Register 0x78 = 0x00 Register 0x79 = 0x01 Register 0x7A = 0x00 Register 0x7B = 0x00 Register 0x7C = 0x00 //discard frames on errors disabled Register 0x7D = 0x00 Register 0x7E = 0x00 Register 0x7F = 0x00 Register 0x80 = 0x00 Register 0x81 = 0x00 Register 0x82 = 0x00 Register 0x83 = 0x00 Register 0x84 = 0x00 Register 0x85 = 0x00 Register 0x86 = 0x00 Register 0x87 = 0x00 Register 0x88 = 0x00 Register 0x89 = 0x00 Register 0x8A = 0x00 Register 0x8B = 0x00 Register 0x8C = 0x00 Register 0x8D = 0x00 Register 0x8E = 0x00 Register 0x8F = 0x00 Register 0x90 = 0x00 Register 0x91 = 0x00 Register 0x92 = 0x00 Register 0x93 = 0x00 Register 0x94 = 0x00 Register 0x95 = 0x00 Register 0x96 = 0x00 Register 0x97 = 0x00 Register 0x98 = 0x00 Register 0x99 = 0x00 Register 0x9A = 0x00 Register 0x9B = 0x00 Register 0x9C = 0x00 Register 0x9D = 0x00 Register 0x9E = 0x00 Register 0x9F = 0x00 Register 0xA0 = 0x02 Register 0xA1 = 0x0F Register 0xA2 = 0x00 Register 0xA3 = 0x00 Register 0xA4 = 0x08 Register 0xA5 = 0x19 Register 0xA6 = 0x00 Register 0xA7 = 0x00 Register 0xA8 = 0x00 Register 0xA9 = 0x00 Register 0xAA = 0x00 Register 0xAB = 0x00 Register 0xAC = 0x00 Register 0xAD = 0x00 Register 0xAE = 0x00 Register 0xAF = 0x00 Register 0xB0 = 0x06 //access to specific registers of PORT0 with auto increment enabled Register 0xB1 = 0x09 //I wrote 0x08 enabling auto increment, so now I see 0x09 Register 0xB2 = 0x00 //I wrote 0x00 into register 0x08 Register 0xB3 = 0x08 Register 0xB4 = 0x25 Register 0xB5 = 0x00 Register 0xB6 = 0x18 Register 0xB7 = 0x00 Register 0xB8 = 0x8C Register 0xB9 = 0x33 Register 0xBA = 0x83 Register 0xBB = 0x74 Register 0xBC = 0x80 Register 0xBD = 0x00 Register 0xBE = 0x00 Register 0xBF = 0x00 Register 0xC0 = 0x00 Register 0xC1 = 0x00 Register 0xC2 = 0x00 Register 0xC3 = 0x00 Register 0xC4 = 0x00 Register 0xC5 = 0x00 Register 0xC6 = 0x00 Register 0xC7 = 0x00 Register 0xC8 = 0x00 Register 0xC9 = 0x00 Register 0xCA = 0x00 Register 0xCB = 0x00 Register 0xCC = 0x00 Register 0xCD = 0x00 Register 0xCE = 0x00 Register 0xCF = 0x00 Register 0xD0 = 0x00 Register 0xD1 = 0x43 Register 0xD2 = 0x94 //AEQ settings left as default Register 0xD3 = 0x00 //after enabling AEQ the system automatically puts 0x00 in this register Register 0xD4 = 0x70 //Enable AEQ and enable lock only if AEQ works Register 0xD5 = 0xE0 //Max EQ = 14, min EQ = 0 (full range enabled) Register 0xD6 = 0x01 //RESERVED (?) Register 0xD7 = 0x00 Register 0xD8 = 0x00 Register 0xD9 = 0x00 Register 0xDA = 0x00 Register 0xDB = 0x00 Register 0xDC = 0x00 Register 0xDD = 0x00 Register 0xDE = 0x00 Register 0xDF = 0x00 Register 0xE0 = 0x00 Register 0xE1 = 0x00 Register 0xE2 = 0x00 Register 0xE3 = 0x00 Register 0xE4 = 0x00 Register 0xE5 = 0x00 Register 0xE6 = 0x00 Register 0xE7 = 0x00 Register 0xE8 = 0x00 Register 0xE9 = 0x00 Register 0xEA = 0x00 Register 0xEB = 0x00 Register 0xEC = 0x00 Register 0xED = 0x00 Register 0xEE = 0x00 Register 0xEF = 0x00 Register 0xF0 = 0x5F Register 0xF1 = 0x55 Register 0xF2 = 0x42 Register 0xF3 = 0x39 Register 0xF4 = 0x35 Register 0xF5 = 0x34 Register 0xF6 = 0x00 Register 0xF7 = 0x00 Register 0xF8 = 0x00 Register 0xF9 = 0x00 Register 0xFA = 0x00 Register 0xFB = 0x00
Register 0x00 = 0x60 Register 0x01 = 0x00 Register 0x02 = 0x1E Register 0x03 = 0x20 Register 0x04 = 0xDF Register 0x05 = 0x01 Register 0x06 = 0x00 Register 0x07 = 0xFE Register 0x08 = 0x1C Register 0x09 = 0x10 Register 0x0A = 0x7A Register 0x0B = 0x7A Register 0x0C = 0x83 * Register 0x0D = 0x09 Register 0x0E = 0x08 Register 0x0F = 0x7F Register 0x10 = 0x00 Register 0x11 = 0x00 Register 0x12 = 0x00 Register 0x13 = 0x00 Register 0x14 = 0x00 Register 0x15 = 0x00 Register 0x16 = 0x00 Register 0x17 = 0x00 Register 0x18 = 0x00 Register 0x19 = 0x00 Register 0x1A = 0x00 Register 0x1B = 0x00 Register 0x1C = 0x00 Register 0x1D = 0x00 Register 0x1E = 0x04 Register 0x1F = 0x02 Register 0x20 = 0x30 * Register 0x21 = 0x01 Register 0x22 = 0x00 Register 0x23 = 0x00 Register 0x24 = 0x00 Register 0x25 = 0x00 Register 0x26 = 0x00 Register 0x27 = 0x00 Register 0x28 = 0x00 Register 0x29 = 0x00 Register 0x2A = 0x00 Register 0x2B = 0x00 Register 0x2C = 0x00 Register 0x2D = 0x00 Register 0x2E = 0x00 Register 0x2F = 0x00 Register 0x30 = 0x00 Register 0x31 = 0x00 Register 0x32 = 0x00 Register 0x33 = 0x00 * Register 0x34 = 0x40 Register 0x35 = 0x00 Register 0x36 = 0x00 Register 0x37 = 0x00 Register 0x38 = 0x00 Register 0x39 = 0x00 Register 0x3A = 0x00 Register 0x3B = 0x01 Register 0x3C = 0x14 Register 0x3D = 0x6F Register 0x3E = 0x00 Register 0x3F = 0x40 Register 0x40 = 0x00 Register 0x41 = 0xA7 * Register 0x42 = 0x71 * Register 0x43 = 0x01 Register 0x44 = 0x00 Register 0x45 = 0x00 Register 0x46 = 0x00 Register 0x47 = 0x00 Register 0x48 = 0x00 Register 0x49 = 0x00 Register 0x4A = 0x00 Register 0x4B = 0x12 Register 0x4C = 0x00 * Register 0x4D = 0x13 //at startup I see lock status has changed Register 0x4E = 0x04 Register 0x4F = 0x64 Register 0x50 = 0x00 Register 0x51 = 0x00 Register 0x52 = 0x00 Register 0x53 = 0x03 Register 0x54 = 0x00 Register 0x55 = 0x00 Register 0x56 = 0x00 Register 0x57 = 0x00 Register 0x58 = 0x1E * Register 0x59 = 0x00 Register 0x5A = 0x00 Register 0x5B = 0x30 Register 0x5C = 0x00 * Register 0x5D = 0x00 * Register 0x5E = 0x00 Register 0x5F = 0x00 Register 0x60 = 0x00 Register 0x61 = 0x00 Register 0x62 = 0x00 Register 0x63 = 0x00 Register 0x64 = 0x00 Register 0x65 = 0x00 * Register 0x66 = 0x00 Register 0x67 = 0x00 Register 0x68 = 0x00 Register 0x69 = 0x00 Register 0x6A = 0x00 Register 0x6B = 0x00 Register 0x6C = 0x00 Register 0x6D = 0x7C Register 0x6E = 0x88 * Register 0x6F = 0x88 Register 0x70 = 0x2B Register 0x71 = 0x2C Register 0x72 = 0xE4 Register 0x73 = 0x00 Register 0x74 = 0x00 Register 0x75 = 0x00 Register 0x76 = 0x00 Register 0x77 = 0xC5 Register 0x78 = 0x00 Register 0x79 = 0x01 Register 0x7A = 0x00 Register 0x7B = 0x00 Register 0x7C = 0x20 * Register 0x7D = 0x00 Register 0x7E = 0x00 Register 0x7F = 0x00 Register 0x80 = 0x00 Register 0x81 = 0x00 Register 0x82 = 0x00 Register 0x83 = 0x00 Register 0x84 = 0x00 Register 0x85 = 0x00 Register 0x86 = 0x00 Register 0x87 = 0x00 Register 0x88 = 0x00 Register 0x89 = 0x00 Register 0x8A = 0x00 Register 0x8B = 0x00 Register 0x8C = 0x00 Register 0x8D = 0x00 Register 0x8E = 0x00 Register 0x8F = 0x00 Register 0x90 = 0x00 Register 0x91 = 0x00 Register 0x92 = 0x00 Register 0x93 = 0x00 Register 0x94 = 0x00 Register 0x95 = 0x00 Register 0x96 = 0x00 Register 0x97 = 0x00 Register 0x98 = 0x00 Register 0x99 = 0x00 Register 0x9A = 0x00 Register 0x9B = 0x00 Register 0x9C = 0x00 Register 0x9D = 0x00 Register 0x9E = 0x00 Register 0x9F = 0x00 Register 0xA0 = 0x02 Register 0xA1 = 0x0F Register 0xA2 = 0x00 Register 0xA3 = 0x00 Register 0xA4 = 0x08 Register 0xA5 = 0x19 Register 0xA6 = 0x00 Register 0xA7 = 0x00 Register 0xA8 = 0x00 Register 0xA9 = 0x00 Register 0xAA = 0x00 Register 0xAB = 0x00 Register 0xAC = 0x00 Register 0xAD = 0x00 Register 0xAE = 0x00 Register 0xAF = 0x00 Register 0xB0 = 0x08 * Register 0xB1 = 0x14 * Register 0xB2 = 0x3F * Register 0xB3 = 0x08 Register 0xB4 = 0x25 Register 0xB5 = 0x00 Register 0xB6 = 0x18 Register 0xB7 = 0x00 Register 0xB8 = 0x8C Register 0xB9 = 0x33 Register 0xBA = 0x83 Register 0xBB = 0x74 Register 0xBC = 0x80 Register 0xBD = 0x00 Register 0xBE = 0x00 Register 0xBF = 0x00 Register 0xC0 = 0x00 Register 0xC1 = 0x00 Register 0xC2 = 0x00 Register 0xC3 = 0x00 Register 0xC4 = 0x00 Register 0xC5 = 0x00 Register 0xC6 = 0x00 Register 0xC7 = 0x00 Register 0xC8 = 0x00 Register 0xC9 = 0x00 Register 0xCA = 0x00 Register 0xCB = 0x00 Register 0xCC = 0x00 Register 0xCD = 0x00 Register 0xCE = 0x00 Register 0xCF = 0x00 Register 0xD0 = 0x00 Register 0xD1 = 0x43 Register 0xD2 = 0x94 * Register 0xD3 = 0x02 * Register 0xD4 = 0x60 * Register 0xD5 = 0xF2 * Register 0xD6 = 0x00 //RESERVED, I see it changes after my custom initialization of registers (?) Register 0xD7 = 0x00 Register 0xD8 = 0x00 Register 0xD9 = 0x00 Register 0xDA = 0x00 Register 0xDB = 0x00 Register 0xDC = 0x00 Register 0xDD = 0x00 Register 0xDE = 0x00 Register 0xDF = 0x00 Register 0xE0 = 0x00 Register 0xE1 = 0x00 Register 0xE2 = 0x00 Register 0xE3 = 0x00 Register 0xE4 = 0x00 Register 0xE5 = 0x00 Register 0xE6 = 0x00 Register 0xE7 = 0x00 Register 0xE8 = 0x00 Register 0xE9 = 0x00 Register 0xEA = 0x00 Register 0xEB = 0x00 Register 0xEC = 0x00 Register 0xED = 0x00 Register 0xEE = 0x00 Register 0xEF = 0x00 Register 0xF0 = 0x5F Register 0xF1 = 0x55 Register 0xF2 = 0x42 Register 0xF3 = 0x39 Register 0xF4 = 0x35 Register 0xF5 = 0x34 Register 0xF6 = 0x00 Register 0xF7 = 0x00 Register 0xF8 = 0x00 Register 0xF9 = 0x00 Register 0xFA = 0x00 Register 0xFB = 0x00
Register 0x00 = 0x30 Register 0x01 = 0x00 Register 0x02 = 0x53 //continuous clock, 2 Lanes, CRC EN, I2C at 1.8V Register 0x03 = 0x58 //Register Mode overrides strapped value Register 0x04 = 0x00 Register 0x05 = 0x03 Register 0x06 = 0x81 //clock divider=16, M=1 Register 0x07 = 0x0A //N=10 Register 0x08 = 0xFE Register 0x09 = 0x1E Register 0x0A = 0x10 Register 0x0B = 0x7F Register 0x0C = 0x7F Register 0x0D = 0xF0 //enable all 4 GPIOs (default setting) Register 0x0E = 0xF0 //set all 4 GPIOs as outputs Register 0x0F = 0x00 Register 0x10 = 0x00 Register 0x11 = 0x00 Register 0x12 = 0x00 Register 0x13 = 0x00 Register 0x14 = 0x00 Register 0x15 = 0x20 Register 0x16 = 0x18 Register 0x17 = 0x3C Register 0x18 = 0x80 Register 0x19 = 0x62 Register 0x1A = 0x62 Register 0x1B = 0x62 Register 0x1C = 0x00 Register 0x1D = 0x00 Register 0x1E = 0x00 Register 0x1F = 0x00 Register 0x20 = 0x00 Register 0x21 = 0x00 Register 0x22 = 0x00 Register 0x23 = 0x00 Register 0x24 = 0x00 Register 0x25 = 0x02 Register 0x26 = 0x00 Register 0x27 = 0x00 Register 0x28 = 0x67 Register 0x29 = 0x33 Register 0x2A = 0x01 Register 0x2B = 0x00 Register 0x2C = 0x00 Register 0x2D = 0x00 Register 0x2E = 0x00 Register 0x2F = 0x00 Register 0x30 = 0x00 Register 0x31 = 0x20 Register 0x32 = 0x09 Register 0x33 = 0x04 Register 0x34 = 0x00 Register 0x35 = 0x10 Register 0x36 = 0x00 Register 0x37 = 0x60 Register 0x38 = 0x00 Register 0x39 = 0x00 Register 0x3A = 0x00 Register 0x3B = 0x00 Register 0x3C = 0x00 Register 0x3D = 0x00 Register 0x3E = 0x00 Register 0x3F = 0x00 Register 0x40 = 0x00 Register 0x41 = 0x00 Register 0x42 = 0x00 Register 0x43 = 0x00 Register 0x44 = 0x00 Register 0x45 = 0x00 Register 0x46 = 0x00 Register 0x47 = 0x00 Register 0x48 = 0x00 Register 0x49 = 0x00 Register 0x4A = 0x00 Register 0x4B = 0x00 Register 0x4C = 0x00 Register 0x4D = 0x00 Register 0x4E = 0x00 Register 0x4F = 0x00 Register 0x50 = 0x20 Register 0x51 = 0xC0 Register 0x52 = 0x45 //no CRC error, everything ok Register 0x53 = 0x00 Register 0x54 = 0x00 Register 0x55 = 0x00 //CRC error count = 0 (OK) Register 0x56 = 0x00 Register 0x57 = 0x00 Register 0x58 = 0x07 Register 0x59 = 0x07 Register 0x5A = 0x07 Register 0x5B = 0x00 Register 0x5C = 0x00 Register 0x5D = 0x00 Register 0x5E = 0x00 Register 0x5F = 0x00 Register 0x60 = 0x00 Register 0x61 = 0x00 Register 0x62 = 0x00 Register 0x63 = 0x00 Register 0x64 = 0x00 Register 0x65 = 0x88 Register 0x66 = 0x00 Register 0x67 = 0x00 Register 0x68 = 0x00 Register 0x69 = 0x00 Register 0x6A = 0x00 Register 0x6B = 0x00 Register 0x6C = 0x00 Register 0x6D = 0x00 Register 0x6E = 0x00 Register 0x6F = 0x00 Register 0x70 = 0x00 Register 0x71 = 0x00 Register 0x72 = 0x25 Register 0x73 = 0x00 Register 0x74 = 0x00 Register 0x75 = 0x00 Register 0x76 = 0x00 Register 0x77 = 0x00 Register 0x78 = 0x00 Register 0x79 = 0x00 Register 0x7A = 0xE4 Register 0x7B = 0x00 Register 0x7C = 0x00 Register 0x7D = 0x00 Register 0x7E = 0x00 Register 0x7F = 0x00 Register 0x80 = 0x00 Register 0x81 = 0x00 Register 0x82 = 0x00 Register 0x83 = 0x00 Register 0x84 = 0x00 Register 0x85 = 0x00 Register 0x86 = 0x90 Register 0x87 = 0x00 Register 0x88 = 0x00 Register 0x89 = 0x00 Register 0x8A = 0x00 Register 0x8B = 0x00 Register 0x8C = 0x05 Register 0x8D = 0x00 Register 0x8E = 0x00 Register 0x8F = 0x00 Register 0x90 = 0x32 Register 0x91 = 0xE3 Register 0x92 = 0x64 Register 0x93 = 0x01 Register 0x94 = 0x00 Register 0x95 = 0x00 Register 0x96 = 0x00 Register 0x97 = 0x00 Register 0x98 = 0x00 Register 0x99 = 0x00 Register 0x9A = 0x04 Register 0x9B = 0x00 Register 0x9C = 0x00 Register 0x9D = 0x00 Register 0x9E = 0x00 Register 0x9F = 0x0E Register 0xA0 = 0x00 Register 0xA1 = 0x0D Register 0xA2 = 0x0E Register 0xA3 = 0x0C Register 0xA4 = 0x0D Register 0xA5 = 0x10 Register 0xA6 = 0x42 Register 0xA7 = 0x10 Register 0xA8 = 0x10 Register 0xA9 = 0x10 Register 0xAA = 0x03 Register 0xAB = 0x01 Register 0xAC = 0x00 Register 0xAD = 0x00 Register 0xAE = 0x00 Register 0xAF = 0x00 Register 0xB0 = 0x04 Register 0xB1 = 0x4A Register 0xB2 = 0x3F Register 0xB3 = 0x00 Register 0xB4 = 0x00 Register 0xB5 = 0x00 Register 0xB6 = 0x00 Register 0xB7 = 0x00 Register 0xB8 = 0x00 Register 0xB9 = 0x00 Register 0xBA = 0x00 Register 0xBB = 0x00 Register 0xBC = 0x00 Register 0xBD = 0x00 Register 0xBE = 0x00 Register 0xBF = 0x00 Register 0xC0 = 0x00 Register 0xC1 = 0x00 Register 0xC2 = 0x00 Register 0xC3 = 0x00 Register 0xC4 = 0x00 Register 0xC5 = 0x00 Register 0xC6 = 0x00 Register 0xC7 = 0x00 Register 0xC8 = 0x00 Register 0xC9 = 0x00 Register 0xCA = 0x00 Register 0xCB = 0x00 Register 0xCC = 0x00 Register 0xCD = 0x00 Register 0xCE = 0x00 Register 0xCF = 0x00 Register 0xD0 = 0x00 Register 0xD1 = 0x00 Register 0xD2 = 0x00 Register 0xD3 = 0x00 Register 0xD4 = 0x00 Register 0xD5 = 0x00 Register 0xD6 = 0x00 Register 0xD7 = 0x00 Register 0xD8 = 0x00 Register 0xD9 = 0x00 Register 0xDA = 0x00 Register 0xDB = 0x00 Register 0xDC = 0x00 Register 0xDD = 0x00 Register 0xDE = 0x00 Register 0xDF = 0x00 Register 0xE0 = 0x00 Register 0xE1 = 0x00 Register 0xE2 = 0x00 Register 0xE3 = 0x00 Register 0xE4 = 0x00 Register 0xE5 = 0x00 Register 0xE6 = 0x00 Register 0xE7 = 0x00 Register 0xE8 = 0x00 Register 0xE9 = 0x00 Register 0xEA = 0x00 Register 0xEB = 0x00 Register 0xEC = 0x00 Register 0xED = 0x00 Register 0xEE = 0x00 Register 0xEF = 0x00 Register 0xF0 = 0x5F Register 0xF1 = 0x55 Register 0xF2 = 0x42 Register 0xF3 = 0x39 Register 0xF4 = 0x35 Register 0xF5 = 0x33
Register 0x00 = 0x30 Register 0x01 = 0x00 Register 0x02 = 0x33 * Register 0x03 = 0x48 * Register 0x04 = 0x00 Register 0x05 = 0x03 Register 0x06 = 0x41 * Register 0x07 = 0x28 * Register 0x08 = 0xFE Register 0x09 = 0x1E Register 0x0A = 0x10 Register 0x0B = 0x7F Register 0x0C = 0x7F Register 0x0D = 0xF0 * Register 0x0E = 0x0F * Register 0x0F = 0x00 Register 0x10 = 0x00 Register 0x11 = 0x00 Register 0x12 = 0x00 Register 0x13 = 0x00 Register 0x14 = 0x00 Register 0x15 = 0x20 Register 0x16 = 0x18 Register 0x17 = 0x3C Register 0x18 = 0x80 Register 0x19 = 0x62 Register 0x1A = 0x62 Register 0x1B = 0x62 Register 0x1C = 0x00 Register 0x1D = 0x00 Register 0x1E = 0x00 Register 0x1F = 0x00 Register 0x20 = 0x00 Register 0x21 = 0x00 Register 0x22 = 0x00 Register 0x23 = 0x00 Register 0x24 = 0x00 Register 0x25 = 0x02 Register 0x26 = 0x00 Register 0x27 = 0x00 Register 0x28 = 0x67 Register 0x29 = 0x33 Register 0x2A = 0x01 Register 0x2B = 0x00 Register 0x2C = 0x00 Register 0x2D = 0x00 Register 0x2E = 0x00 Register 0x2F = 0x00 Register 0x30 = 0x00 Register 0x31 = 0x20 Register 0x32 = 0x09 Register 0x33 = 0x04 Register 0x34 = 0x00 Register 0x35 = 0x10 Register 0x36 = 0x00 Register 0x37 = 0x60 Register 0x38 = 0x00 Register 0x39 = 0x00 Register 0x3A = 0x00 Register 0x3B = 0x00 Register 0x3C = 0x00 Register 0x3D = 0x00 Register 0x3E = 0x00 Register 0x3F = 0x00 Register 0x40 = 0x00 Register 0x41 = 0x00 Register 0x42 = 0x00 Register 0x43 = 0x00 Register 0x44 = 0x00 Register 0x45 = 0x00 Register 0x46 = 0x00 Register 0x47 = 0x00 Register 0x48 = 0x00 Register 0x49 = 0x00 Register 0x4A = 0x00 Register 0x4B = 0x00 Register 0x4C = 0x00 Register 0x4D = 0x00 Register 0x4E = 0x00 Register 0x4F = 0x00 Register 0x50 = 0x20 Register 0x51 = 0xC0 Register 0x52 = 0x47 //initial GENERAL_STATUS (CRC error detected) Register 0x53 = 0x00 Register 0x54 = 0x00 Register 0x55 = 0x21 //initial CRC error count !=0 Register 0x56 = 0x00 Register 0x57 = 0x00 Register 0x58 = 0x07 Register 0x59 = 0x07 Register 0x5A = 0x07 Register 0x5B = 0x00 Register 0x5C = 0x00 Register 0x5D = 0x00 Register 0x5E = 0x00 Register 0x5F = 0x00 Register 0x60 = 0x00 Register 0x61 = 0x00 Register 0x62 = 0x00 Register 0x63 = 0x00 Register 0x64 = 0x00 Register 0x65 = 0x88 Register 0x66 = 0x00 Register 0x67 = 0x00 Register 0x68 = 0x00 Register 0x69 = 0x00 Register 0x6A = 0x00 Register 0x6B = 0x00 Register 0x6C = 0x00 Register 0x6D = 0x00 Register 0x6E = 0x00 Register 0x6F = 0x00 Register 0x70 = 0x00 Register 0x71 = 0x00 Register 0x72 = 0x25 Register 0x73 = 0x00 Register 0x74 = 0x00 Register 0x75 = 0x00 Register 0x76 = 0x00 Register 0x77 = 0x00 Register 0x78 = 0x00 Register 0x79 = 0x00 Register 0x7A = 0xE4 Register 0x7B = 0x00 Register 0x7C = 0x00 Register 0x7D = 0x00 Register 0x7E = 0x00 Register 0x7F = 0x00 Register 0x80 = 0x00 Register 0x81 = 0x00 Register 0x82 = 0x00 Register 0x83 = 0x00 Register 0x84 = 0x00 Register 0x85 = 0x00 Register 0x86 = 0x90 Register 0x87 = 0x00 Register 0x88 = 0x00 Register 0x89 = 0x00 Register 0x8A = 0x00 Register 0x8B = 0x00 Register 0x8C = 0x05 Register 0x8D = 0x00 Register 0x8E = 0x00 Register 0x8F = 0x00 Register 0x90 = 0x32 Register 0x91 = 0xE3 Register 0x92 = 0x64 Register 0x93 = 0x01 Register 0x94 = 0x00 Register 0x95 = 0x00 Register 0x96 = 0x00 Register 0x97 = 0x00 Register 0x98 = 0x00 Register 0x99 = 0x00 Register 0x9A = 0x04 Register 0x9B = 0x00 Register 0x9C = 0x00 Register 0x9D = 0x00 Register 0x9E = 0x00 Register 0x9F = 0x0E Register 0xA0 = 0x00 Register 0xA1 = 0x0D Register 0xA2 = 0x0E Register 0xA3 = 0x0C Register 0xA4 = 0x0D Register 0xA5 = 0x10 Register 0xA6 = 0x42 Register 0xA7 = 0x10 Register 0xA8 = 0x10 Register 0xA9 = 0x10 Register 0xAA = 0x03 Register 0xAB = 0x01 Register 0xAC = 0x00 Register 0xAD = 0x00 Register 0xAE = 0x00 Register 0xAF = 0x00 Register 0xB0 = 0x04 Register 0xB1 = 0x4A Register 0xB2 = 0x3F Register 0xB3 = 0x00 Register 0xB4 = 0x00 Register 0xB5 = 0x00 Register 0xB6 = 0x00 Register 0xB7 = 0x00 Register 0xB8 = 0x00 Register 0xB9 = 0x00 Register 0xBA = 0x00 Register 0xBB = 0x00 Register 0xBC = 0x00 Register 0xBD = 0x00 Register 0xBE = 0x00 Register 0xBF = 0x00 Register 0xC0 = 0x00 Register 0xC1 = 0x00 Register 0xC2 = 0x00 Register 0xC3 = 0x00 Register 0xC4 = 0x00 Register 0xC5 = 0x00 Register 0xC6 = 0x00 Register 0xC7 = 0x00 Register 0xC8 = 0x00 Register 0xC9 = 0x00 Register 0xCA = 0x00 Register 0xCB = 0x00 Register 0xCC = 0x00 Register 0xCD = 0x00 Register 0xCE = 0x00 Register 0xCF = 0x00 Register 0xD0 = 0x00 Register 0xD1 = 0x00 Register 0xD2 = 0x00 Register 0xD3 = 0x00 Register 0xD4 = 0x00 Register 0xD5 = 0x00 Register 0xD6 = 0x00 Register 0xD7 = 0x00 Register 0xD8 = 0x00 Register 0xD9 = 0x00 Register 0xDA = 0x00 Register 0xDB = 0x00 Register 0xDC = 0x00 Register 0xDD = 0x00 Register 0xDE = 0x00 Register 0xDF = 0x00 Register 0xE0 = 0x00 Register 0xE1 = 0x00 Register 0xE2 = 0x00 Register 0xE3 = 0x00 Register 0xE4 = 0x00 Register 0xE5 = 0x00 Register 0xE6 = 0x00 Register 0xE7 = 0x00 Register 0xE8 = 0x00 Register 0xE9 = 0x00 Register 0xEA = 0x00 Register 0xEB = 0x00 Register 0xEC = 0x00 Register 0xED = 0x00 Register 0xEE = 0x00 Register 0xEF = 0x00 Register 0xF0 = 0x5F Register 0xF1 = 0x55 Register 0xF2 = 0x42 Register 0xF3 = 0x39 Register 0xF4 = 0x35 Register 0xF5 = 0x33
Just a curiosity, do you know why RESERVED register 0xD6 in deserializer changed its value from 0x00 to 0x01 after initialization?
Thank you in advance.
Best regards,
Alessandro