10359 test

From ElphelWiki
Jump to: navigation, search

Test Plan


0. Update CVS, for testing the 10359 board the php script test_inner_10359.php is ised.

1. "Detect 10359"

   a. Based on Andrey's bdetect.php
       Do           : check for the file '/var/log/bdetect' created by bdetect.php - it contains information about extra boards
       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))