The CANgineBerry


The CANgineBerry is an active CAN co-processor module that uses a regular UART communication channel towards the host system. With its independent 32-bit microcontroller, the CANgineBerry can easily execute CAN protocols with tough timing demands such as CANcrypt or CANopen with response times of under 10 ms.

Depending on the configuration, the CAN communication can be up and running within 50 ms after power-on, even if the host system takes significantly longer to boot.

Available firmware options include a generic minimal CANopen Manager/Controller and a CANopenIA Device, both based on the CANopenIA implementation, and a CANcrypt-secured version of the popular Lawicel protocol (CAN232/SLCAN). A CANopen security anomaly-detection firmware is available soon.

CANgineBerry module

The connection to the host system uses only four pins: Two for power (5 V) and two for the UART. The four-pin header row directly matches the Raspberry Pi 40-pin GPIO header, used on the Raspberry Pi 2 and all later models, including the Pi 4 and Pi 5, but also other common connectors, such as popular USB-to-UART converter chips/modules, if the correct voltage levels are used (5 V supply, 3.3 V signals).

Technical data

  • The CANgineBerry is equipped with a custom bootloader allowing the installation of one of the firmware packages provided by Embedded Systems Academy. Check our web page for available firmware packages.
  • Two LEDs (green and red) indicate the network connection status.
  • EEPROM to store configuration data.
  • CAN termination configuration by jumper.
  • Classical CAN and CANopen interface; CAN FD is not supported.
  • Based on a Cortex-M0 microcontroller.
CANgineBerry mounted on a Raspberry Pi

The serial protocol between host and CANopenIA is the CANopen remote access protocol by Embedded Systems Academy. It supports reporting events (new data arrived on CANopen side) as well as reading and writing data of the local Object Dictionary.

The CANopen Manager performs automatic network scans, simplifying application code as it can directly access the data scanned.

CANopen Manager implementations also support read and write accesses to Object Dictionary entries of any node connected to the CANopen network. For more information visit our dedicated web page at www.canopenia.com.


Frequently Asked Questions

Which Raspberry Pi models does the CANgineBerry work with?

Any Raspberry Pi with the 40-pin GPIO header: the Raspberry Pi 2 and all later models, including the Pi 4 and Pi 5, plus the Pi Zero family. It uses the 5 V pins and the primary UART on GPIO14/GPIO15. On the Pi 3 and later, disable the onboard Bluetooth and address the module through /dev/serial0 for reliable serial.

Does the CANgineBerry support CAN FD?

No. The CANgineBerry is a classical CAN and CANopen device. CAN FD is not supported.

Which firmware options are available?

A generic minimal CANopen Manager/Controller and a CANopenIA Device, both based on CANopenIA, and a CANcrypt-secured version of the Lawicel protocol (CAN232/SLCAN). A CANopen security anomaly-detection firmware is available soon.

How does the host communicate with the module?

Over a regular UART using the CANopen remote access protocol. The host reads and writes Object Dictionary entries and receives events, while the module runs the CAN protocol on its own 32-bit microcontroller with response times under 10 ms.