Skip to the content
PCBKitNew board
2 layersTankSync tx, the printed circuit board in 3D

Solar-powered transmitter PCB for TankSync wireless tank monitoring system — ESP32-C3 + LoRa + ultrasonic sensor, KiCad 10.0

Copper layers
2
Thickness
1.6 mm
Parts
38
Nets
34
Pads
116
Tracks, vias
459, 99
Pours
1
Routed
Yes
KiCad
KiCad 10.0 (file 20260206)
Created
2 Oct 2026
Updated
2 Oct 2026

Overview

TankSync tx is an open-source printed circuit board by gargsrishtii, from the gargsrishtii/TankSync-tx repository on GitHub. It is a 2-layer board with 38 parts on 34 nets, routed with 459 tracks and 99 vias.

It is built around the INA219AID, MT3608 and CN3791, with the AO3401CI-ES, AO3400 and WS2812B among its other parts. Its parts include 12 capacitors, 11 resistors, 6 ICs, 3 transistors and 2 diodes. It belongs with the power and radio and wireless boards and the ESP32 and RISC-V boards of this library.

Main components

6

README

README.md

TankSync TX — PCB Design

2-layer solar-powered transmitter board for the TankSync wireless tank monitoring system. Built around the ESP32-C3 SuperMini, RYLR998 LoRa module, and AJ-SR04M ultrasonic sensor. Designed in KiCad 10.0.


Overview

TankSync TX is the transmitter-side PCB of a LoRa-based wireless tank level monitoring system. It measures tank water level using an ultrasonic sensor, monitors battery/solar power via a current sensor, and transmits data wirelessly over 868/915 MHz LoRa to the RX board.

Key features:

  • ESP32-C3 SuperMini as the main controller (compact, Wi-Fi + BLE)
  • RYLR998 LoRa UART module for long-range wireless communication
  • AJ-SR04M waterproof ultrasonic sensor for tank level measurement
  • CN3791 MPPT solar charging module for solar panel input
  • MT3608 DC-DC boost converter for regulated power supply
  • INA219 current/power sensor module for battery monitoring
  • WS2812B addressable RGB LED for status indication
  • AO3400/AO3401 MOSFETs for power switching
  • 1N5819 Schottky diode for reverse polarity protection
  • Push button (SW_PUSH_6mm) for manual control
  • JST XH connectors for battery and solar panel
  • GND copper pour on both layers
  • 34 routed nets, 0 unconnected pads

Board Specifications

ParameterValue
Board size2-layer KiCad 10.0 design
PCB thickness1.6 mm
Layers2 (F.Cu + B.Cu)
Design toolKiCad 10.0
Total components38 footprints
Nets34
Unconnected pads0
DRC violations7 warnings (all overridden — see notes)
GerbersExported and verified

DRC Notes

The DRC report shows 7 warnings, 0 errors, 0 unconnected pads. All violations are local overrides (non-critical):

WarningLocationNotes
Isolated copper fillB.Cu GND zoneCosmetic only — GND pour island, no electrical impact
Silkscreen clipped by solder mask (×5)U2 (RYLR998)Castellated module silkscreen overlaps pads — acceptable for this package type
Footprint/symbol value mismatchC1C1 footprint says "C1" but symbol value is "100nF" — cosmetic, no functional impact

These warnings do not affect fabrication or functionality.


Schematic

See /schematic/ folder for schematic export.

Key design decisions:

  • LORA_RXD / LORA_TXD routed from ESP32-C3 UART to RYLR998 RXD/TXD pins
  • AJ-SR04M ultrasonic sensor connected via TRIG/ECHO GPIO lines
  • INA219 current sensor on I2C bus (SCL/SDA) for battery monitoring
  • CN3791 MPPT module handles solar panel charging with MPPT algorithm
  • MT3608 boost converter steps up battery voltage to regulated supply rail
  • Q4, Q5 (AO3401CI-ES) P-channel MOSFETs for load switching
  • Q3 (AO3400) N-channel MOSFET for signal switching
  • 1N5819 Schottky diode (D1) for reverse polarity protection on power input
  • WS2812B (D2) status LED with 470Ω series resistor (R8)
  • 100nF decoupling caps on all module power pins

