During the process of firmware development two types of tests are initiated: functional and performance test. Each set of tests requires different tools which at the end lead to case where bunch of devices/instruments/probes are connected to device and PC. Having a all-in-one solution for these kind of tests is hard to achieve due to the spectrum of the tests and the range of the device. As such for a range of ST micro-controllers we made such an attempt with the device which incorporates:
- USB 2.0 1-4 USB Hub
- STLINK v2.0 programmer via STM32F103 MCU
- Signal generation and debugging via STM32F446 FS & HS USB interface separately exposed on USB hub
- ability to daisy chain through USB port
The key role of the STM32F446 is to provide bridge like function through USB CDC VCP class and designated peripheral on the aforementioned MCU. With the total of 15 USB endpoints (FS + HS) a rich set of functions can be simultaneously instantiated through separated USB class. In our case one USB VCP interface is used for device configuration of the remaining USB VCP interfaces which can act as serial probes/converters, digital and analog signal pattern generators, ADC signal capture, complex protocol implementation, etc… All digital IO pins are opto isolated for safe purposes.
The idea for this versatile board came from a sub-project where the multiple UART interfaces where enabled on a small dongle based on STM32F446 MCU. The good side of this approach was compact size, multiple IO’s and protocols exposed. However, no overcurrent/overvoltage protection.