{"id":45422527,"url":"https://github.com/oszuidwest/rpi-umpx-decoder","last_synced_at":"2026-02-22T01:42:43.134Z","repository":{"id":157989189,"uuid":"633753199","full_name":"oszuidwest/rpi-umpx-decoder","owner":"oszuidwest","description":"Software to turn a Raspberry Pi into a production grade μMPX decoder","archived":false,"fork":false,"pushed_at":"2025-11-24T18:49:29.000Z","size":132,"stargazers_count":7,"open_issues_count":0,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-11-28T07:09:50.408Z","etag":null,"topics":["broadcasting","micrompx","raspberry-pi","raspberrypi","sdr"],"latest_commit_sha":null,"homepage":"https://www.zuidwestfm.nl/","language":"Shell","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/oszuidwest.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2023-04-28T07:47:27.000Z","updated_at":"2025-11-24T18:49:28.000Z","dependencies_parsed_at":"2023-07-21T18:39:10.413Z","dependency_job_id":"336eaade-0a24-4a7e-b98a-f8fabd8850e7","html_url":"https://github.com/oszuidwest/rpi-umpx-decoder","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/oszuidwest/rpi-umpx-decoder","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oszuidwest%2Frpi-umpx-decoder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oszuidwest%2Frpi-umpx-decoder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oszuidwest%2Frpi-umpx-decoder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oszuidwest%2Frpi-umpx-decoder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/oszuidwest","download_url":"https://codeload.github.com/oszuidwest/rpi-umpx-decoder/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/oszuidwest%2Frpi-umpx-decoder/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29703227,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-21T23:35:04.139Z","status":"ssl_error","status_checked_at":"2026-02-21T23:35:03.832Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["broadcasting","micrompx","raspberry-pi","raspberrypi","sdr"],"created_at":"2026-02-22T01:42:42.729Z","updated_at":"2026-02-22T01:42:43.127Z","avatar_url":"https://github.com/oszuidwest.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# rpi-umpx-decoder\nThis repository contains the MicroMPX decoder software for [ZuidWest FM](https://www.zuidwestfm.nl/) and [BredaNu](https://www.bredanu.nl/) in the Netherlands. The setup involves a Raspberry Pi 4 or 5 and a HiFiBerry audio board (DAC, DAC+, DAC2, Digi, etc.) for audio output. The system uses the [Thimeo MicroMPX decoder](https://www.thimeo.com/stereo-tool/micrompx-decoder/), which decodes MicroMPX composite signals for FM radio monitoring and distribution.\n\n# Preparing the Raspberry Pi\n- Install Raspberry Pi OS Lite 13 (Trixie) 64-bit.\n- Follow the guide at https://www.hifiberry.com/docs/software/configuring-linux-3-18-x/ for HiFiBerry setup.\n- Gain root access with `sudo su`.\n- Download and execute the install script using `/bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/oszuidwest/rpi-umpx-decoder/main/install.sh)\"`.\n\n# Configuration options during installation\nThe installer will prompt for:\n- Whether to perform all OS updates (default: yes)\n- Optional heartbeat monitoring integration with UptimeRobot\n- Log retention period in days (default: 7)\n\nAfter installation completes, the Pi will reboot automatically. The MicroMPX web interface will be accessible at `http://[raspberry-pi-ip]:8080`.\n\n# HiFiBerry configuration examples\nAdd the appropriate device tree overlay for your HiFiBerry model to `/boot/firmware/config.txt`:\n```bash\n# For DAC+ Standard/Pro/XLR\ndtoverlay=hifiberry-dacplus\n\n# For DAC2 HD\ndtoverlay=hifiberry-dacplushd\n\n# For Digi+/Digi2\ndtoverlay=hifiberry-digi\n```\nSee HiFiBerry documentation for other models.\n\n# Service management\nManage the MicroMPX service using standard systemd commands:\n```bash\nsystemctl status micrompx     # Check service status\nsystemctl restart micrompx    # Restart service\njournalctl -u micrompx -f     # View logs\nsystemctl status ramdisk      # Check RAM disk status\n```\n\nThe MicroMPX binary is located at `/opt/micrompx/MicroMPX_Decoder`. Logs are written to `/home/micrompx/.MicroMPX_Decoder.log`, which is symlinked to a RAM disk at `/mnt/ramdisk` to protect your SD card from excessive writes. The systemd service files are in `/etc/systemd/system/`.\n\n# Technical details\nTo prevent SD card wear from verbose logging, all MicroMPX logs are written to a 256MB RAM disk. Logs are automatically cleaned up after your configured retention period via a cron job. On Raspberry Pi 4, HDMI audio output is disabled to allow the analog output to be used for signal monitoring (note that Raspberry Pi 5 does not have an analog audio output).\n\nIf you enable heartbeat monitoring during installation, the system will perform a `wget --spider` request to your specified URL every minute, which works with uptime monitoring services like [Uptime Robot](https://uptimerobot.com/?rid=6f699dbd539740).\n\n# Troubleshooting\nIf the script exits with \"No HiFiBerry card configured\", make sure you've added the correct `dtoverlay` line to your `/boot/firmware/config.txt` file and rebooted.\n\nIf the service won't start, check `journalctl -u micrompx -f` for error messages. Common issues include port 8080 already being in use or the audio device not being properly configured.\n\nIf you can't access the web interface, verify the service is running with `systemctl status micrompx` and make sure you're using the correct IP address.\n\n# License\nThis project is licensed under the GPLv3 License - see the LICENSE file for details.\n\nFor bugs, feedback, and ideas, please contact us at `techniek@zuidwesttv.nl` or file a pull request with your idea.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foszuidwest%2Frpi-umpx-decoder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Foszuidwest%2Frpi-umpx-decoder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Foszuidwest%2Frpi-umpx-decoder/lists"}