Difference between revisions of "10359 test"
From ElphelWiki
Line 23: | Line 23: | ||
Error(fatal) : "Sensor is not detected or I2C bus between 10359 and 10338 on channel 0 doesn't work". | Error(fatal) : "Sensor is not detected or I2C bus between 10359 and 10338 on channel 0 doesn't work". | ||
− | 4. ( | + | 4. (needed configuration) "Program channels 1 and 2" |
Do : camera_demo_359.php | Do : camera_demo_359.php | ||
Comment : frequency 96MHz is set and all sensors are programmed. Even if some of sensors do not present - i2c commands are sent | Comment : frequency 96MHz is set and all sensors are programmed. Even if some of sensors do not present - i2c commands are sent |
Revision as of 03:17, 9 October 2008
Test Plan
0. Update CVS from elphel-community
1. "Detect 10359"
a. Go to 2. - it will give the board ID.
OR
b. Andrey's method (but reboot or reconfiguration is needed because I2C bus uses the same wires as JTAG and won't work after getting board ID) Do : bdetect.php /*Can be only done until the 10359 board FPGA is programmed */ Response : board ID. Error(fatal) : "Failed to detect 10359".
2. "10353-10359 I2C connection check"
а. Read read board revision through i2c: Do : "i2c_receive(16,0,0x800,0);" Response : 0x0359. Error(fatal) : "I2C bus doesn't work".
3. "Detect sensor on channel 0" (after configuration channel 0 is set by default).
а. Read sensor ID through I2C Do : "i2c_receive(16,0,0x4800,0);" Response : 0x1801 (5MPix sensor). Error(fatal) : "Sensor is not detected or I2C bus between 10359 and 10338 on channel 0 doesn't work".
4. (needed configuration) "Program channels 1 and 2"
Do : camera_demo_359.php Comment : frequency 96MHz is set and all sensors are programmed. Even if some of sensors do not present - i2c commands are sent
5. "Detect sensors on channel 1 and 2"
а. Switch to a channel and read sensor's ID through I2C bus. Do : ch1 - "i2c_send(16,0,0x835,0x2,0);i2c_receive(16,0,0x4800,0);" ch2 - "i2c_send(16,0,0x835,0x4,0);i2c_receive(16,0,0x4800,0);" Response : 0x1801 from each (5MPix) sensor. Error : if any of the IDs is wrong - "sensor X is not detected or I2C bus between 10359 and 10338 on channel X doesn't work".
6. Adjust phases for detected channels.
a. For each channel in the test pattern mode apply phase steps until correct MD5 is calculated twice. Fixed number of steps. Do : switch channel - "i2c_send(16,0,0x835,0x2,0);" test pattern mode - "exec("fpcf -i2cw16 48a0 0041");" phases_adjust.php?dcm=1&shift_phase=1&N=5&sphase=7 Error : "Failed to adjust phase for channel Х". a) Failed for channel 0: bus "359-ch0" doesn't work good. б) Failed for channel 1 and 2, but for channel 0 is ok: bus "359-chX" doesn't work good. в) Failed for all channel: "bus 353-359 or all the other buses" don't work properly.
Correct MD5s automatically means that data buses are ok
7. "SDRAM check"
a. Read/write a couple of pages to SDRAM. Do : mem_test.php Error: "SDRAM test failed". (SDRAM phase depends on DCM1(channel 0))