Supported Hardware
Bench
For the bench iteself, we provide images to install bench software on any Raspberry Pi model 3, 4, or 5.
- For some test cases, the higher RAM models may perform better.
- For Cellular testing, the Pi 5 is strongly recommended.
One of the goals of this product is to support the hardware you are already familiar with and maybe even own. With that, most of our test cases run on generic linux interfaces for Ethernet, Cellular, CAN and UART. For interfaces like WiFi and Bluetooth we recomemnd hardware with specific radio capabilities, and finally for USB we recommend a special piece of hardware which can present as either a USB Host or Device.
Interfaces
CAN
The provided CAN test cases use a SocketCAN interface to interact with the CAN bus which is defined by the device parameter of the audits. Many different hardware devices have support for SocketCAN, and once a device is connected to the Linux machine you can check if it is providing a socketcan interface as it should appear with the name can0. Some hardware devices like those from Intrepid Control Systems require drivers to be installed to provide this SocketCAN interface. If your CAN device does not automatically detect the baud rate of the connected bus, the baud rate must be configured. Commands to configure the interface can be found in the Linux kernel documentation: https://docs.kernel.org/networking/can.html
Our recommended device is the PCAN-USB from PEAK.
Example Set Up Commands
After connecting your CAN interface to the bench, you may need to configure the interface with commands similar to these below:
Virtual CAN
sudo modprobe vcan
sudo ip link add dev vcan0 type vcan
sudo ip link set up vcan0CAN
sudo ip link set can0 up type can bitrate 500000CAN-FD
sudo ip link set can0 up type can bitrate 500000 sample-point 0.75 dbitrate 2000000 dsample-point 0.75 fd onAutomotive Ethernet
The provided net tests are flexible, designed to be run against any normal IP interface on linux. This means that tests can be run on an Automotive Ethernet network with any media converter which can provide an interface on the Linux machine. Once a media converter is connected to the Linux machine, the interface should be configured and connectivity ensured to the DUT(s). Usually DHCP is not available on such a network, so a static IP must be assigned to the interface. This can be achieved via the UI or with the ip addr command, and once set the connectivity should be verified. Later, many of the tests can assign a static IP via their parameters.
We recommend using any generic media converter capable of the maximum network speed.
WiFi
Similar to Automotive Ethernet, current WiFi tests operate on a generic IP interface. This means that the bench can run tests as a client of the DUT’s WiFi access point, or as a peer of the DUT. In either case, it is likely there is DHCP on the network and you do not need to set a static IP address.
We recommend using Alfa WiFi to USB adapters such as AWUS036AXML which supports monitor mode and packet injection.
Bluetooth Classic
We recommend using the ESP-WROVER-KIT or Ubertooth One.
Bluetooth Low Energy
We recommend using the Ubertooth One or nRF52840 Dongle.
USB
Existing test cases use the facedancer libraries with the GreatFET One or the Cynthion.
Cellular
With Cellular, the bench operates on a generic IP interface. The only thing to keep in mind is that it is necessary that all cellular traffic is passed to the Linux device for any sniffing tests. Some cellular tools will describe this as a TAP interface.
Tool recommendation depends on use case.
UART
The existing UART test cases use a generic TTY interface.
We recommend using any USB to UART cable at the appropriate logic level.
JTAG
Tool recommendation depends on use case. We often use FTDI chips for JTAG or SWD, a miniWiggler for DAP and a USBDM for BDM communication.