Overview
nXPlc is the CAN controller of the nXPico family. Like the other boards it runs neXo’s CODESYS Control runtime on an RP2350A microcontroller, but it targets a different use case: it has no process terminals, and all the work goes through the fieldbus.
It is also the only board in the family that does not share the 40-pin Raspberry Pi Pico footprint: it is a hardware design of its own.
What sets it apart
Section titled “What sets it apart”| nXPico, nXPico W, nXPico M | nXPlc | |
|---|---|---|
| On-board process I/O | 7 inputs, 6 outputs, 3 analog | none |
| Fieldbus | — | CAN, MCP2515 controller |
| Ethernet | — | yes, CODESYS programming included |
| Modbus TCP | — | server and client, see Modbus TCP |
| Serial ports for the application | COM2 and/or COM3 | — |
| Footprint | Raspberry Pi Pico, 40 pins | its own |
An nXPlc application does not read terminals: it opens the bus, talks to the devices on it, and uses the few local channels only for diagnostics and signalling — two supply diagnostics, the indicators and the die temperature, listed in IO Mapping.
Hardware specifications
Section titled “Hardware specifications”| Component | Details |
|---|---|
| MCU | RP2350A |
| Architecture | ARM Cortex-M33 dual-core, 150 MHz |
| CAN controller | MCP2515 over SPI, 8 MHz crystal |
| Ethernet | W5500, factory address 192.168.1.50 |
| Isolation | isolated CAN |
| Power | 24 V on a pluggable terminal block, with undervoltage diagnostics |
| Supercaps | buffer for orderly shutdown |
| Programming | Ethernet, see Ethernet |
The CAN bus
Section titled “The CAN bus”It is not a channel in the I/O map: it is used with the standard CODESYS tools, and the controller driver registers itself at startup. There are two ways: the CANbus and CANopen Manager nodes in the tree (without a license the CANopen stack runs in demo mode), or raw frames from ST with CODESYS’s standard CAA CanL2 library, on which the application builds its own protocol — J1939 or anything else.
Unlike the nXPico M modem, which from ST is currently driven through the AT pipe of its I/O channels (an IEC library for the modem is in development), here there is a real library, with function blocks, transmit and receive queues and bus error handling.
All of it is explained in CAN Bus.
Identification
Section titled “Identification”| Name | nXPlc |
| Vendor | nexo S.r.l. |
| Device ID | 167e 2008 |
| Version | 3.5.20.200 |
The descriptor version is what tells the family’s products apart: .100 nXPico, .101 nXPico W, .111 nXPico M, .200 nXPlc.