A reference design providing all that you need to get your NMEA2000 project going quickly & economically
NMEA2000 Protocol Stack Kit
Warwick Control provide a protocol stack for the marine industry specialist CAN protocol NMEA 2000. This incorporates the NMEA Fast Packets Protocol to handle the fast packet messages as required by the standard.
The NMEA2000 protocol stack can be provided as a reference design in the NMEA2000 Protocol Stack Kit. The overall aim for this kit is that it is ideal for customers wishing to port the stack onto their own target hardware and they can use the STM32 as a reference design to help them. Alternatively, you can use the example provided as the starting point for your ECU design if you are planning on using a STM32 microcontroller.
The protocol stack also comes with a PC based CAN driver for the Kvaser interface which we refer to as the Kvaser Hardware Abstraction Layer (HAL). The advantage of the Kvaser HAL is that the protocol stack can be built in a PC environment using the free Microsoft Visual Studio C compiler and run on a PC. This is particularly useful when a customer does not have target hardware available or the hardware is not ready. The stack can communicate with Warwick Control’s protocol analyser software X-Analyser (see www.x-analyser.com) either via a real CAN bus using a Kvaser CAN interface or a simulated CAN bus using virtual CAN drivers.
Scope of delivery:
- NMEA2000 Protocol Stack (C Source Code)
- STM32 development board with example application
- Reference design CAN driver for STM32
- Protocol stack CAN driver for Kvaser interface
- X-Analyser CAN/NMEA2000 Analyser & Kvaser CAN Interface
- Documentation and Examples
- 90-days email support
- Site or project license for stack with no further royalties
Note: to re-compile example, the Keil uVision IDE will be needed (not supplied)
- Will help increase the likelihood of your device passing the NMEA device certification process
- Similar CAN driver or Hardware Abstraction Layer (HAL) as the CANopen and SAE J1939 stacks
- One-time license fee which is subsequently royalty free
- Many microcontrollers supported
- Stack is very configurable so can be tailored for small and large targets
- Kvaser CAN API is supported so Kvaser CAN hardware for PCs and embedded PCs are supported
- Simulation of the stack is possible on a PC with a virtual CAN driver meaning that NMEA2000 application software can be developed before target hardware is available
- You can run the development on the PC without the target hardware or a CAN interface using a virtual CAN channel on our CAN/J1939 analyser software X-Analyser.
- After the initial license fee, there are no further royalties
- 90 days email support is included in the purchase
Other CAN Driver Support
The Protocol Stack interfaces with the target hardware through what is called the Hardware Abstraction Layer (HAL). The HAL API uses the Kvaser CAN interface API and is the similar for CANopen, J1939 and NMEA2000 Protocol Stacks provided by Warwick Control. This means it is also good for products needing to provide a gateway between these protocols or for products needing to support more than one of these protocols. It contains just 15 functions for talking to the CAN controller. However, depending upon the sophistication of your requirements, it is possible that only 5 functions need to be implemented.
HALs have been written by Warwick Control for many hardware targets and CAN controllers which include:
- SocketCAN for Linux
- CMSIS for Cortex M cores (e.g. STM32)
- Renesas M16c, uC and
- Kvaser CAN interfaces – USB, PCI, PCI-X, Ethernet, Wi-Fi interfaces
HALs can be custom developed by Warwick Control. Contact Warwick Control with details of the Microcontroller and C compiler that you want to use.