Skip to the content
PCBKitNew board
2 layers125 × 95 mmController, the printed circuit board in 3D

Custom remote controler with esp32 to stream telemetry.

Size
125 × 95 mm
Copper layers
2
Thickness
1.6 mm
Parts
66
Nets
72
Pads
305
Tracks, vias
483, 227
Pours
2
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
3 Feb 2026
Updated
19 Oct 2026

Overview

Controller is an open-source printed circuit board by someonelse20, from the someonelse20/farsight-rc repository on GitHub. It is a 2-layer board of 125 × 95 mm with 66 parts on 72 nets, routed with 483 tracks and 227 vias.

It is built around the ESP32-S3-MINI-1-N8, AMS1117-3.3 and BQ25895RTW, with the THB001P and AO3401A among its other parts. Its parts include 24 resistors, 17 capacitors, 5 connectors, 5 switches and 3 ICs. It belongs with the ESP32 boards of this library.

Main components

5

README

README.md

Farsight RC

alt text

Custom long range remote controller with ESP32 to stream telemetry and an STM32 based lora module with the SX1262. The controller has a build in 18650 battery with an integrated charger. The transceiver is its own standalone board and can be used independenly of the controller. I made this project as a part of my larger goal to make a custom drone. I originally was going to make it out of stock modules but decided to design custom pcbs.

Usage

--This is still under development and is subject to change--

Controller

alt text

The switch in the middle of the controller is the power switch and the led is the status of the battery charging. The usb connecter will charge the battery and can be used to communicate with the ESP32. The micro SD card will log all the incoming telemetry.

The controller software is currently pretty basic and missing some fetures. The wifi network the esp32 will create can be configured by installing the espressive ide and running idf.py menuconfig and changing the wifi ssid and password under Wifi Configuration. Requesting /telemetry of the ip of the nextork will return a set of comma separated values in the format of "altitude_meters,speed_meters_per_second,heading_degrees,latitude,longitude".

Transceiver

alt text

UART pinout:

1234
VCCGNDRXTX

Microcontroller pinout:

12
RESETBOOT

Debug pinout:

12
SWDCLKSWDIO

The transceiver has an internal regulator and can handle up to 5v input. The UART pinout is from the transceiver reference so an external device would put its Tx to the transceiver Rx and vice versa. The buttons on the board will put the STM32 into boot and reset mode respectively and the external pins are directly wired to the microcontroller.

The transceiver is built on the Semtech SX1262 driver. To communicate with the transceiver a host must first send a register bit and then the data to transmit or receive based on the table below.

AddressNameDescriptionInput/OutputSizeNote
0who_am_iDevice IDO1Device ID is 126
1TXTransmits packetI-First send size byte then send data byte.
2RXReceives packetI/O-First send size byte then send data byte.
3TX_setTransmits packetI-Packet size must always be payload_len.
4RX_setReceives packetO-Packet size must always be payload_len.
5sleepPuts transceiver into sleep mode-0
6wakeupWakes up transceiver-0
7set_allInputs a setting structITBDSee settings_t
8set_frequencySets SX1262 frequencyI4See sx126x_set_rf_freq
9set_tx_paramsSets SX1262 TX power and ramp timeI2array of {power in dBm, ramp time (see datasheet)}
10set_lora_mod_paramsSets LoRa parametersITBDSee sx126x_mod_params_lora_t
11set_lora_pkt_paramsSets LoRa packet parametersITBDSee sx126x_pkt_params_lora_t
12set_lora_symb_nb_timeoutSets loRa timeout in symbolsI1See sx126x_set_lora_symb_nb_timeout
13set_encrypt_paramsSets encryption parametersI-Not currently implemented
14enable_encryptEnables/disables encryptionI-Not currently implemented

TBD means that the size is based on the size of a struct which will be calculated when I can run the code on the hardware.

BOM

BOM to make two transceivers and two controllers but with only two antennas and one micro SD card. All prices in USD. Price column is total price and does not include shipping.

Parts

