Automated Test programs for Adalms

Hi,

We have about 200 Adalm devices returned from students which we need to test before re-deploying.

Does anyone know if there any ADI-official test programs and test-harnesses, automatic or manual available to do this?

Or is there there some ADALM selfcheck that could be run.

It would be great to be able to do this in bulk/batches.

Thanks...

  • 0
    •  Analog Employees 
    on May 7, 2021 10:05 AM

    Hi,

    Can you please be more specific to what ADALM board you are referring to (ADALM1000, ADALM2000, ADALM-PLUTO...)?
    Anyway, every board required external hardware which is not public.

    Regards,
    Mihai

  • Thanks Mihai,

    The target here is ADALM1000 boards. 

    We do have 2000s and Plutos, but not in the same quantity.

    Any guidance on auto-testing would be appreciated, viz test harnesses, jigs, software etc

    (If there was a test-list against which we could cross-reference to our labs, we could re-use boards which are broken in some way, but could still work for lab content)

  • 0
    •  Analog Employees 
    on May 7, 2021 1:23 PM in reply to Castrovalva

    Hi:

    Take a look at this repository on ADI's GitHub pages:

    https://github.com/analogdevicesinc/production-tests/tree/master/m1k

    The hardware is controlled by Raspberry Pi with M1k specific hardware adapter to interface to the board i.e. relays and other test circuits etc. The software is mainly written in Python. This is what we use in production testing at the board assembly house.

    Doug

  • 0
    •  Analog Employees 
    on May 7, 2021 2:55 PM in reply to Castrovalva

    Hi,

    If you need just a simple and quick functionality test you can make the setup from the below picture. All necessary parts are also available in the parts kit.

    Then, you will need to write a python script that will control the channels mode, get samples from channels for comparison reasons and also control the PIO pins.
    In this way, you can check the whole functionality of the board quickly and simply.

    This is just an idea and is not fully tested, but I hope it helps :). 

    The python script will need to do the following for example:
    1. Set CHA in SVMI mode (and source 4.2V), CHB in HIZ mode, PIO 0 digital output high, and the rest of the PIOs digital inputs. Compare the CHA sourced voltage with CHB measured voltage (should be almost the same, less than 1% difference), check CHA measured current (should be around 100 mA), and also check PIO 1 state (should be logic high).

    2. Set CHA in SVMI mode (and source 4.2V), CHB in HIZ mode, PIO 1 digital output high, and the rest of the PIOs digital inputs. Compare the CHA sourced voltage with CHB measured voltage (should be almost the same, less than 1% difference), check CHA measured current (should be around 100 mA), and also check PIO 0 state (should be logic high).

    3. Set CHA in SVMI mode (and source 0.8V), CHB in HIZ mode, PIO 0 digital output high, and the rest of the PIOs digital inputs. Compare the CHA sourced voltage with CHB measured voltage (should be almost the same, less than 1% difference), check CHA measured current (should be around -100 mA), and also check PIO 1 state (should be logic high).

    4. Set CHA in SVMI mode (and source 0.8V), CHB in HIZ mode, PIO 1 digital output high, and the rest of the PIOs digital inputs. Compare the CHA sourced voltage with CHB measured voltage (should be almost the same, less than 1% difference), check CHA measured current (should be around -100 mA), and also check PIO 0 state (should be logic high).

    5. Set CHB in SVMI mode (and source 4.2V), CHA in HIZ mode, PIO 0 digital output high, and the rest of the PIOs digital inputs. Compare the CHB sourced voltage with CHA measured voltage (should be almost the same, less than 1% difference), check CHB measured current (should be around 100 mA), and also check PIO 1 state (should be logic high).

    6. Set CHB in SVMI mode (and source 4.2V), CHA in HIZ mode, PIO 1 digital output high, and the rest of the PIOs digital inputs. Compare the CHB sourced voltage with CHA measured voltage (should be almost the same, less than 1% difference), check CHB measured current (should be around 100 mA), and also check PIO 0 state (should be logic high).

    7. Set CHB in SVMI mode (and source 0.8V), CHA in HIZ mode, PIO 0 digital output high, and the rest of the PIOs digital inputs. Compare the CHB sourced voltage with CHA measured voltage (should be almost the same, less than 1% difference), check CHB measured current (should be around -100 mA), and also check PIO 1 state (should be logic high).

    8. Set CHB in SVMI mode (and source 0.8V), CHA in HIZ mode, PIO 1 digital output high, and the rest of the PIOs digital inputs. Compare the CHB sourced voltage with CHA measured voltage (should be almost the same, less than 1% difference), check CHB measured current (should be around -100 mA), and also check PIO 0 state (should be logic high).

    9. Set CHA in SVMI mode (and source 0.8V), CHB in HIZ mode, PIO 2 digital output high, and the rest of the PIOs digital inputs. Compare the CHA sourced voltage with CHB measured voltage (should be almost the same, less than 1% difference), check CHA measured current (should be around -100 mA), and also check PIO 3 state (should be logic high).

    10. Set CHA in SVMI mode (and source 0.8V), CHB in HIZ mode, PIO 3 digital output high, and the rest of the PIOs digital inputs. Compare the CHA sourced voltage with CHB measured voltage (should be almost the same, less than 1% difference), check CHA measured current (should be around -100 mA), and also check PIO 2 state (should be logic high).

    11. Set CHB in SVMI mode (and source 0.8V), CHA in HIZ mode, PIO 2 digital output high, and the rest of the PIOs digital inputs. Compare the CHB sourced voltage with CHA measured voltage (should be almost the same, less than 1% difference), check CHB measured current (should be around -100 mA), and also check PIO 3 state (should be logic high).

    12. Set CHB in SVMI mode (and source 0.8V), CHA in HIZ mode, PIO 3 digital output high, and the rest of the PIOs digital inputs. Compare the CHB sourced voltage with CHA measured voltage (should be almost the same, less than 1% difference), check CHB measured current (should be around -100 mA), and also check PIO 2 state (should be logic high).

    Regards,
    Mihai

  • 0
    •  Analog Employees 
    on May 7, 2021 3:55 PM in reply to MihaiS

    Hi:

    The above suggestion is a very good place to start thinking about a "minimum" test rig for M1k. Actually a lot of the M1k SMU functionality can be tested without any external connections.

    However the connections shown do not test the AIN and BIN split I/O pins. An external CMOS multiplexer  like the 74HC4052 dual 4:1 Mux (controlled by the M1k Digital outputs) might be a way to easily switch around various connection configurations for testing voltage generation / measurement functional tests. The Ron of the Mux switch is around 80 ohms so you would not want to use them for switching high current test loads.

    For example the output of one of the two 4:1 mux could connect to the AIN Split I/O pin and each of the 4 Mux inputs could be connected to GND, +2.5 V, +5 V and CHB output. Similarly for BIN connected to other Mux output with 4 inputs connected to GND, +2.5 V, +5 V and CHA output.

    For testing larger load currents the M1k has built in 50 ohm "termination" resistors that can be switched on and off on each of the CHA and CHB output pins. One gets switched to GND and the other gets switched to +2.5 V. These could be used to test the current measurement functions

    I think this hardware arrangement would cover testing all 8 analog connector pins and probably 3 of the 4 Digital pins. (Connected to the two Mux address inputs and the Mux Enable input)

    By the way we supply the PCB design files for a small 74HC4052 based Multiplexer board that plugs directly into the M1k analog connector that would work for the fixture suggested above here on the ADI education tools repository:

    https://wiki.analog.com/university/tools/adalm1000/accessory-boards-index#dual_41_analog_input_multiplexer_board

    https://github.com/analogdevicesinc/education_tools/tree/m1k-accessory-boards/m1k-accessory-boards/m1k_analog_mux-4052

    Doug