# Hi, I'm José Manuel.

> One page from jmrp.io, published as markdown. Index: https://jmrp.io/llms.txt

> Generated: 2026-08-28

URL: https://jmrp.io/
Language: en
Alternate: https://jmrp.io/es/index.md
Updated: 2026-08-28
Status: Available for projects · Valencia (UTC+1)
Role: Firmware / Software Eng.

Embedded Firmware & Software Engineer.
Bridging the gap between **firmware**, software, and applied research.

I'm José Manuel Requena Plens, an R&D engineer based in Valencia, Spain, specializing in embedded firmware (C/C++, STM32/ESP32), industrial software development, and applied acoustics research. My path runs from academic research in acoustics to industrial firmware development — and that breadth is what motivates me the most.

I thrive on integrating hardware and software end to end. I'm an active Open Source contributor whose tools are used by developers around the world, and a passionate self-hoster. My homelab serves this site and the [public MCP servers](https://mcp.jmrp.io/) anyone can point an AI client at. [Check out my CV](https://jmrp.io/cv/) to see the full journey.

## Sections

### Blog

URL: https://jmrp.io/blog/

Listing page. Every post publishes its own markdown twin, and llms.txt lists them all.

### Series

URL: https://jmrp.io/blog/series/
Markdown: https://jmrp.io/blog/series/index.md

Curated reading paths: why a cluster of posts exists and in what order to read it.

### Tools

URL: https://jmrp.io/tools/

Listing page. Every tool publishes its own markdown twin with the full documentation, and all of them run client-side.

### Projects

URL: https://jmrp.io/projects/
Markdown: https://jmrp.io/projects/index.md

### Publications

URL: https://jmrp.io/publications/
Markdown: https://jmrp.io/publications/index.md

### CV

URL: https://jmrp.io/cv/
Markdown: https://jmrp.io/cv/index.md

### Uses

URL: https://jmrp.io/uses/
Markdown: https://jmrp.io/uses/index.md

### About

URL: https://jmrp.io/about/
Markdown: https://jmrp.io/about/index.md

### Feeds

URL: https://jmrp.io/feeds/
Markdown: https://jmrp.io/feeds/index.md

### Homelab

URL: https://jmrp.io/homelab/

No twin: its figures are substituted per request, so a static copy would be stale the moment it was written.

### Privacy

URL: https://jmrp.io/privacy/
Markdown: https://jmrp.io/privacy/index.md

## Featured projects

- gitlab-mcp-server — https://github.com/jmrplens/gitlab-mcp-server
- phonometry — https://github.com/jmrplens/phonometry
- Cloudflare-DNS-Updater — https://github.com/jmrplens/Cloudflare-DNS-Updater
- TFG-TFM_EPS — https://github.com/jmrplens/TFG-TFM_EPS

## Latest posts

- Your 4-Digit PIN Is Fine: Device-Bound Keys on ESP32-S3
  URL: https://jmrp.io/blog/012-device-bound-key-derivation/
  Markdown: https://jmrp.io/blog/012-device-bound-key-derivation/index.md
- A Vault File That Fails Closed: Encrypt-then-MAC on an MCU
  URL: https://jmrp.io/blog/011-encrypt-then-mac-vault/
  Markdown: https://jmrp.io/blog/011-encrypt-then-mac-vault/index.md
- What the Linker Won't Do: Packing i18n Strings on an MCU
  URL: https://jmrp.io/blog/010-packed-i18n-string-pool/
  Markdown: https://jmrp.io/blog/010-packed-i18n-string-pool/index.md
- Running a Tor Bridge on Linux: obfs4 and WebTunnel Guide
  URL: https://jmrp.io/blog/009-running-tor-bridge/
  Markdown: https://jmrp.io/blog/009-running-tor-bridge/index.md
- MikroTik PPPoE + DHCPv6-PD: Dual-Stack for DIGI Spain
  URL: https://jmrp.io/blog/008-mikrotik-pppoe-dualstack-digi/
  Markdown: https://jmrp.io/blog/008-mikrotik-pppoe-dualstack-digi/index.md
