10359 test
From ElphelWiki
Test Plan
1. "Detect 10359"
а. Andrey's method Do : bdetect.php 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. (Not test) "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))