leonardo salvatore

BeeGroove AB — Senior Embedded Contractor

Edge Computing·Embedded SW/FW·Hardware bringup·Video processing and streaming·Local LLMs·Cyber Resilience Act (CRA)

Malmö, Sweden

Sponsors

Summary

Strategic technical leader with 20 years of experience delivering high-impact solutions across consumer electronics, industrial, IoT sectors. Expert in the full embedded lifecycle — from hardware-level drivers to cloud-integrated applications. Deeply specialized in AOSP (Android Open Source Project), Yocto/Linux, and FreeRTOS (including AWS IoT). Helps customers bring products into compliance with the EU Cyber Resilience Act (CRA). Working on integrating AI — both cloud and local — into existing workflows and solutions. Proven track record of leading agile teams to build robust, scalable OS layers and custom hardware platforms, whether on-site in the lab or leading remotely.

Open-source contributor to GStreamer and LVGL, with a focus on video processing and streaming:

Skills

Edge Computing Video processing and streaming Local LLMs Artificial Intelligence Cyber Resilience Act (CRA) AOSP Yocto / Linux FreeRTOS / AWS IoT GStreamer / WebRTC LVGL Secure Boot (iMX8/6 HAB / ESP32)

Silicon & platforms:

NXP i.MX6 NXP i.MX8 NXP i.MX95 NXP i.MX RT1050 NXP i.MX RT1064 NXP SE050 Raspberry Pi / RP2040 ESP32 NVIDIA Jetson Rockchip RK3399 Rockchip RK3288

Languages: Italian (native) · English (professional working proficiency)

Experience

Everything listed here is no longer covered by an NDA — happy to show details or talk shop about any of it.

[2024.01]
BeeGroove AB— Company Owner Malmö · Jan 2024 – Present (2 years 9 months)

Embedded Linux and Android developer at Trimble Sweden AB, and for other customers on FreeRTOS — including ESP32 secure boot for Amazon AWS.

[2019.08]
Trimble AB— projects, 5 years Sweden · 5 years
  • IMX8mp Yocto Linux R&D, architecture, and FW development.
  • IMX6 Android AOSP development on the Trimble TCU5.

geospatial.trimble.com — TCU5

Trimble TCU5 field controller
[2019.08]
BeeGroove srl— Embedded Linux & Android Developer, Trimble Sweden AB Aug 2019 – 2024 (5 years)

Analysis and implementation of OS and app-level embedded Android systems.

[2019.04]
RAZBAM Simulations LLC— C++ Developer, Aircraft Simulation Remote · Apr 2019 – Jan 2020 (10 months)

Analysis and C++ implementation of high-fidelity systems and physics running on Eagle Dynamics DCS modules.

RAZBAM DCS aircraft cockpit simulation
[2018.05]
Embedded Software Freelancer— Senior Embedded Developer / Consultancy Owner Florence Area, Italy · May 2018 – Jan 2020 (1 year 9 months)

Onsite/remote work on Linux (Debian/Yocto), Android (AOSP/Things) and FreeRTOS for iMX6, iMXRT, Rockchip 3399, ESP32 and STM32 SoCs.

[2019.04]
BCG Digital Ventures— Senior Embedded Software Contractor Berlin, Germany · Apr 2019 – Jul 2019 (4 months)

IoT brewing monitoring system on ESP32 / FreeRTOS.

bcg.com — Internet of Things

IoT brewing monitoring lab setup
[2018.06]
Above.se— Senior Embedded Software Contractor Malmö, Sweden · Jun 2018 – Feb 2019 (9 months)

Evoko room booking system on an NXP iMX6 Android tablet and cloud. Customization and new development on Android 7.1: drivers, services, build system, OTA, SDK and API.

evoko.app

Evoko room booking tablet
[2015.02]
Gilbarco Veeder Root— Team Leader Florence Area, Italy · Feb 2015 – May 2018 (3 years 4 months)

Started as senior embedded developer on custom Linux devices, then led a team delivering a fully customized Linux Debian OS and service layer for a new iMX6 NXP/Marvell hardware platform. Including HAB/secure boot and hardware chain of trust.

gilbarco.com — IT use cases

Gilbarco Veeder-Root fuel dispenser
[2014.02]
BeeGroove Ltd— Senior Software Consultant, Samsung R&D UK London, UK · Feb 2014 – Feb 2015 (1 year 1 month)

