All standard range controllers released subsequent to the MMi99 (such as SL99) will support the board, and the DK versions of those controllers ship with appropriate support software.
SPLat/PC can be configured to handle the XIRO16 board. The XIRO16 is represented as an extra 8 inputs and an extra 8 outputs.
Once SPLat/PC is configured for the XIRO16, you program it as you would any other inputs or outputs. There are some minor timing restrictions.
There are two ways you can configure SPLat/PC to recognise the XIRO16 board:
If you connect the XIRO16 to a compatible SPLat controller, and then connect the controller to SPLat/PC, if SPLat/PC recognises the controller and XIRO16 combination (i.e. you have a recent enough SPLat/PC), SPLat/PC will automatically configure itself. You will see the I/O window grow to accommodate the extra I/O from the XIRO16.
Within SPLat/PC, there is a menu item to configure SPLat/PC to the board you are working with. This menu item is File>Configure>Board Type. Each controller board that can support XPice expansion boards like this one is represented by several variants. These variants relate to the amount of XPice expansion capacity connected to the controller.
For example, for the MMi200 there are the following variants:
| MMi200 | Just the controller, no expansion |
| MMi200+16XPice | Controller plus 16 XPice I/Os |
| MMi200+32XPice | Controller plus 32 XPice I/Os |
| MMi200+48XPice | Controller plus 48 XPice I/Os |
| MMi200+64XPice | Controller plus 64 XPice I/Os |
Because the XIRO16 has 8 inputs and 8 outputs, for a total of 16 I/O points, you need to select MMi200+16XPice (assuming you have just one XIRO16 connected). Similar for other controllers (like SL99).
You will need to carefully work out what input and output numbers apply to each XIRO16 I/O point. This will depend on what type of controller the XIRO16 is connected to, and on what other XIRO16 (or other XPice boards) are involved.
For an XIRO16 connected directly to a controller, the input numbers 'run on' directly after the controller's onboard inputs, and the output numbers 'run on' directly after the controller's outputs. On an XIRO16 connected to an MMi200, which has different quantities of inputs and outputs, this means that the 8 inputs and 8 outputs will not have identical numbers.
For an XIRO16 that is connected to another XIRO16, the input and output numbers 'run on' from the XIRO16 closer to the controller.
The easy way to get this clarified is to actually hook the boards up, connect to SPLat/PC and experimentally activate inputs and outputs. The SPLat/PC I/O window will show what's happening.
The limit on I/O count implied above is not absolute. Using the SPiceX method you can go considerably further. Tutorial.