66
QtyValueFootprintReferences
1110KResistor_SMD:R_0402_1005MetricR3, R5, R6, R7, R8, R9, R10, R16, R17, R18, R21
70.1uFCapacitor_SMD:C_0402_1005MetricC1, C2, C5, C13, C14, C23, C26
310uFCapacitor_SMD:C_0603_1608MetricC20, C21, C22
322uFCapacitor_SMD:C_0603_1608MetricC6, C17, C18
35.1KResistor_SMD:R_0402_1005MetricR11, R12, R15
2100Resistor_SMD:R_0402_1005MetricR4, R27
21uFCapacitor_SMD:C_0402_1005MetricC4, C15
227Resistor_SMD:R_0402_1005MetricR25, R26
2THB001Pcontroller:THB001P_CNKR1, R2
12.2uHInductor_SMD:L_6.3x6.3_H3L4
1200Resistor_SMD:R_0402_1005MetricR19
130.1KResistor_SMD:R_0402_1005MetricR14
14.7uFCapacitor_SMD:C_0402_1005MetricC19
147nFCapacitor_SMD:C_0402_1005MetricC16
15.2KResistor_SMD:R_0402_1005MetricR13
15.5KResistor_SMD:R_0402_1005MetricR22
1AMS1117-3.3Package_TO_SOT_SMD:SOT-223-3_TabPin2U3
1AO3401APackage_TO_SOT_SMD:SOT-23Q1
1BQ25895RTWPackage_DFN_QFN:Texas_RTW_WQFN-24-1EP_4x4mm_P0.5mm_EP2.7x2.7mm_ThermalViasU1
1BTN_1Connector_Wire:SolderWire-0.1sqmm_1x02_P3.6mm_D0.4mm_OD1mmSW4
1BTN_2Connector_Wire:SolderWire-0.1sqmm_1x02_P3.6mm_D0.4mm_OD1mmSW5
1BatteryBattery:BatteryHolder_MPD_BH-18650-PCBT1
1BootButton_Switch_SMD:SW_Push_SPST_NO_Alps_SKRKSW2
1DisplayConnector_JST:JST_XH_B4B-XH-A_1x04_P2.50mm_VerticalJ3
1ESP32-S3-MINI-1RF_Module:ESP32-S2-MINI-1U6
1LEDLED_THT:LED_D5.0mmD1
1Micro_SD_Card_Det_Hirose_DM3ATConnector_Card:microSD_HC_Hirose_DM3AT-SF-PEJM5J2
1ResetButton_Switch_SMD:SW_Push_SPST_NO_Alps_SKRKSW1
1SW_SPDTButton_Switch_THT:SW_Slide_SPDT_Straight_CK_OS102011MS2QSW3
1ThermistorResistor_SMD:R_0402_1005MetricTH1
1Tranceiver Boot/RstConnector_JST:JST_XH_B2B-XH-A_1x02_P2.50mm_VerticalJ5
1Tranceiver DataConnector_JST:JST_XH_B4B-XH-A_1x04_P2.50mm_VerticalJ4
1USB_C_Receptacle_USB2.0_16PConnector_USB:USB_C_Receptacle_GCT_USB4105-xx-A_16P_TopMnt_HorizontalJ1

The 59 most common of 66 parts.

Questions

How big is the Controller PCB?

It measures 125 × 95 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Controller use?

66 parts, built around the ESP32-S3-MINI-1-N8, AMS1117-3.3, BQ25895RTW and THB001P. 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 Controller KiCad files?

From the someonelse20/farsight-rc repository on GitHub, at the commit this page was made from: the board is hardware/controller/controller.kicad_pcb and its schematic hardware/controller/controller.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Controller design in my own project?

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

More from someonelse20/farsight-rc

1
  • 4 layers30 × 30 mmTransceiver, the printed circuit board in 3D

    Transceiver

    someonelse20/farsight-rc

    Custom remote controler with esp32 to stream telemetry.

    50 parts

Similar boards

  • 4 layers90 × 50 mmCryobelt, the printed circuit board in 3D

    Cryobelt

    michael201110/cryobelt

    100 parts1
  • 4 layers175.5 × 61.1 mmWatch, the printed circuit board in 3D

    Watch

    TVavrinec/Watch

    99 parts
  • 4 layers114.9 × 129.9 mmTanmatsu, the printed circuit board in 3D

    Tanmatsu

    Nicolai-Electronics/tanmatsu-hardware

    Hardware design of the Tanmatsu mainboard

    372 parts9CERN-OHL-P-2.0
  • 2 layers78 × 103 mmEmbedded.old, the printed circuit board in 3D

    Embedded.old

    borisg912/3DNA

    This project creates a flat cylindrical DNA model with: - Magnetic DNA bases with color-coded NeoPixel LEDs and unique resistor values for identification - Interactive base pairing game that validates correct DNA base…

    121 parts2GPL-3.0
  • 4 layers130 × 130 mmSmart Metering, the printed circuit board in 3D

    Smart Metering

    frahncky/Smart-Metering

    Analisador trifásico de energia e qualidade de energia com interface gráfica touchscreen.

    230 parts
  • 4 layers66 × 36 mmGas sensor, the printed circuit board in 3D

    Gas sensor

    JamesTwallin/gas_sensor

    A tiny plug-in board for the rev E phone-companion board. It stands upright in a notch in rev E's sensor end, between the two gas sensor cans, and pokes 4.5 mm out through a slot in the case face, so its tip sits in the…

    81 parts7MIT
  • 4 layers81 × 143.2 mmNanoFOC D, the printed circuit board in 3D

    NanoFOC D

    katbinaris/Nano_D_PlusPlus

    Nano_D++ Electronics and Mechanical Design

    278 parts3