SK Pang electronics RSP-PICAN-M CAN-Bus Micro-C Connector User Guide
- June 13, 2024
- SK Pang electronics
Table of Contents
SK Pang electronics RSP-PICAN-M CAN-Bus Micro-C Connector
Important Information
Product name PiCAN-M with NMEA 0183 and NMEA 2000 Connection
Model number RSP-PICAN-M
Manufacturer SK Pang Electronics Ltd
Introduction
This is a PiCAN-M with NMEA 0183 and NMEA 2000 Connection. The NMEA 0183 (RS422) is via a 5 way screw terminal. The NMEA 2000 is via Micro-C connector.
Extra sensors can be connected via the Qwiic (I2C) connector.
Optional 3A SMPS. The 12v from the NMEA 2000 network can be use to power the PiCAN-M and the Raspberry Pi.
Easy to install SocketCAN driver. Programming can be done in C or Python.
Features
- CAN connection via Micro-C connector
- 120Ω terminator ready
- SocketCAN driver
- appears as can0 to application
- NMEA 0183 (RS422) via 5-way screw terminal
- appears as ttyS0 to application
- LED indicator (GPIO22)
- Qwiic (I2C) connector for extra sensors
- Optional 3A SMPS.
- Compatible with OpenCPN and Signal K
Hardware Installation
Before installing the board make sure the Raspberry is switched off. Carefully align the 40 way connector on top of the Pi. Use spacer and screw (optional items) to secure the board.
NMEA 2000 CAN-BUS Connection
The CAN-bus connections are made via J1 a 5 pin Micro-C connector.
J1 | Function |
---|---|
1 | Shield |
2 | +12v |
3 | GND |
4 | CAN_H |
5 | CAN_L |
NMEA 0183 (RS422) Connection
The NNEA 0183 (RS422) connection are made via J3 a 5way screw terminal.
J3 | Function |
---|---|
1 | GND |
2 | IN + |
3 | IN – |
4 | OUT – |
5 | OUT + |
120Ω Terminator
There is a 120Ω resistor fitted to the board. To use the terminator solder a 2way header pin to JP1 then insert a jumper.
LED
There is a red LED fitted to the board. This is connected to GPIO 22.
Switch Mode Power Supply (optional)
This is an optional 5v 3A module that can power the Pi. It has an input voltage range of 7v to 24v.
Qwiic (I2C) Connector J4
J4 is a Qwiic (I2C) connector. The I2C bus can be use for extra sensors.
Software Installation
If you want a simple installation of OpenPlotter / Signal K then use a pre- configure SD image instead.
Download the 2023-08-04-OpenPlotter-v3-Starting-stable-64bit.img from: https://cloud.openmarine.net/s/mxrBi5K7zRj2gDq
Download and install Raspberry Pi Imager. https://www.raspberrypi.org/software/
Put a SD card in a reader and start Raspberry Pi Imager.
Click Choose OS.
Then click Use custom.
Select the zip file you have just downloaded and click CHOOSE SD CARD. Select your SD card and click WRITE.
Once the SD card write has finished remove it from your PC and insert into the Raspberry Pi and power up.
The first boot will take some time. You should then see a screen like this:
Start a Terminal and type in:
sudo apt-get update
sudo apt-get upgrade
sudo reboot
Next we need to add entries to config.txt
Start a new terminal and add the overlays by:
sudo nano /boot/config.txt
Add these lines to the end of file:
enable_uart=1
dtparam=i2c_arm=on
dtparam=spi=on
dtoverlay=mcp2515-can0,oscillator=16000000,interrupt=25
Press CTRL-x to save and exit.
Next we need to configure the UART by starting Raspberry Pi Coniguration:
Click Interfaces tab and slide Serial Console: to off
Click OK and reboot the Pi.
Installing CAN Utils
Start a new terminal and install the CAN utils by:
sudo apt-get install can-utils
Bring Up the Interface
You can now bring the CAN interface up with CAN 2.0B at 250kbps:
sudo /sbin/ip link set can0 up type can bitrate 250000
Connect a NMEA 2000 device to the network and start candump.
candump can0
You should see something like this:
This capture is from a Yacht Devices Digital Thermometer NMEA 2000 YDTC-13N
To automatically bring up can0 at boot up we need to edit the interface by typing in:
sudo nano /etc/network/interfaces
Add these lines to the end of file:
auto can0
iface can0 inet manual
pre-up /sbin/ip link set can0 type can bitrate 250000
up /sbin/ifconfig can0 up
down /sbin/ifconfig can0 down
Press CTRL-x to save then exit. Reboot Pi.
Starting OpenPlotter
Once the Raspberry Pi has booted up you should see a screen like this:
Configure GPS NMEA 0183 (RS422)
The NMEA 01832 (RS422) is connect to the Pi on UART port. This need to be enable first. Connect a NMEA 0183 GPS device to the 5 way green terminal plug like shown below:
On the Pi click OpenPlotter, Serial:
- Select ttyS0
- Enter gps as alias
- Select NMEA 0183 as data
- Click Apply
Wait until the changes has been applied. Then click Connections tab:
- Select Connections
- Click Add to Signal K
- Select Baud Rate
- Click AUTO.
Wait until Signal K saver restart and it should look like this:
Now start OpenCPN:
- Start OpenCPN
- Click Options
- Click Connections
- Click Add Connections
Next configure the new connections:
- Select Serial
- Select ttyS0
- Click Apply
This will take you back to the main Options dialogue box:
- Click check box to bring up debug window
- This will show the raw gps data received
- Click check box again to remove debug window
- Click Apply
Sometimes this does not work. If this is the case close OpenCPN go back to the Serial dialogue box:
- Select ttyS0
- Click Remove
The close the Serial dialogue box and open it again. You should see:
Start OpenCPN again, you should then see:
- GPS lock
- Click Dashboard
Configure I2C for BME280 Sensor
The Sparkfun BME280 sensor can provide barometric pressure, humidity, and temperature to the Raspberry Pi.
Now we need to install driver:
- Click OpenPlotter
- Click Settings
Now install the I2C Sensors:
- Click Refresh
- Select I2C Sensors
- Click Install, then yes. Wait until install is finished.
Now start the I2C dialogue box:
-
Click Approve. This will bring up Signal K.
-
Type in admin
-
Type in 1234
-
Click Enable
On the Signal K webpage:
- Click and select OpenPlotter I2C.
- Type in NEVER.
- Select Read/Write.
- Click Approve.
Now configure the BME280 sensor:
- Click Add
- Select BME280
- Select 0x77
- Click OK
Now we need to add the missing temperature reading:
- Select temperature
- Click Edit
- Click Edit
Now add the temperature key:
- Select environment
- Select inside.temperature
- Click OK
- Click OK
Now open Signal K Dashboards:
Now open Instrument Panel:
- Select Instrument Panel
- Click Open
In Signal K open Customise Display (spanner symbol) :
- Click Spanner
Now configure the signals:
- Click Show on grid
- Click Edit
- Select unit to suit
- Click Done. Repeat for all 3 readings
- Click eye symbol
Now you should see all 3 readings on the panel:
Configure NEMA 2000
We will a wind speed sensor and a temperature sensor from Yacht Devices Digital Thermometer NMEA 2000 YDTC-13N.
- Click OpenPlotter
- Click CAN Bus
Now configure CAN bus:
- Click MCP2515
- Select SPI0 CE0
- Click Add Connection
Wait for Signal K to restart.
Check CAN-bus traffic:
- Select SPI0 CE0
- Click Check device traffic
- Check there are CAN-bus traffic
If you see CAN-bus traffic that means the board has been confiture correctly.
Close candump.
Open Signal K Instrument Panel and you should see the NMEA 2000 devices. Configure the units as required.
Customer Support
SK Pang Electronics Ltd Ó 2023
www.skpang.co.uk