# An ESP32-C3 turns a 3D-printed wheel into a fishing line meter

Six magnets, one Hall sensor and a big OLED turn a 3D-printed wheel into a fishing line counter that reads out in meters. The firmware and printable enclosure are MIT-licensed.

- Category: Hardware (build)
- Made by: [XiaoGai](https://www.hackster.io/ifreecox) on Hackster.io
- Original: https://github.com/KamiOrz/fishing-line-counter
- On Afterware: https://afterware.xyz/p/an-esp32-c3-turns-a-3d-printed-wheel-into-a-fishing-line-meter

## Can I build this?

- Difficulty: Intermediate
- AI-buildability: 4/5 (The firmware (pulse counting, OLED display, calibration) is easy for AI tools to write, while the soldering, magnet placement and 3D-printed enclosure still need hands-on work.)
- Time: A weekend
- Cost: $10–25
- Parts: ESP32-C3 SuperMini, 0.96-inch SSD1306 128x64 I2C OLED, HW-477 V0.2 A3144E Hall sensor module, 6x6mm tactile button, 3x1mm magnets
- Tools: soldering iron, 3D printer, PlatformIO, multimeter

Estimates based on the original write-up. How the AI-buildability score works: https://afterware.xyz/ai-buildability

## Build sheet

- Controller: ESP32-C3 SuperMini
- Sensor: A3144E Hall module
- Display: 0.96in SSD1306 OLED
- Language: C++ (PlatformIO)

## Starter prompt

```
Based on "An ESP32-C3 turns a 3D-printed wheel into a fishing line meter" on Afterware: https://afterware.xyz/p/an-esp32-c3-turns-a-3d-printed-wheel-into-a-fishing-line-meter

Write PlatformIO firmware for an ESP32-C3 SuperMini that counts falling edges on GPIO4 from an A3144 Hall sensor, with a 0.96-inch SSD1306 I2C OLED on GPIO5/GPIO6 showing the total in meters with two decimals. Add a reset button on GPIO3 with the internal pull-up, and store a calibration coefficient in flash. Use 6 pulses per wheel revolution and a default of 14.66 mm per pulse.
```

## Story

Wrap fishing line once around the side wheel and pull. The wheel spins past six magnets, an A3144E Hall sensor catches each pass, and an ESP32-C3 SuperMini counts the falling edges. Multiply the pulse count by a calibrated distance per pulse and a 0.96-inch OLED shows meters in big digits, with two decimal places.

The build runs on parts most benchmarks already have: the C3, a Hall module, a small SSD1306 screen, magnets and a 3D printer. There's no custom PCB and no pinch roller. The Hall output needs care, though. On this prototype the S line sat at 3.73V with no magnet, so the write-up adds a resistor from S to GND and recommends a BSS138 level shifter if you can't characterize your module.

Worth stealing: the wheel-and-magnet trick is a cheap way to count any rotating thing, and the calibration math (pi times 28mm divided by six) is spelled out so you can redo it for your own line and wheel.

## Resources

- [Project repo](https://github.com/KamiOrz/fishing-line-counter)
- [Firmware](https://github.com/KamiOrz/fishing-line-counter/tree/main/firmware)
- [Printable STLs](https://github.com/KamiOrz/fishing-line-counter/tree/main/hardware/stl)
- [Fusion and STEP files](https://github.com/KamiOrz/fishing-line-counter/tree/main/hardware/cad)
- [Assembly notes](https://github.com/KamiOrz/fishing-line-counter/blob/main/docs/assembly.md)

Tags: esp32-c3, hall sensor, oled, 3d-printed, fishing, open source

AI assistants can search all Afterware builds through the MCP server at https://afterware.xyz/mcp (setup: https://afterware.xyz/agents).
