This post is a follow-up on NMEA 2000 Data Scanner with Bluetooth, BLE for Android, iOS, PC Applications. In this new post, I also include SAE J1939, since NMEA 2000 is based on J1939.
Also, in this particular case, instead of the NMEA2000-compatible 5-pin M12 connector, I used a DSUB9 as it applies to the CAN Bus and SAE J1939. Nevertheless, the functionality is the same between the J1939 and N2K version.
In the above-mentioned post, I described the Bluetooth connection between the Copperhill JCOM gateway and a Windows PC. However, BLE is a requirement for communication with Apple's iOS. The testing environment is, of course, different, i.e., we are using an iMac, and an iPhone in combination with the BT Terminal app.
We are using an ASCII protocol to transmit the CAN data frames. The module receives the CAN Bus data frames and processes it to provide readable information such as:
- Data Page
- Destination Address
- Source Address
- DLC (Data Length Code)
Under Bluetooth, all of the above listed data fits into one ASCII String. BLE, however, supports only 20 bytes per wireless data frame. Thus, we are using 2 BLE message frames:
Data Frame 1: Total Length = 13 bytes
Byte Length Description
0 1 Data Page (DP) = 0/1
1…4 4 PGN
5 1 Priority
6…7 2 Destination Address (DA)
8…9 2 Source Address (SA)
10 1 DLC = Data Length Code
11…12 2 Checksum
Data Frame 2: Total Length = 18 bytes
Byte Length Description
0…15 16 0…8 data bytes; unused data = 0x00
16…17 2 Checksum
Proof of Concept
On the iMac, I use the BT Terminal app:
I connect to the JCOM-BLE-1001 device:
I click on the "Write" arrow to see the data received. In the JCOM1939Monitor software, I first initiate an address claim (first message as shown below, PGN 0xEE00, source address = 0x80), then I transmit three different PGNs (0xFF00, 0xFF08, 0xFF0D):
Status and Availability
Officially, both modules, NMEA 2000 and SAE J1939, are still under development, and we target a release in October 2022. We consider the software development as finished regarding the mere data scanning capabilities, but we are considering, among others, the implementation of PGN filters to reduce the wireless data traffic.
Please feel free to contact us in case you need further information. We are also available to develop customized hardware and software to meet your requirements.
With Bluetooth Low Energy (BLE), smart devices are about to become even smarter. This useful guide shows how this impressive wireless technology helps developers create mobile applications that share data with external hardware and how hardware engineers can obtain easy and reliable access to mobile operating systems.
This book renders a reliable, high-level overview of how devices use BLE to communicate with each other. You learn about valuable low-cost tools for developing and testing BLE-enabled mobile apps and embedded firmware and get examples using various 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
Our N2K-BT gateway functions as a NMEA 2000 to Bluetooth data scanner for any host device with a Bluetooth or BLE (Bluetooth Low Energy) port, such as PCs, phones, or tablets. Therefore, it supports operating systems such as Windows, Linux, iOS, Android, and more. In addition, the wireless communication protocol employs easy-to-read and easy-to-process ASCII [...]
The ESP32 processor allows the integration of Wi-Fi, Bluetooth, and Bluetooth LE (BLE) for a wide range of IoT (Internet of Things) applications. Using Wi-Fi ensures connectivity within a large radius. At the same time, Bluetooth allows the user to easily detect (with low-energy beacons) a module and connect it to an Android/iOS smartphone or [...]
The following is a follow-up on our post Controller Area Network (CAN), SAE J1939, NMEA 2000 Wireless Module for IoT and ELD Applications. The CAN Bus, SAE J1939 and NMEA 2000 to Bluetooth Gateway is the first product of a new series of wireless gateways for IoT (Internet of Things), ELD (Electronic Logging Devices), and other applications. At the [...]
Due to the global shortage of electronic components, we at Copperhill Technologies began rethinking our strategy regarding new developments. Luckily, that change turned out to be a blessing in disguise because the transition from NXP LPC to the ESP32 processor opened the door to more industrial and automotive applications, especially those involving wireless transmissions for [...]
Kontron announced the release of their Pi-Tron CM4 computer with Linux OS, which utilizes the fourth-generation Raspberry Pi compute module with the 1,5-GHz, 64-bit Broadcom BCM2711 chip and four Arm Cortex-A72 processors. The computer’s steel housing allows for universal use, e.g., for automation and IoT (Internet of Things) applications. Depending on the variant, it provides a 1-GiB, 2-GB, [...]
The integration of Wi-Fi, Bluetooth, and Bluetooth LE allow a wide range of applications with ESP32 modules. Using Wi-Fi ensures connectivity within a large radius, while using Bluetooth allows the user to easily detect (with low-energy beacons) a module and connect it to a smartphone. The chips add priceless functionality and versatility to your applications [...]
Arduino Portenta H7 - Dual-Core STM32 Processor Board with Two CAN FD Ports and Support for Arduino IoT Cloud
The Portenta H7's central processor is represented by the dual-core STM32H747, including a Cortex M7 at 480 MHz and a Cortex M4 at 240 MHz. The two cores intercommunicate through a Remote Procedure Call mechanism that seamlessly enables calling functions on the other processor. Both processors share on-chip peripherals and can run Arduino Sketches on the Arm [...]
This post will demonstrate how to add a CAN Bus port to the ESP32-WROOM32 development board, i.e., regarding hardware and software. Download this post as PDF... As a matter of fact, we already offer a hardware utilizing the ESP32 processor and an onboard CAN Bus transceiver as shown in the image to the left. The ESP32 WiFi, Bluetooth [...]
The ESP32 represents a low-cost, low-power System-on-Chip (SoC) microcontroller with integrated Wi-Fi and dual-mode Bluetooth. The ESP32 series utilizes either a Tensilica Xtensa LX6 microprocessor in dual-core and single-core variations, Xtensa LX7 dual-core microprocessor, or a single-core RISC-V microprocessor and includes built-in antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power management [...]