Blog
Recent Posts
ESP32 NMEA 2000 Sensor Integration: Qwiic I2C Sensors for Marine Applications
Posted by on
The ESP32S3 CAN‑Bus Board with NMEA2000 Connector by Copperhill Technologies is a compact, high-performance development board based on the dual-core ESP32-S3-WROOM-1 microcontroller with integrated Wi-Fi and Bluetooth connectivity. Designed expressly for embedded and marine applications, it includes 8 MB of PSRAM and 8 MB of flash, a USB-C port for power and programming, RGB status LED, BOOT and RESET buttons, and a rugged supply range with reverse-polarity protection. Most importantly for marine electronics developers, it features a built-in CAN transceiver with an industry-standard NMEA 2000 Micro-C connector, allowing the board to plug directly into a vessel’s NMEA 2000 backbone for seamless data exchange with GPS units, engine monitors, and other networked sensors.
In addition to its CAN/NMEA 2000 interface, the board includes a Qwiic (I2C) connector for easy integration of external sensors such as environmental and motion modules without soldering or custom wiring. This makes it an ideal platform for prototyping or deploying custom sensor gateways, data loggers, wireless bridges, or smart instrumentation on boats and other vehicles that use CAN-based networks. Whether you’re capturing environmental data, battery and power metrics, or attitude information from a motion sensor, this board serves as the central hub for gathering sensor data locally and distributing it over NMEA 2000 or forwarding it via Wi-Fi/Bluetooth to dashboards, apps, or cloud services.
Please note that the devices listed below are suggestions only for use with the ESP32S3 CAN-Bus Board with NMEA 2000 connector in marine applications. Copperhill Technologies cannot provide technical support for third-party sensors or devices. We’re always happy to support our own products, but we’re not able to offer engineering or system design services.
We’ll continue to publish blog posts and examples that highlight possible use cases and integrations. That said, this content represents the extent of the engineering guidance we can provide for marine applications.
Qwiic-Compatible I2C Sensors for ESP32 and NMEA 2000 Applications
When designing an ESP32-based NMEA 2000 device, simplicity and reliability matter. The Qwiic ecosystem offers a clean solution: standardized 3.3 V I2C sensors with JST-SH connectors, onboard pull-ups, and no soldering required. This makes Qwiic an excellent match for marine electronics prototypes, demo applications, and even production systems when sensors are mounted locally.
Below is a curated list of Qwiic-compatible sensors that work out of the box with an ESP32 and integrate naturally into NMEA 2000 networks. Each section includes purchasing links and a suggested NMEA 2000 PGN mapping for documentation and firmware design.
Environmental and Weather Sensors
BME280 – Temperature, Humidity, Barometric Pressure
The BME280 is a well-known, low-power environmental sensor and an ideal baseline for marine applications. It works well for cabin climate monitoring and weather trend observation.
Purchase
SparkFun Qwiic BME280 Breakout
https://www.sparkfun.com/products/14348
Typical NMEA 2000 PGNs
-
PGN 130310 – Environmental Parameters
Temperature (air), humidity, barometric pressure -
PGN 130311 – Environmental Parameters (extended, optional)
Use cases
-
Cabin temperature and humidity
-
Weather trend display on MFDs
-
Environmental logging
MS8607 – Temperature, Humidity, Pressure
The MS8607 combines a high-stability pressure sensor with humidity and temperature sensing. It is often favored where pressure accuracy and long-term stability are important.
Purchase
SparkFun Qwiic MS8607
https://www.sparkfun.com/products/16298
Typical NMEA 2000 PGNs
-
PGN 130310 – Environmental Parameters
Pressure, temperature, humidity
Use cases
-
Weather monitoring
-
Barometric trend alarms
-
Environmental data logging
Power and Battery Monitoring
INA219 – Voltage, Current, Power
The INA219 is a simple current and voltage monitor suitable for basic battery or load measurements.
Purchase
SparkFun Qwiic INA219
https://www.sparkfun.com/products/15598
Typical NMEA 2000 PGNs
-
PGN 127508 – Battery Status
Battery voltage, current, temperature (if available)
Use cases
-
House battery monitoring
-
Load current measurement
-
Entry-level power dashboards
INA226 – High-Accuracy Voltage and Current
The INA226 offers higher resolution and accuracy than the INA219 and is better suited for serious marine power monitoring.
Purchase
SparkFun Qwiic INA226
https://www.sparkfun.com/products/17704
Typical NMEA 2000 PGNs
-
PGN 127508 – Battery Status
-
PGN 127506 – DC Detailed Status (if implemented)
Use cases
-
Battery charge/discharge tracking
-
Solar or DC subsystem monitoring
-
Power efficiency analysis
INA260 – Voltage and Current with Integrated Shunt
The INA260 includes an internal precision shunt resistor, simplifying wiring and installation.
Purchase
SparkFun Qwiic INA260
https://www.sparkfun.com/products/18279
Typical NMEA 2000 PGNs
-
PGN 127508 – Battery Status
Use cases
-
Compact battery monitoring solutions
-
Demo and bench testing setups
Analog Sensor Interface
ADS1115 – 16-bit Analog-to-Digital Converter
Many marine sensors are analog by nature: tank level senders, pressure transducers, and NTC temperature probes. The ADS1115 bridges those sensors into the I2C/Qwiic world cleanly.
Purchase
SparkFun Qwiic ADS1115
https://www.sparkfun.com/products/15334
Typical NMEA 2000 PGNs
-
PGN 127505 – Fluid Level
Fuel, water, waste tanks -
PGN 130312 – Temperature
External or fluid temperatures
Use cases
-
Tank level monitoring
-
External temperature probes
-
Pressure transducer interfaces
Motion and Orientation Sensors
BNO055 – Absolute Orientation Sensor
The BNO055 includes onboard sensor fusion, making it one of the easiest ways to obtain pitch, roll, and heading-related data without complex math.
Purchase
SparkFun Qwiic BNO055
https://www.sparkfun.com/products/14662
Typical NMEA 2000 PGNs
-
PGN 127257 – Attitude
Pitch and roll -
PGN 127250 – Vessel Heading (with caution)
Use cases
-
Heel and trim monitoring
-
Motion logging at anchor
-
Stabilization or alert systems
ICM-20948 – 9-DoF IMU
A modern IMU offering accelerometer, gyroscope, and magnetometer data. Sensor fusion is handled in firmware.
Purchase
SparkFun Qwiic ICM-20948
https://www.sparkfun.com/products/15335
Typical NMEA 2000 PGNs
-
PGN 127257 – Attitude
-
PGN 127250 – Vessel Heading (if magnetometer used)
Use cases
-
Advanced motion analysis
-
Sailing performance metrics
-
Custom attitude solutions
Light and Visibility
VEML7700 – Ambient Light Sensor
The VEML7700 measures ambient light levels and is useful for display dimming and day/night awareness.
Purchase
SparkFun Qwiic VEML7700
https://www.sparkfun.com/products/14350
Typical NMEA 2000 PGNs
-
PGN 130310 – Environmental Parameters
Ambient light level (manufacturer-specific field if needed)
Use cases
-
Automatic display dimming
-
Daylight logging
-
Night-mode switching
Digital Inputs and Expansion
MCP23017 – 16-bit GPIO Expander
While not a sensor itself, the MCP23017 is extremely useful in marine systems for reading multiple digital signals.
Purchase
SparkFun Qwiic MCP23017
https://www.sparkfun.com/products/17022
Typical NMEA 2000 PGNs
-
PGN 127501 – Binary Status Report
-
PGN 126983 – Alert Response
-
PGN 126985 – Alert Text
Use cases
-
Bilge switch monitoring
-
Hatch and door sensors
-
Alarm and status inputs
Closing Notes
All sensors listed above operate at 3.3 V, support I2C natively, and connect directly via Qwiic without additional hardware. They are best suited for short cable runs and enclosure-mounted installations, which aligns well with typical marine electronics design practices.
The ESP32 is a powerful and versatile microcontroller, ideal for those venturing into the world of IoT (Internet of Things). While it offers a wealth of capabilities—including Wi-Fi and Bluetooth connectivity, camera support, and sensor interfacing—its initial configuration and integration with external components can be daunting for newcomers. Fortunately, the Arduino Integrated Development Environment (IDE) simplifies programming, code uploading, and access to ESP32’s rich feature set, making it easier for beginners to bring their ideas to life.
This book is designed to guide you through the fundamentals of sensing, networking, data processing, and real-world IoT applications using the ESP32. It begins with the essentials of working with ESP32 and Arduino IDE 2.0, providing step-by-step instructions for setting up your development environment.
You’ll then dive into hands-on projects, learning how to interface various sensors, as well as ESP32-compatible camera and display modules. These practical examples lay the groundwork for understanding more advanced topics, such as IoT networking protocols (e.g., MQTT, HTTP, WebSocket) and their roles in building connected devices.
As you progress, you'll apply your skills to build projects ranging from smart devices to data loggers and automation systems. Through these engaging applications, you’ll develop a solid understanding of how to design, prototype, and deploy your own IoT solutions.
By the end of this book, you’ll be equipped to:
-
Confidently develop and troubleshoot ESP32-based projects
-
Choose appropriate IoT communication protocols for your applications
-
Build and deploy functional IoT systems with real-world relevance
Whether you're a student, hobbyist, or aspiring engineer, this book provides a practical, project-based pathway to mastering the ESP32 and its role in the ever-expanding world of IoT. More information...
Loading... Please wait...
