Other Parts Discussed in Thread: OPT3101
Hello,
Two questions:
1. Can i re-use calibrations data stored in opt3101evm, if i have exactly the same hardware design?
2. How do i read out all the calibration data from opt3101evm?
Best Regards,
Mike
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hello,
Two questions:
1. Can i re-use calibrations data stored in opt3101evm, if i have exactly the same hardware design?
2. How do i read out all the calibration data from opt3101evm?
Best Regards,
Mike
Hi,
You could potentially re-use the system level calibrations if everything is quite similar (phase temperature, crosstalk temperature, and phase ambient). I would advice running a test after loading to ensure it is working. However, the are also calibrations that need to be done on every board (per board calibrations) these need to be done on every board regardless of design. This is the phase offset and crosstalk offset calibrations that you will still need to do. We have two documents online on the OPT3101 page that talk about calibration and give some more details here.
I have attached two scripts that you can add to your latte folder and use to read either the calibration registers or all registers from the EVM and it will print it to the log window in latte.
Best,
Alex
calibrationRegisters=np.array([0x0B,0x0C,0x29,0x2B,0x2C,0x2D,0x2E,0x2F,0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x38,0x39,0x3A,0x41,0x42,0x43,0x45,0x47,0x48,0x49,
#--External Temp Sensor Coeffs (TX0,TX1)--
#0x30,0x2D,0x2F,0x41,
#0x46, #TEMP_COEFF_ILLUM_HDR0_TX0
#0x47, #TILLUM_CALIB_HDR0_TX0
#0x48, #TILLUM_CALIB_HDR1_TX0
#0x49, #TILLUM_CALIB_HDR0_TX1
0x51, 0x52, #TEMP_COEFF_ILLUM_HDR1_TX0
0x53, #TEMP_COEFF_ILLUM_HDR0_TX1
#0x54, #TEMP_COEFF_ILLUM_HDR0_TX1
#0x55,0x56, #TEMP_COEFF_ILLUM_HDR1_TX1
0x5E,0x5F,0x60,0x71,0xB4,0xB5,0xB8,0xB9],dtype=np.uint8)
for regAddr in calibrationRegisters:
data=dev.readReg(regAddr)
log('0x%02X 0x%06X'%(regAddr,data))
for regAddr in np.arange(256):
data=dev.readReg(regAddr)
log('0x%02X 0x%06X'%(regAddr,data))