Running RealDash Locally on Raspberry Pi – Any Direct Communication Options?

Hi everyone,

I am working on a setup for an older car. I am planning to use the Raspberry Pi to collect sensor data directly from the car’s analog sensors (e.g., RPM signal, temperature sensors, fuel level, voltage, etc.). Since the Raspberry Pi lacks built-in analog-to-digital conversion (ADC), I will use an ADC module to convert these analog signals into digital data for processing.

I will develop a custom program to handle all input and output, ensuring the Raspberry Pi can process sensor data.

I recently installed RealDash on my Raspberry Pi, hoping to use it as a direct interface between the application and the hardware on the Pi. My goal was to have RealDash communicate with the Raspberry Pi.

From what I can see in the interface selection menu, there is no direct way for RealDash to communicate locally with the Raspberry Pi via another method, such as direct GPIO access. It seems like all connections require an external adapter or network interface.

If anyone has successfully made RealDash communicate with a fully local setup on a Raspberry Pi, I’d love to hear how you did it!

Thanks! :red_car::dash:

True. We do support RPi GPIO, but not for communication. There is a feature request for I2C support, but we just have had no time to implement it.

One feasible local communication would be localhost socket connection.

Thanks for the response! :blush: A localhost socket connection sounds like a cool solution.

The approach would be to configure the RealDash connection as a RealDash CAN over WiFi, using 127.0.0.1:35000. Then, create a local socket server that communicates on port 35000 and sends data in the following format:

I’ll give this a try and see how it performs! :rocket:

1 Like

Im trying to do kinda the same, but where most of my values come from CAN, but wideband and gas level needes to get analog in on the PI. How did the custum RealDash CAN work out? Is it worth to look into as a solution? Or better to have a ESP32 to send data another way?

1 Like

I am using dotnet and C# and sending CanBusData with the use of SocketCANSharp.Network.RawCanSocket

To set up a Controller Area Network (CAN) bus on a Raspberry Pi and send messages using Python or .NET (C#), follow these steps:

  1. Install Necessary Tools and Libraries. Install can-utils: This package provides utilities like candump and cansend for interacting with CAN networks. Install it to facilitate CAN communication.​

    sudo apt-get update
    sudo apt-get upgrade
    sudo apt-get install can-utils

  2. Set Up a Virtual CAN Interface (vcan0): Load the vcan Kernel Module: The vcan module allows for the creation of virtual CAN interfaces, useful for testing and development without physical CAN hardware.​

    sudo modprobe vcan

  3. Create the vcan0 Interface: Establish a virtual CAN interface named vcan0 to simulate CAN network behavior.​

    sudo ip link add dev vcan0 type vcan

  4. Bring Up the vcan0 Interface: Activate the vcan0 interface to start using it for CAN communication.​

    sudo ip link set up vcan0

  5. Verify the vcan0 Interface: To confirm that the virtual CAN interface is active, display its status. You should see that vcan0 is listed and its state is “UP”.

    ip link show vcan0

  6. Monitor CAN Traffic: To observe the CAN messages being sent, open a new terminal window and run:​

    candump vcan0

  7. You have to setup and load the vcan Kernel Module at Boot

When it comes to converting analog signals into a format that the Raspberry Pi can process, I haven’t fully implemented the solution yet. However, my plan is to use an ADC HAT for this task—specifically, the Waveshare High-Precision AD HAT featuring the ADS1263 chip (10-channel, 32-bit ADC) https://www.waveshare.com/wiki/High-Precision_AD_HAT. Currently, I am in the process of developing a suitable driver for it. An alternative is the ADS1115, which offers better compatibility and broader software support. While it has lower resolution compared to the ADS1263, its ease of integration with the Raspberry Pi makes it a more accessible option.

2 Likes