You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Several recent and older GitHub repositories were absent from the
programming page, and the `ha-addon-dnsmasq-dhcp` link was pointing to a
non-existent `ha-addon-dnsmasq-dhcp-server` URL.
## Added entries
**More HomeAssistant projects (2025-2026)**
- `esphome-ha-interface-panel` — ESPHome touch screen panel
- `photo-metadata-sanitizer-tools` — bulk photo metadata fixer
**HomeAssistant projects (2024-2025)**
- `go-baresip` — Go wrapper for baresip, backing the VOIP addon
- `ha-addons-repo` — HA addon index repository
**New section: eBPF Tools (2025-2026)**
- `ebpf-netflow-tracer` — TCP connection graphing via eBPF
- `ebpf-tcptracker` — eBPF traffic tap for Kubernetes
- `test-mcp-server` — MCP protocol experimentation server
**Tools and Libraries (extended to 2017-2023)**
- `go-pcap-analyzer`, `rust-pcap-analyzer` — companions to
`large-pcap-analyzer`
- `iperf3-continuous-logger` — long-running iperf3 CSV logger
- `microirrigation-control` — web-controlled irrigation valve system
**MATLAB contributions (extended to 2009-2023)**
- `matlab-insomnia` — prevents Windows sleep during MATLAB runs
## Fixed
- Corrected `ha-addon-dnsmasq-dhcp-server` → `ha-addon-dnsmasq-dhcp`
(wrong repo name in link)
<!-- START COPILOT CODING AGENT TIPS -->
---
🔒 GitHub Advanced Security automatically protects Copilot coding agent
pull requests. You can protect all pull requests by enabling Advanced
Security for your repositories. [Learn more about Advanced
Security.](https://gh.io/cca-advanced-security)
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: f18m <9748595+f18m@users.noreply.github.com>
Co-authored-by: Francesco Montorsi <f18m@users.noreply.github.com>
Copy file name to clipboardExpand all lines: _pages/programming.md
+19-5Lines changed: 19 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -3,7 +3,7 @@ layout: single
3
3
permalink: /programming/
4
4
title: "My Software Projects"
5
5
toc: true
6
-
date: 2025-11-12
6
+
date: 2026-03-11
7
7
author_profile: true
8
8
---
9
9
@@ -12,19 +12,26 @@ In this page I keep track of my various projects involving computer science and
12
12
13
13
## More HomeAssistant projects (2025-2026)
14
14
15
+
*[ESPHome HA Interface Panel](https://github.com/f18m/esphome-ha-interface-panel): an ESPHome-based touch screen panel to install in your house to interface with HomeAssistant.
15
16
*[Floor-heating controller](https://github.com/f18m/floor-heating-controller): an ESPHome package that allows me to control from Home Assistant all the hydraulic valves for floor heating.
16
17
*[viessmann-optolink2mqtt](https://github.com/f18m/viessmann-optolink2mqtt): a bridge between my Viessmann heatpump device and MQTT to enable smart control of the house heating.
17
18
*[HERAComm Invoice analyzer](https://github.com/f18m/heracomm-invoice-analyzer): an utility Python project to help me analyze invoices related to electric and gas utilities
19
+
*[photo-metadata-sanitizer-tools](https://github.com/f18m/photo-metadata-sanitizer-tools): scripts and Docker containers to analyze and fix metadata in a semi-automated way across large photo collections.
18
20
21
+
## eBPF Tools (2025-2026)
22
+
23
+
*[ebpf-netflow-tracer](https://github.com/f18m/ebpf-netflow-tracer): a small eBPF utility to find out active TCP connections and depict them as a graph using Graphviz/DOT.
24
+
*[ebpf-tcptracker](https://github.com/f18m/ebpf-tcptracker): an eBPF-based traffic tap designed for Kubernetes environments.
19
25
20
26
## HomeAssistant projects (2024-2025)
21
27
22
28
*[HomeAssistant VOIP client](https://github.com/f18m/ha-addon-voip-client): An Home Assistant addon that runs a VOIP client, to initiate outgoing calls or receive incoming calls
23
-
*[HomeAssistant DHCP server](https://github.com/f18m/ha-addon-dnsmasq-dhcp-server): An Home Assistant addon that runs dnsmasq as a DHCP server; the perfect tool to take control of all your home automation devices and have a single pane of glass.
29
+
*[go-baresip](https://github.com/f18m/go-baresip): a Go wrapper around the baresip VOIP library, used by the HomeAssistant VOIP client addon above.
30
+
*[HomeAssistant DHCP server](https://github.com/f18m/ha-addon-dnsmasq-dhcp): An Home Assistant addon that runs dnsmasq as a DHCP server; the perfect tool to take control of all your home automation devices and have a single pane of glass.
24
31
*[HomeAssistant RPi MQTT bridge](https://github.com/f18m/rpi2home-assistant): A software daemon to expose Raspberry PI inputs and outputs to HomeAssistant through MQTT.
32
+
*[HomeAssistant addons repository](https://github.com/f18m/ha-addons-repo): the repository that indexes all my Home Assistant addons so that they can be easily installed from the HA UI.
25
33
*[PSMQTT](https://github.com/eschava/psmqtt/): a cross-platform utility for reporting system and processes metrics (CPU, memory, disks, network, S.M.A.R.T. disk data) to an MQTT broker.
26
34
27
-
28
35
## Utilities for commercial projects (2020-2024)
29
36
30
37
*[cMonitor](https://github.com/f18m/cmonitor): a Docker/LXC/Kubernetes, database-free, lightweight container performance monitoring solution.
@@ -38,16 +45,20 @@ In this page I keep track of my various projects involving computer science and
38
45
*[NetlistViewer](https://github.com/f18m/netlist-viewer): a tool capable of loading SPICE netlists and convert them in a schematic (i.e., graphical format)
39
46
40
47
41
-
## Tools and Libraries (2017-2019)
48
+
## Tools and Libraries (2017-2023)
42
49
43
50
At some point I started to work create and publish libraries and low-level tools designed
44
51
to solve some issue I encountered in my everyday job:
45
52
46
53
*[Large PCAP analyzer](https://github.com/f18m/large-pcap-analyzer): a simple tool to handle large files containing captured traffic (e.g., TCP/IP)
54
+
*[go-pcap-analyzer](https://github.com/f18m/go-pcap-analyzer): a simple Go application to read PCAP files and parse packets
55
+
*[rust-pcap-analyzer](https://github.com/f18m/rust-pcap-analyzer): a simple Rust application to read PCAP files and parse packets
47
56
*[CPU-MEM-monitor](https://github.com/f18m/CPU-MEM-monitor): a simple script to log Linux CPU and memory usage over time and output an Excel-friendly report.
57
+
*[iperf3-continuous-logger](https://github.com/f18m/iperf3-continuous-logger): small scripts to run iperf3 continuously to produce a CSV report of measured speed over long periods of time.
48
58
*[rpm-make-rules-dependency-lister](https://github.com/f18m/rpm-make-rules-dependency-lister): a small tool to allow incremental RPM packaging, useful to speed up your deployment chain when you are packaging several RPMs
49
59
*[rpm-spec-dependency-analyzer](https://github.com/f18m/rpm-spec-dependency-analyzer): a simple Python3 script to generate a DOT graph of the inter-dependencies among a set of SPEC files
50
60
*[malloc-benchmarks](https://github.com/f18m/malloc-benchmarks): simple benchmarking scripts to run on any machine to compare different C/C++ malloc implementations.
61
+
*[microirrigation-control](https://github.com/f18m/microirrigation-control): hardware, firmware and software to control micro-irrigation valves from a web browser (smartphone-friendly), running on Linux single-board computers.
51
62
52
63
A few more github-based projects I have contributed to are:
53
64
@@ -81,6 +92,8 @@ During my PhD I have been writing ton of MATLAB code regarding the wide fields o
81
92
82
93
Most of that code is specifically tied to my scientific research and I have uploaded it at [https://sourceforge.net/projects/frm-research/](https://sourceforge.net/projects/frm-research/). Some code is generic enough to be useful to others; for this reason I'm (slowly) posting on [the MATLAB FileExchange page](https://it.mathworks.com/matlabcentral/profile/authors/2008460?detail=all) some of my most general-purpose code.
83
94
95
+
More recently I also published [matlab-insomnia](https://github.com/f18m/matlab-insomnia), a small utility that prevents automatic sleep mode on Windows computers while MATLAB is running.
96
+
84
97
85
98
## Firefox addons (2009-2012)
86
99
@@ -112,7 +125,8 @@ The code is still there though. So this is the list of the components I contribu
[wxWidgets](https://www.wxwidgets.org) is a powerful library and an [open source](https://www.opensource.org) C++ toolkit for cross-platform Graphical User Interfaces (GUI). I've submitted a good number of patches to wxWidgets project: you can browse them [here](https://trac.wxwidgets.org/query?status=accepted&status=closed&status=confirmed&status=infoneeded&status=infoneeded_new&status=new&status=portneeded&status=reopened&group=component&reporter=%24USER&order=priority). In 2007-2009 I have been one of the wxWidgets developers and I worked in many areas of the library (new widgets: wx\*PickerCtrl, wxCollapsiblePane; documentation of wxWidgets, bugfixing, etc). I've been involved in various open-source projects related to wxWidgets:
0 commit comments