“It is difficult to say what is impossible, for the dream of yesterday is the hope of today and the reality of tomorrow — Robert H. Goddard”

Photo of IPSerra

I'm Ignacio Pérez Serra

  • 💻 Programmer and engineer | Firmware and embedded systems
  • 🕹️ Retro computing + video games: from 8/16-bit to understanding hardware from the inside
  • ⚙️ Interested in architecture and low-level systems: buses, timing, interrupts and registers
  • 🔧 From ‘why won't it boot?’ to ‘oh, it was the pull-up / clock / reset’
  • 🤖 Robots and tinkering: when software drives motors and reads sensors
  • 🐧 Linux | Debugging as a contact sport

About me

From retro to bare metal: curiosity about the ‘why’ behind every click. These days: firmware, electronics and robotics, where software touches the real world (with the occasional late-night debugging session).


I work with the following technologies:

  • Programming: C / Embedded C, C++, C#, Python, Java, MATLAB/Octave and shell scripting.
  • Embedded systems: bare-metal, basic FreeRTOS, Embedded Linux, drivers, GPIO, PWM, ADC/DAC, I2C, SPI, UART, CAN and RS-485.
  • Platforms: STM32, ESP32, BeagleBone Black, Raspberry Pi, Arduino and Intel 8051.
  • Communications: TCP/IP, UDP, MQTT, Ethernet 10G, USB, PCIe, Wi-Fi, 6G-SDI, 3G-SDI, DisplayPort and HDMI.
  • Testing and verification: LabVIEW, TestStand, SDKs, test benches, iperf3, ethtool, FFmpeg, multimeter, oscilloscope and signal analysis.
  • Robotics and simulation: ROS 1/ROS 2, Gazebo, Unity and MATLAB.
  • Design and prototyping: KiCad, LTspice, SolidWorks and 3D printing.
  • Tools and operating systems: Git, Linux and Windows.

More about my Projects and my experience.

Education

Master's degree

Automation and Industrial Computing (2024–2026)

Universitat Politècnica de València (UPV)

Bachelor's degree

Industrial Electronic Engineering (2019–2024)

Universitat de València (UV)

Higher vocational qualification

Multiplatform Application Development (2017–2019)

IES Henri Matisse

Certificates

Course · Not started

nRF Connect SDK Fundamentals (Zephyr RTOS, Devicetree, GPIO, UART and I2C)

Nordic Semiconductor Developer Academy · 8–10 hours

Course · In progress

(MCU1) Learn bare metal driver development using Embedded C (STM32: GPIO, I2C, SPI, USART)

Udemy · 28.5 hours

Course

Self Driving and ROS - Learn Doing! Odometry & Control

Udemy · 19.5 hours · Instructor: Antonio Brandi

University extension course

Experimentation with electronic equipment for low-level measurements

Universitat de València (UV) · July 2024