top of page
staticfaded.png
staticfaded.png
NicePng_efectos-png_8400629.png

Design

NMEATrax has been thoughtfully designed to make information accessible to all boaters. Each element of our device was selected to keep costs low without compromising on quality.

Overview

To create a successful and unique device, NMEATrax has carefully considered each design choice. To maximize our final product's quality and cost-effectiveness, we selected an ESP32-based design with a 3D-printed enclosure, a custom PCB design, and custom-written firmware.

4c32d3_2cbe0c52abd74ecf8aafe2edfbfb6354_mv2-removebg-preview.png
ESP32.png

ESP32-WROOM-32UE

Components

Our group has designed our device using affordable, reliable, and widely available components. The postage stamp-sized ESP32 meets these criteria and is capable of powering this device. This microprocessor parses incoming data before being transmitted over WiFi to any device connected to our access point to be displayed and recorded on an SD card for review.

NMEA network logic is not natively compatible with transistor-transistor logic (TTL) used by the ESP32. NMEA 2000 is CAN Bus compatible; an MCP2562 CAN Bus transceiver converts the CAN signal into TTL for processing by our ESP32. A Max232 IC converts the RS232 standard communication used by NMEA 0183 to TTL compatible with our device.

Custom PCB

We have designed our PCB with noise, EMF, and our users' experience in mind. The layout is compact and allows easy access to connectors and a wide angle of view for status-indicating LEDs.

Enclosure

A custom 3D-printed enclosure protects our device's circuitry. It utilizes a 2-piece PLA snap-fit design to maintain a small form factor while complimenting our PCB layout to allow easy access to connectors and a wide area of view for LED status indicators. Additional features include impact protection and multiple mounting options.

NMEATrax_Enclosure_2022-Dec-12_09-56-03PM-000_CustomizedView4355319916-PhotoRoom.png

Software

NMEATrax as a system includes decoding information, hosting a wireless access point with a web interface, and a desktop application. To achieve this efficiently, we have utilized several different coding languages. We chose to create our decoding software in C++ due to the availability of libraries and the ease of interfacing with our onboard ESP32. To create a lightweight, functional, and intuitive interface for our device’s web interface HTML, CSS, and JavaScript were used. Additionally, our desktop application was created using C# due to quick development time combined with ease of use.

bottom of page