Bill of Materials

RefValue / PartPackageDescription
U1ESP32-C3 SuperMiniModule THTMain controller — Wi-Fi + BLE
U2RYLR998Castellated 5-pin SMD868/915MHz LoRa UART module
U4CN3791 MPPT ModuleModuleSolar MPPT charging controller
U5MT3608ModuleDC-DC boost converter 2A
U6INA219ModuleI2C current/power sensor
U7AJ-SR04MModuleWaterproof ultrasonic distance sensor
D11N5819DO-41 THTSchottky diode, reverse polarity protection
D2WS2812BPLCC4 5×5mm SMDAddressable RGB status LED
Q3AO3400SOT-23 SMDN-channel MOSFET
Q4, Q5AO3401CI-ESSOT-23 SMDP-channel MOSFET, load switching
C1100µFRadial THT D6.3mmBulk decoupling
C2,C3,C4,C5,C6,C7,C9,C10100nFDisc THTModule pin decoupling
C8, C11, C1210µFRadial THT D5.0mmPower rail filtering
R1, R2, R7100KΩAxial THTPull-up/pull-down resistors
R3, R4, R5, R61KΩAxial THTSignal resistors
R8470ΩAxial THTWS2812B data line resistor
R910KΩAxial THTPull-up resistor
R10, R114.7KΩAxial THTI2C pull-up resistors (INA219 SDA/SCL)
J1Battery ConnectorJST XH 2-pinBattery input
J2Solar ConnectorJST XH 2-pinSolar panel input
SW1SW_SPSTPin header 2-pinPower switch
B1Push buttonSW_PUSH_6mm THTManual control button

Repository Structure

text
TankSync-tx/
├── README.md
├── LICENSE
├── kicad/
│   ├── TankSync_TX.kicad_pro
│   ├── TankSync_TX.kicad_sch
│   ├── TankSync_TX.kicad_pcb
│   └── TankSync_TX.kicad_prl
├── gerbers/
│   └── TankSync_TX_Gerbers.zip
├── bom/
│   └── TankSync_TX_BOM.csv
└── images/
    └── (schematic, PCB layout, 3D renders)

Gerber Files

The /gerbers/ folder contains the complete Gerber set ready for fabrication:

FileLayer
TankSync_TX-F_Cu.gbrFront copper
TankSync_TX-B_Cu.gbrBack copper
TankSync_TX-F_Silkscreen.gbrFront silkscreen
TankSync_TX-B_Silkscreen.gbrBack silkscreen
TankSync_TX-F_Mask.gbrFront solder mask
TankSync_TX-B_Mask.gbrBack solder mask
TankSync_TX-F_Paste.gbrFront solder paste
TankSync_TX-B_Paste.gbrBack solder paste
TankSync_TX-Edge_Cuts.gbrBoard outline
TankSync_TX-PTH.drlPlated through-hole drill file
TankSync_TX-NPTH.drlNon-plated through-hole drill file
TankSync_TX-job.gbrjobGerber job file

Recommended fab services: JLCPCB, PCBWay, OSH Park.


Custom Library Dependency

This design uses a custom KiCad component:

  • MyLibrary:RYLR998_Castellated_5P — REYAX RYLR998 LoRa module

To open this project in KiCad, add the custom library first: 👉 gargsrishtii/kicad-parts-library


Related Repository


License

This hardware design is released under CERN-OHL-P v2 (Permissive Open Hardware License). Free to use, modify, and manufacture — no share-alike requirement. See LICENSE for full terms.


Part of the TankSync wireless tank monitoring system. Custom KiCad library: gargsrishtii/kicad-parts-library

Parts

