

Esisar projet trilateration v2
This repo contains code for a project at ESISAR which consisted in: - Using trilateration and an ultrassonic sensor to locate a "robot" (which doesn't move) within a grid surrounded by beacons in known positions.
- Size
- 50 × 35 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 22
- Nets
- 30
- Pads
- 80
- Tracks, vias
- 151, 13
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 8.0 (file 20240108)
- Created
- 11 Oct 2024
- Updated
- 18 Aug 2025
Overview
Esisar projet trilateration v2 is an open-source printed circuit board by EduardoGFilho, from the EduardoGFilho/Project-Arduino-Trilateration repository on GitHub. It is a 2-layer board of 50 × 35 mm with 22 parts on 30 nets, routed with 151 tracks and 13 vias.
It is built around the MAX232N and LM324. Its parts include 7 resistors, 5 capacitors, 2 ICs, 2 connectors and 1 transistor.
Main components
2README
README.mdProject-Arduino-Trilateration
Eduardo Guedes and Rémy Pourtier
This repo contains code for a project at ESISAR which consisted in:
- Using trilateration and an ultrassonic sensor to locate a "robot" (which doesn't move) within a grid surrounded by beacons in known positions.
- Study the arduino sensor and how the project behaves with it
- Design a custom "homebrew" sensor and evaluate it (Not finished due to problems with the hardware)
Some other ideas which were not implemented:
-
Using more beacons
-
Live streaming the data instead of loading from a file
-
Moving the "robot" around
Trilateration
Trilateration consists in estimating a position given the distance to a set of known distances, which contrast to triangulation that uses a set of angles.
Bellow is an image made with mock data to test the equations

Arduino sensor
The sensor was mounted on fixed position and two types of measurements were done. One in which the beacon was at a fixed 50cm which was use to estimate the mean, variance and a histogram of the data.

The second type of measurements were done with a varying distance and fewer samples, used to estimate how the mean and variance vary with distance

Data processing
For actually applying trilateration we have to identify the beacons, which appear as multiple diferent points captured by the sensor. In order to deal with that we have though of an algorithm to cluster points together and consider them a beacon if a cluster is big enough.

How the grid looked like

Homebrew sensor
The board was heavily inspired by Homemade ultrasonic distance sensor. The biggest problem encountered was adjusting the gain of the AmpOps, since the triple aplification meant very small changes would cause the output to saturate. We couldn't fix this problem by the end of the project.

Parts
22| Qty | Value | Footprint | References |
|---|---|---|---|
| 4 | C | Capacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C2, C3, C4, C5 |
| 3 | 100k | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R2, R4, R6 |
| 3 | 10k | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R1, R3, R5 |
| 3 | 5k | Potentiometer_SMD:Potentiometer_ACP_CA6-VSMD_Vertical | RV1, RV2, RV3 |
| 2 | Conn_01x04 | Connector_JST:JST_XH_B4B-XH-AM_1x04_P2.50mm_Vertical | J1, J2 |
| 1 | 10nF | Capacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C1 |
| 1 | LM324 | Package_SO:SOIC-14_3.9x8.7mm_P1.27mm | U1 |
| 1 | MAX232 | Package_SO:SO-16_3.9x9.9mm_P1.27mm | U2 |
| 1 | Microphone | Library:TR4010R-T | LS1 |
| 1 | PNP | Package_TO_SOT_SMD:SOT-23 | Q1 |
| 1 | R | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R7 |
| 1 | Speaker | Library:TR4010R-T | LS2 |
Similar boards
- 2 layers135.6 × 85.3 mm

- 2 layers26.1 × 15 mm

- 2 layers160 × 99.9 mm

DAISY256
lynchaj/duodyne
Duodyne is a hobbyist retrocomputer system designed to run ROMWBW. It is comprised of modules on a system bus
97 parts15 - 2 layers40 × 55 mm

- 2 layers132.1 × 45.7 mm

IPoS
peterheinrich/InternetOverSpaghetti
Transmitting IP packages over a pair of spaghetti thus demonstrating how media independent IP really is.
42 parts342 - 2 layers60.5 × 31.5 mm

Ps2-serial mouse adapter
necroware/ps2-serial-mouse-adapter
PS/2 to serial port mouse adapter
13 parts89GPL-3.0 - 2 layers79.7 × 35.1 mm

USB-2-232
LimeProgramming/USB-serial-mouse-adapter
Convert USB mouse to Serial mouse using Pi Pico
29 parts50MPL-2.0 - 2 layers148.3 × 116.6 mm

KiCAD RetroArduInput
RetroFuturisticEngineer/RetroARDUInput
Use USB Keyboards, Mice and Joysticks on PC/XT, PC/AT, Tandy 1000, Atari, Amiga, C64 and Apple
48 parts25LGPL-2.1
Questions
How big is the Esisar projet trilateration v2 PCB?
It measures 50 × 35 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Esisar projet trilateration v2 use?
22 parts, built around the MAX232N and LM324. 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 Esisar projet trilateration v2 KiCad files?
From the EduardoGFilho/Project-Arduino-Trilateration repository on GitHub, at the commit this page was made from: the board is esisar_projet_trilateration/esisar_projet_trilateration_v2.kicad_pcb and its schematic esisar_projet_trilateration/esisar_projet_trilateration_v2.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Esisar projet trilateration v2 design in my own project?
Its repository states no licence, so its author keeps all rights: ask EduardoGFilho before reusing the design.