Samsung Knox custom Android features for NDA customers: customizing apps and services for Samsung smartphones and tablets.

samsungknox.com — device customization

Samsung Knox secure tablet payment
[2012.05]
ALTEN— Embedded Software Developer, Qualcomm Projects London, UK · May 2012 – Jan 2014 (1 year 9 months)

NFC integration for Qualcomm MSM8930 on Android and Windows Phone. C/C++/Java driver and HAL development on the Qualcomm platform.

Qualcomm Snapdragon MSM8930 reference device
[2011.08]
Teleca— Sr. Software Engineer Bochum Area, Germany · Aug 2011 – May 2012 (10 months)

C/C++/Java development on apps, services and HAL for Android (HTC Dream) and WinPhone custom devices.

HTC Dream (T-Mobile G1) Android phone
[2006.09]
Giuneco— Project Manager Italy · Sep 2006 – Aug 2011 (5 years)

Project manager and associate at this Microsoft Partner company, delivering applications and services for many customers.

[2004.09]
AnfyTeam— CTO, then Team Leader Italy · Jul 2004 – May 2006 (1 year 11 months)
  • Games for J2ME and Symbian phones (888.com).
  • Mobile messaging platform for J2ME and Symbian phones.
[2003.01]
Menarini, Florence— Teacher, J2EE Training Course Florence, Italy · Jan 2003 – Apr 2003 (4 months)

Taught a J2EE and Oracle development course at the Menarini data warehouse.

Online demos / funny projects

Embedded LLM log-anomaly detection on NXP i.MX 8M Plus

Linux embedded LLM for log-anomaly detection

A local LLM running on the NXP i.MX 8M Plus NPU for edge-computing log-anomaly detection.

llama.cpp profiling LVGL on QEMU via MCP

llama.cpp profiling LVGL on QEMU via MCP

MCP server for a local LLM, profiling an LVGL program running in QEMU. github.com/leonardosalvatore/llama.cpp.debugger

3D ultrasonic sonar mapping

3D ultrasonic sonar mapping

Arduino dual-axis servos sweep an ultrasonic sensor; USB streams the 3D points into Unity for visualization.

llama.cpp MCP server debugging LVGL in QEMU

llama.cpp MCP server debugging LVGL in QEMU

An MCP server talking to llama.cpp on a local GPU, debugging an LVGL demo inside QEMU. Project: github.com/leonardosalvatore/llama.cpp.debugger

Little Walker explorer robot

Little Walker — Lego / Duplo explorer robot

Explorer robot with Lego, Duplo, 3D-printed parts, ESP32, and sensors. Project: github.com/leonardosalvatore/little-walker

Llama Wars local AI bots

Llama Wars — local AI bots that improve while fighting

A tiny Raylib arena where llama.cpp rewrites the blue team’s Lua between rounds from match telemetry.

StrandedBot local LLM simulation

StrandedBot — local LLM in a pixel-art world

A llama.cpp model (Ministral-3-8B) reasoning inside a Raylib simulation. Project: github.com/leonardosalvatore/StrandedBot

DIY compact analog joystick flight control

DIY compact analog joystick flight control

Taranis Quanum guts, 24 mappable buttons and 5 axes on an Arduino Micro. HID for games on PC and consoles.

StrandedBot longer run

StrandedBot (longer run)

A longer session of StrandedBot: the local LLM navigating and reasoning in the simulated environment.

Llama Wars match-by-match recoding

Llama Wars — local AI recodes the blue team, match by match

llama.cpp watches the fight telemetry and rewrites the blue team’s Lua after every round. Green team stays fixed.

DIY gimbal analog joystick

Experimental custom gimbal analog joystick

Weekend DIY stick from pots, aluminium and glue. Arduino Micro HID — works as a game controller on PC and consoles.

Snake gameplay

Snake gameplay

A Snake game for Windows Phone: tap the screen border to turn. Play, rate, and a link back to beegroove.com.

RDI optimization

RDI optimization

Optimizing the RDI radar / MFD drawing in a DCS aircraft module — green-on-black cockpit instruments.

Space defense

Space defense

A short space-defense gameplay clip — one of the older BeeGroove game experiments.