38
QtyValueFootprintReferences
7100nFCapacitor_THT:C_Disc_D3.0mm_W1.6mm_P2.50mmC2, C3, C4, C5, C6, C7, C9
41KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR3, R4, R5, R6
3100KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR1, R2, R7
310uFCapacitor_THT:CP_Radial_D5.0mm_P2.00mmC8, C11, C12
24.7KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR10, R11
2AO3401CI-ESPackage_TO_SOT_SMD:SOT-23Q4, Q5
1100nFCapacitor_THT:CP_Radial_D6.3mm_P2.50mmC10
1100uFCapacitor_THT:CP_Radial_D6.3mm_P2.50mmC1
110KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR9
11N5819Diode_THT:D_DO-41_SOD81_P10.16mm_HorizontalD1
1470ohmResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR8
1AJ-SR04MConnector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_VerticalU7
1AO3400Package_TO_SOT_SMD:SOT-23Q3
1Battery ConnectorConnector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_VerticalJ1
1CN3791_MPPT_ModuleCN3791:CN3791_MPPT_ModuleU4
1ESP32-C3_SUPERMINI_THESP32C3-supermini:MODULE_ESP32-C3_SUPERMINI_THU1
1INA219INA219:MODULE_INA219U6
1MT3608MT3608:MODULE_MT3608_DC-DC_STEP_UP_CONVERTER_2A_BOOSTER_MODULEU5
1RYLR998MyLibrary:RYLR998_Castellated_5PU2
1SW_SPSTConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalSW1
1Solar ConnectorConnector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_VerticalJ2
1Switch6Button_Switch_THT:SW_PUSH_6mmB1
1WS2812BLED_SMD:LED_WS2812B_PLCC4_5.0x5.0mm_P3.2mmD2

Questions

What parts does the TankSync tx use?

38 parts, built around the INA219AID, MT3608, CN3791 and AO3401CI-ES. 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 TankSync tx KiCad files?

From the gargsrishtii/TankSync-tx repository on GitHub, at the commit this page was made from: the board is kicad/TankSync_TX.kicad_pcb and its schematic kicad/TankSync_TX.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the TankSync tx design in my own project?

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

Similar boards

  • 2 layers56.5 × 29 mmSolarNodeChargeController, the printed circuit board in 3D

    SolarNodeChargeController

    jaisor/SolarNodeChargeController

    KiCad 10 solar 1S LiPo charger: CN3791 MPPT, up to 4x 5V panels, INA219 I2C power monitor

    40 parts
  • 2 layers60 × 60 mmWater level esp8266-esphome solar charing, the printed circuit board in 3D

    Water level esp8266-esphome solar charing

    Hidayatur-rahman/Solar-Water-Level-Monitor-ESP8266-ESPHome-

    A solar-powered water tank level monitoring system built around the ESP8266 (ESP-12E), designed in KiCad and running on ESPHome

    68 partsMIT
  • 2 layers118.3 × 68 mmField eyes v2.before spreading, the printed circuit board in 3D

    Field eyes v2.before spreading

    louismomo66/field-eyes_pcb

    Open fieldeyesv2.kicadpro in KiCad 9. The whole circuit is one flat schematic (fieldeyesv2.kicadsch): all 168 parts are on a single page, in four framed sections.

    168 parts
  • 2 layers100 × 100 mmPCB BatteryCharger, the printed circuit board in 3D

    PCB BatteryCharger

    sercami97/EstacionMeteorologica

    Open source proyect for low cost weather station

    55 parts
  • 2 layersLd520, the printed circuit board in 3D

    Ld520

    yymqd/kicad-pcb-agent-skills

    AI Agent (Hermes) 驱动的 KiCad PCB 设计自动化技能集:三条管线(kicad-cli / MCP-KiCad / kcaa)阶段切换工作流

    17 partsMIT
  • 4 layers82.6 × 82.5 mmJumperless2, the printed circuit board in 3D

    Jumperless2

    Architeuthis-Flux/Jumperless

    A jumperless breadboard

    208 parts914
  • 4 layers82.6 × 82.6 mmJumperlessV5r8, the printed circuit board in 3D

    JumperlessV5r8

    Architeuthis-Flux/JumperlessV5

    The next generation jumperless breadboard

    650 parts332
  • 4 layers76 × 50 mmWigglecam, the printed circuit board in 3D

    Wigglecam

    jadenrhee/wigglecam-controller

    RP2040 co-processor board for a 4-lens wigglegram camera: constant-current flash, controls, battery telemetry, Pi 5 I2C interface. 4-layer, DRC-clean, fab-ready.

    105 parts