Stefano Viola’s NiCE5340 SoM Features nRF5340 SoC and iCE40 FPGA in a compact From Factor
Engineer and developer Stefano Viola has designed a System on Module (SoM) that features an nRF5340 Bluetooth SoC and an iCE40 FPGA in a compact 16×29 mm form factor. To make things more interesting Viola has embedded 11 sensors along with an nPM1100 battery monitor into that compact PCB, but Viola does not mention how many layers he has put to make this design so compact.
The brains for the SoM is the nRF5340 SoC and the FPGA is connected to the nRF SoC with SPI and I2C. To program the device you need to place the SOM in the carrier board by soldering it. then you can program the board via USB or OTA which is still a work in progress.
Previously we have written about many other SoMs including the MYC-J7A100T by MYIR, the NetBurner SOMRT1061, the iWave iW-RainboW-G61M, and many others feel free to check those out if you are looking for multifunction development boards.
Stefano Viola’s NiCE5340 SoM Specifications
- Processors
- Nordic Semiconductor nRF5340: Dual-core Arm Cortex-M33 system-on-chip with Bluetooth 5.4 capability
- Lattice Semiconductor iCE40UP5K-UWG30: Field-programmable gate array
- Storage
- 64Mbit (8MB) flash memory (AT25QL641-UUE-T)
- Sensors
- STMicroelectronics LSM6DSMTR: 6-axis inertial measurement unit
- Osram AS7057-BWL: Biosignal converter
- Memsic MMC3630KJ: Magnetometer
- Semtech SX9328ICSTRT: Touch sensor
- TDK ICS-41351: MEMS microphone
- Sensirion SHTC3: Humidity and temperature sensor
- Texas Instruments DRV2605LYZF: Haptic driver
- Rohm BH1749NUC-E2: RGB and infrared color sensor
- Infineon DPS310XTSA1: Barometric pressure sensor
- Texas Instruments INA231AIYFDT: Charge/discharge current monitor
- Analog Devices MAX31342EWA+T: Real-time clock
- Wireless
- Bluetooth 5.4 Low Energy
- Thread
- Zigbee
- Power
- Nordic Semiconductor nPM1100: Power management integrated circuit
- Additional Features
- Integrated chip antenna
- MHF4 connector for external antenna
- RGB LED (red and green channels connected)
- Dimensions: 29mm x 16mm
The board doesn’t have a built-in way to program it, but a separate board (called a carrier board) plugs into it and has a USB port for this purpose. This USB port talks directly to the main chip (nRF5340), which then sends instructions to a helper chip (FPGA) using special connections. The main chip can also be programmed wirelessly, which is handy. We’re still testing the wireless programming for the helper chip, but it’s a cool feature for the future.
You can check out Stefano Viola’s NiCE5340 SoM design and software code on GitHub, and Viola will add more examples for the Arm MCU and iCE40 FPGA soon. Feel free to reach out to Stefano Viola on LinkedIn if you want to learn more about the board, test it, or suggest improvements.