Skip to the content
2 layers110 × 42 mmOpenRad, the printed circuit board in 3D

Introducing OpenRad, a simple radiation monitoring solution powered by the SBM-20 GM tube and TTGO ESP32 microcontroller. this project offers a user-friendly approach to way to track radiation levels.

Size
110 × 42 mm
Copper layers
2
Thickness
1.6 mm
Parts
19
Nets
30
Pads
66
Tracks, vias
90, 0
Pours
1
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
25 Apr 2024
Updated
17 Dec 2025

Overview

OpenRad is an open-source printed circuit board by omarkhorshid, from the omarkhorshid/OpenRad repository on GitHub, published under the BSD-3-Clause licence. It is a 2-layer board of 110 × 42 mm with 19 parts on 30 nets, routed with 90 tracks and 0 vias.

It is built around the MJE13001C1. Its parts include 6 resistors, 3 switches, 2 capacitors, 2 transistors and 1 diode. It belongs with the ESP32 boards of this library.

Main components

1

README

README.md
Openrad logo [blocked]

OpenRad

Introducing OpenRad, a simple radiation monitoring solution powered by the SBM-20 GM tube and TTGO ESP32 microcontroller. this project offers a user-friendly approach to tracking and measuring radiation levels.

PCB from PCBWay

Table of Contents

Demo

Device UI

Images

Youtube Demo

Demo Video Demo Video

Install

  1. Install VSCode.
  2. Install PlatformIO.
  3. Clone this repository
bash
git clone https://github.com/omarkhorshid/OpenRad.git
  1. (optional) Install Squareline Studio.
  2. (optional) For Squareline, Change the project settings save paths to match your project directory.
  3. In PlatformIO extension: Platform > Upload the Filesystem Image.
  4. In PlatformIO extension: General > Upload the code to the TTGO board.

Dependencies

Folder Structure

Software/Firmware/src

  • hardware.cpp/h : Contains hardware init and functions.
  • settings.cpp/h : Contains the settings.
  • geiger.cpp/h : Contains geiger calculations.
  • gui.cpp/h : Contains LVGL functions.
  • connectivity.cpp/h : Contains all the connectivity functions.

Software/Firmware/lib/ui/src

  • ui_events.c/h : Contains the UI events.

Software/Firmware/data

  • index.html : Contains the web interface.
  • chart.js : Chart.js Library file.

Schematics

Schematics View project schematics

FAQs

How do I Navigate the UI in OpenRad?

Using the three buttons, up down and enter. ...

How do I change the measuring window?

After uploading the code to the ESP, open the settings cogwheel, and change the settings you want.

How do I turn OpenRad off?

  • For Sleep mode: Navigate to the power button and click it.
  • For Deep Sleep mode: Hold the button untill this message pops up, then release it before it disappears.

What types of connectivity does OpenRad have?

OpenRad has WiFi and MQTT connectivity to be able to remotely monitor the radiation levels from the Web interface.

How do I connect to OpenRad?

To connect to OpenRad and access the web interface:

If not connected to a Wifi network:

  1. Enable Wifi from the on device settings
  2. Enable "Wi-Fi Access Point"
  3. Connect to the device's AP using the password on screen
  4. Navigate to "http://192.168.4.1" or use the "Manage Router" option on your phone

If Connected:

  • From a device on the same network navigate to the IP address showing on the device screen in the Connectivity settings

What are the Measurement Settings?

  1. Window Size: Number of samples used to calculate the average radiation intensity.
  • Bigger values help the device give a more stable reading and theoretically increse its precision, but it will react slowler to changes.
  • Smaller values help the device react faster to changes, but the readings might fluctuate more and theoretically decrease the precision.
  1. Sampling Period: This is how often the device takes a reading (e.g., every N milliseconds).
  • Bigger values make the device take readings less frequently, reducing energy consumption during sleep, but the device will react slower to changes.
  • Smaller values make the device take readings more often, making it quicker to detect changes, but the readings may be less precise and the device consumes more power during sleep (If sleep sampling is enabled).

