CAN Bus Data Logging Device With Bluetooth - From Prototype To Finished Product
An important part of our business at Copperhill Technologies is providing custom engineering services and consulting, primarily for Controller Area Network (CAN) and SAE J1939 technologies. Our strengths, skills, and passions include embedded hardware and software development, rapid prototyping, and manufacturing support. We guide our customers through the entire project cycle from development to finished product and beyond.
One of our newest projects is the development of an embedded solution to monitor (and possibly store) CAN messages (PGNs) from diesel trucks supporting an SAE J1939 network. The idea behind this device is to support the Electronic Logging Device (ELD) Rule/Mandate as enforced by the Federal Motor Carrier Safety Administration (FMCSA).
An electronic logging device (ELD) is electronic hardware that is attached to a commercial motor vehicle engine to record driving hours. The driving hours of commercial drivers (truck and bus drivers) are regulated by a set of rules known as the hours of service (HOS).
The requirements for our embedded solution were:
- Logging and storing those J1939 PGNs needed to support the ELD Rule, which requires a CAN Bus interface and mass storage such as an SD card.
- A Bluetooth connection to an Android phablet (phone & tablet), where the phablet receives (and possibly requests) and processes the J1939 data to provide reports per display, SMS, or e-mail.
- An optional GPS sensor in case the J1939 network cannot provide vehicle position information.
- On-site firmware update per serial port.
- Support for an extended input power range, suitable for diesel truck operation, where battery power may vary within a great range.
- Even though not required by the ELD Rule, but nevertheless desired to cover all eventualities, the device should support an extended temperature range.
We accomplished all these requirements by using our jBoard-X2 - Industrial CAN Bus / SAE J1939 Prototyping Board and adding a GPS sensor and a Bluetooth module.
The photo to the left shows the very first prototype with added GPS Sensor (yellow module) and Bluetooth device (red module). Both, GPS and Bluetooth modules, use on-board antennas, but they can be replaced with external antennas if necessary.
And while the board was originally developed for SAE J1939, it is very well capable to handle OBD-II (e.g. the DB9 CAN connection can be configured to support both protocols in combination with our J1939 and OBD-II cables).
The configuration, as shown in the image, allowed us to prove the concept within shortest time and create the first production-suitable prototype as shown in the image on the top of this page.
Besides the current customer project, we can modify the device's firmware according to any application needs. We build applications through access to a vast software library that allows us to deliver fully functional prototypes within shortest time.
Note: During the initial development process, i.e. the concept phase, we did consider using the Raspberry Pi platform, because it is a great prototyping resource. We found, however, that the final costs would end up to be similar to our own embedded solution (if not higher) but with some serious downsides. From a technical standpoint there would be the challenge of making the device vibration-safe (consider, for example, a slipping SD card), plus the RPi concept would require at least another external board supporting CAN and GPS.
The most important obstacle was, however, the commercial aspect. After all, we would have to deal with more external vendors, which does not contribute to the overall manufacturing reliability and quality. Especially in the case of the RPi 3 itself, we have learned to carefully inspect each delivery we receive.
We serve our customers by offering manufacturing options, i.e. either we manufacture or enable the customer to take control of their own manufacturing process by providing all necessary production resources such as bill of material, Eagle files, Gerber files, placement files, schematics, firmware source code, etc.
For more information, please feel free to contact us through our Contact Us page.