Low-Cost Do-It-Yourself CAN Bus To WiFi, Bluetooth, BLE, USB, RS485 Gateway Based On Raspberry Pi Zero
In the following, I will discuss a do-it-yourself project utilizing the Raspberry Pi Zero in combination with the CAN Bus Plus RS485 HAT. The combination of serial and wireless ports provided by this system allows the development of a great number of gateway applications. Overall, this small-size hardware includes connections such as CAN Bus, RS485, WiFi, Bluetooth, BLE, and USB. And, on top of all these features, the total costs for the hardware comes to under US$50.
Due to a large number of possible applications, it is difficult to decide where to start, meaning which sample project we should provide. After all, it depends primarily on individual requirements, and I can say that all features of this system are documented in detail and there are more than sufficient programming samples. The "hard" work is connecting the features you need for your project.
The Raspberry Pi Zero is the smallest version of the Raspberry Pi platform; it is half the size compared to the Raspberry Pi 3 Model B/B+.
Such a tiny Raspberry Pi is very affordable for any project that requires less power and high processing speed. Using the RPi Zero, you can build your hobby project for IoT, wearable, embedded and battery powered projects.
There are two micro USB ports, one is for the power supply and the second one is micro USB. By connecting a micro USB hub, you can connect a Keyboard, Mouse, USB Dongle for internet connectivity, or any other USB devices.
The RPi Zero has a single mini HDMI port to connect an external display where you get good quality video at 1080p and 60fps. The Zero features a single mini HDMI port, which is a reduction from the full HDMI port on previous Raspberry Pi devices.
- 1GHz, single-core CPU
- 512MB RAM
- Mini HDMI and USB On-The-Go ports
- Micro USB power
- HAT-compatible 40-pin header
- Composite video and reset headers
- CSI camera connector
The CAN Bus Plus RS485 CAN HAT adds serial networking options to your Raspberry Pi Zero/Zero W/Zero WH/2B/3B/3B+.
The onboard CAN Bus port utilizes the Microchip MCP2515 CAN controller, accessible per SPI interface, in combination with the SN65HVD230 CAN transceiver.
The RS485 port is controlled via the RPi's UART using the SP3485 transceiver.
The combination of CAN Bus and RS485 capabilities supports applications such as connecting a CAN Bus network with a Modbus device or a CAN-to-Modbus gateway. The RS485 port can also be used to monitor (listen-only) SAE J1708 data traffic and convert it to Controller Area Network.
- Raspberry Pi connectivity, compatible with Raspberry Pi Zero/Zero W/Zero WH/2B/3B/3B+
- CAN function, onboard CAN controller MCP2515 via SPI interface, with transceiver SN65HVD230
- RS485 function, controlled via UART, half-duplex communication, with transceiver SP3485
- Reserved control pins, allows to work with other control boards
- Comes with development resources and manual (examples in wiringPi/python)
- Operating voltage: 3.3V
- CAN controller: MCP2515
- CAN transceiver: SN65HVD230
- 485 transceiver: SP3485
- Dimension: 65mm x 30mm
- Mounting hole size: 3.0mm
Getting Started with Bluetooth Low Energy: Tools and Techniques for Low-Power Networking
With Bluetooth Low Energy (BLE), smart devices are about to become even smarter. This useful guide shows how this exciting wireless technology helps developers build mobile apps that share data with external hardware, and how hardware engineers can obtain reliable and straightforward access to mobile operating systems.
This book presents a compact, high-level overview of how devices use BLE to communicate with each other. You learn valuable low-cost tools for developing and testing BLE-enabled mobile apps and embedded firmware and get examples using multiple development platforms—including iOS and Android for app developers and embedded platforms for product designers and hardware engineers.
- Understand how data is organized and transferred by BLE devices
- Explore BLE’s concepts, key limitations, and network topology
- Dig into the protocol stack to grasp how and why BLE operates
- Learn how BLE devices discover each other and establish secure connections
- Set up the tools and infrastructure for BLE application development
- Get examples for connecting BLE to iPhones, iPads, Android devices, and sensors
- Develop code for a simple device that transmits heart rate data to a mobile device