License

OpenRad is BSD-3 Licensed

Parts

19
QtyValueFootprintReferences
3SW_PushButton_Switch_THT:SW_PUSH_6mm_H13mmSW1, SW2, SW3
10.01uFCapacitor_THT:C_Rect_L18.0mm_W5.0mm_P15.00mm_FKS3_FKP3C1
1100kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR5
110kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR6
110mHInductor_THT:L_Axial_L14.0mm_D4.5mm_P15.24mm_Horizontal_Fastron_LACCL1
11N4937Diode_THT:D_DO-41_SOD81_P10.16mm_HorizontalD1
122Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR2
1220pFCapacitor_THT:C_Rect_L18.0mm_W5.0mm_P15.00mm_FKS3_FKP3C2
122kResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR4
12N3904Package_TO_SOT_THT:TO-92_InlineQ2
1300Resistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P10.16mm_HorizontalR1
14.7MResistor_THT:R_Axial_DIN0414_L11.9mm_D4.5mm_P15.24mm_HorizontalR3
1BuzzerBuzzer_Beeper:Buzzer_12x9.5RM7.6BZ1
1DETECTSuper_extra:PAD_7X4DETECT1
1HIGHVSuper_extra:PAD_7X4HIGHV1
1MJE13001C1Package_TO_SOT_THT:TO-92_InlineQ1
1TTGO_ESP32_TDISPLAY_V1.1extras:TTGO_ESP32_TDisplay_v1.1TTGO1

Similar boards

  • 2 layers43.9 × 27.7 mmTcd1304-4v, the printed circuit board in 3D

    Tcd1304-4v

    OpnTec/open-spectrometer-hardware

    Open source VIS spectrometer

    19 parts1.5k
  • 2 layers50 × 60 mmDebate Device, the printed circuit board in 3D

    Debate Device

    hackclub/OnBoard

    💡 Join 1,000 teenagers and make your first PCB with a $100 grant!

    19 parts915
  • 2 layers102.9 × 96.7 mmISA adapter, the printed circuit board in 3D

    ISA adapter

    polpo/picogus

    Emulation of ISA sound cards and CD-ROM on Raspberry Pi Pico (GUS, SB/Adlib, MPU-401, Tandy, CMS, Panasonic CD-ROM) with USB mouse/joystick support

    19 parts805
  • 2 layers60 × 39 mmPs2usb, the printed circuit board in 3D

    Ps2usb

    rasteri/HIDman

    Adapting USB devices to work on old computers

    19 parts432
  • 2 layers70.1 × 43.2 mmIaq device, the printed circuit board in 3D

    Iaq device

    nkitanov/iaq_board

    IAQ Board is a DIY (Do-It-Yourself) device for measuring internal air quality

    19 parts396
  • 2 layers80 × 80 mmGB BRK CPU G1, the printed circuit board in 3D

    GB BRK CPU G1

    Gekkio/gb-hardware

    Game Boy -related custom hardware by gekkio

    19 parts379CC-BY-4.0
  • 2 layers25.4 × 25.4 mmIna169, the printed circuit board in 3D

    Ina169

    Ardumower/ardumower

    Develop an open source robotic lawn mower (HW+SW reference platform)

    19 parts282
  • 2 layers58.4 × 28.6 mmNew rele, the printed circuit board in 3D

    New rele

    zmaker/arduino_cookbook

    gli sketch del nuovo progetto Arduino Cookbook e dei video di YouTube

    19 parts269

Questions

How big is the OpenRad PCB?

It measures 110 × 42 mm and has 2 copper layers, 1.6 mm thick.

What parts does the OpenRad use?

19 parts, built around the MJE13001C1. 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 OpenRad KiCad files?

From the omarkhorshid/OpenRad repository on GitHub, at the commit this page was made from: the board is Hardware/KiCad_project/OpenRAD.kicad_pcb and its schematic Hardware/KiCad_project/OpenRAD.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the OpenRad design in my own project?

Its repository publishes it under the BSD-3-Clause licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).