Skip to the content
PCBKitNew board
2 layers66.4 × 28.1 mmCanPressure, the printed circuit board in 3D

CanPressure

ieb/CanPressure

NMEA2000 Sensor based on ATTiny3224 for Pressure, Temperature, Humidity

Size
66.4 × 28.1 mm
Copper layers
2
Thickness
1.6 mm
Parts
18
Nets
20
Pads
79
Tracks, vias
185, 14
Pours
6
Routed
Yes
KiCad
KiCad 4
Created
10 Jul 2022
Updated
13 Jul 2026

Overview

CanPressure is an open-source printed circuit board by ieb, from the ieb/CanPressure repository on GitHub. It is a 2-layer board of 66.4 × 28.1 mm with 18 parts on 20 nets, routed with 185 tracks and 14 vias.

It is built around the ATTINY3224-SSU, BMP280 and MCP2515-I, with the TJA1050 among its other parts. Its parts include 8 capacitors, 5 ICs, 2 resistors, 2 connectors and 1 crystal. It belongs with the AVR (ATmega, ATtiny) boards of this library.

Main components

4

README

README.md

Can Pressure sender

  • Emits PGN 130310L Outside Environmental parameters and 130311L Environmental parameters with temperature, pressure, humidity from a BME280 sensor.
  • Draws about 10-15mA. Uses a Attiny3224, MCP2551 CAN using an 8MHz crystal, and TJ1050.
  • Attiny runs at 16MHz, but could almost certainly run slower for lower power consumption.
  • PCB in pcb/ measures 66mmx27mm and is powered by 12v from NMEA2000 bus, 5V via a AMS1117, BMP280 module has its own 622K 3v regulator and level shifters.
  • Needs a UDPI Programmer (I am using a UNO based programmer)
  • Header for TTL Serial debugging using single character command line input.

Note, if the MCP Crystal does not match the code, when the device is plugged in it will address claim at the wrong bus frequency causing all other devices on the bus to start to fail. Check before programming that the device is running with an 8MHz MCP crystal. Change the code if using a 16MHz crystal.

Pins and Layout

text
-------------------------------------------
|             a b c d e                   |
| A                             AMS1117   |
| B  TJ1050                               |
| C                   ATTiny              |
| D        MCP2551    3224       BME280   |
|                                         |
-------------------------------------------

Debug and Programming Header
a GND
b 5V
c UDPI
d RX
e TX

NMEA2000 Interface
A 12V
B GND
C CanL
D CanH

Command line on TTL

text
Battery Monitor - key presses
    - 'h' or '?' to show this message
    - 's' show status
    - 'd' toggle diagnostics
    - 'r' read sensor
    - 'S' setup
    - 'R' reset
    - 'F' factory reset
  • R will cause the Attiny to reboot.
  • S enters setup allowing some EEPROM parameters to be set
  • F resets the EEPROM to the Factory settings
  • r reads the sensors and dumps to serial.
  • d toggles disagnostic output which includes CAN Frame data
  • s reports current status including packet counts, MCP Voltage and temperature.

Developing

  • Uses PlatformIO in VSCode
  • Before flashing for the first time set the fuses to ensure that the chip has the correct clock. pio run -t fuses
  • To build pio run -t upload

Parts

18
QtyValueFootprintReferences
3100nFCapacitors_SMD:C_0805C104, C105, C201
310uFCapacitors_SMD:C_0805C103, C106, C206
222pFResistors_SMD:R_0603_HandSolderingC101, C102
110KResistors_SMD:R_0805_HandSolderingR101
1270RResistors_SMD:R_0805_HandSolderingR102
18MHzCrystals:Resonator-2pin_w10.0mm_h5.0mmX101
1ATTINY3224-SSHousings_SOIC:SOIC-14_3.9x8.7mm_Pitch1.27mmIC101
1BMP280Divers:BMP280U105
1CANConnect:bornier4P103
1CONN_5Pin_Headers:Pin_Header_Straight_1x05P102
1MCP2515Housings_SOIC:SOIC-18W_7.5x11.6mm_Pitch1.27mmU101
1NCP1117ST50T3GTO_SOT_Packages_SMD:SOT-223-3Lead_TabPin2U103
1TJA1050Housings_SOIC:SOIC-8_3.9x4.9mm_Pitch1.27mmU102

Questions

How big is the CanPressure PCB?

It measures 66.4 × 28.1 mm and has 2 copper layers, 1.6 mm thick.

What parts does the CanPressure use?

18 parts, built around the ATTINY3224-SSU, BMP280, MCP2515-I and TJA1050. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the CanPressure KiCad files?

From the ieb/CanPressure repository on GitHub, at the commit this page was made from: the board is pcb/CanPressure.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the CanPressure design in my own project?

Its repository states no licence, so its author keeps all rights: ask ieb before reusing the design.

Similar boards

  • 2 layers89.2 × 38.3 mmCanGNSS, the printed circuit board in 3D

    CanGNSS

    ieb/CanGNSS

    NMEA2000 GNSS device using Neo M8N receiver and attiny3224 MCU.

    22 parts
  • 2 layers87.3 × 28.3 mmNMEA2000Shunt, the printed circuit board in 3D

    NMEA2000Shunt

    ieb/NMEA2000Shunt

    NMEA2000 Shunt for measuring current, voltage, temperature based on a INA219.

    26 parts
  • 2 layers106.7 × 61.6 mmPiCanBoard, the printed circuit board in 3D

    PiCanBoard

    ieb/EngineManagement

    Replacement engine electronics for a Volvo Penta D2-40 and other MDI based engines.

    48 parts1
  • 2 layers80.5 × 84.5 mmCapsule2026(1), the printed circuit board in 3D

    Capsule2026(1)

    Tanekon/Circuit_contest2026

    For 『Tanegashima Rocket Contest』

    13 parts
  • 2 layers56.7 × 25.4 mmBatteryMonitorATTiny3224, the printed circuit board in 3D

    BatteryMonitorATTiny3224

    ieb/BatterySensor

    A Modbus RTU Battery Current and Voltage sensor board based Attiny3224, MAX485, MAX9918 chips.

    24 parts1
  • 2 layers21.1 × 19.6 mmSoic14-bb, the printed circuit board in 3D

    Soic14-bb

    jaco-pixeldump/attiny-soic-14-barebone-breakout-board

    A compact, breadboard-friendly breakout adapter PCB for 14-pin SOIC Microchip ATtiny microcontrollers (such as ATtiny3224, ATtiny1624, ATtiny824, ATtiny424, as well as 1-series and 0-series parts like ATtiny1614…

    5 parts1MIT
  • 2 layers79 × 80 mmDiy esc, the printed circuit board in 3D

    Diy esc

    Siddharth2308/esc

    79 parts1