Software and hardware configuration
To use the IMEC sensing engine the hardware needs to be configured with the CREW API. The corresponding libraries are typically pre-compiled for the Zotac nodes of thw w-iLab.t test bed. Here we briefly illustrates the main configuration steps, as required when updating or extending nodes with Imec sensing capabilities. We show this for the default organisation of the development files, as illustrated in the user manual
Figure 1 : software stack of the IMEC sensing engine
Software configuration
A high level overview of the software is shown in Figure 1. The software runs on Linux. The standard (lib)USB development kit implements the low level communication with the USB port on the SPIDER hardware board. An advantage of this approach is that the hardware abstraction layer (HAL), CREW sensing API (application programming interface) and application can be developed in user mode instead of kernel mode. The configuration is done as follows.
- Start up a terminal session
- Navigate to the top level directory of the development kit. You see two directories : "software" and "spider"
- cd spider/software/usb_interface/SensingEngine/ : this is the point where applications can be developed on top of the CREW sensing API
- source environment.csh : configure the environment with some additional variables
- pushd $USB_DIR : jump to directory with the spider HAL to communicate with the SPIDER board over USB
- make clean; make : build the spider API
- cd ../../platforms/swi/ : go to directory with the DIFFS HAL
- make clean ; make shared : build a shared library of the abstraction layer
- popd : jump back to the SensingEngine directory
- make clean ; make : build the CREW SensingEngine API
Hardware configuration
For CREW, the hardware configuration of the IMEC sensing engine is fixed. Two hardware configurations exist: one for systems equiped with a SCALDIO-2B front end, and another one when a WARP front-end board is present. In the spider/software/usb_interface/SensingEngine/ directory two scripts are available. Execute one of these to properly configure the SPIDER board:
- source environment.csh : only needed for a new terminal session
- ./setupscaldio.sh : execute this on nodes equiped with a Scaldio front end
- ./setupwarpfe.sh : execute this on nodes equiped with a WARP front end
With the command lsusb the hardware configuration can be checked. If the unitialised spider board is connected to the Zotac node, a USB device with ID 04b4:8613 of Cypress Semiconducor Corp. is present. After the hardware set-up this device is replaced by a USB device with ID 221a:0100. This signals that the SPIDER board is ready to use.
Attachment | Size |
---|---|
SE-software-stack.JPG | 32.32 KB |