9M2PJU APRS Thursday Check-in Bot

9m2pju aprs thursday check in bot

If you’re active on APRS, you’ve probably come across the #APRSThursday net — a fun global event that happens every Thursday to encourage APRS messaging.

It’s organized by Michael KC8OWL, and the idea is simple: just send a short APRS message to ANSRVR sometime on Thursday (UTC). The format is:

CQ HOTG <Your message here>

That’s it. But like many of us, I sometimes forget to send mine. So I decided to build a little automation to take care of it.


💡 Why I Built This

I wanted something that would:

  • Automatically send my check-in message every Thursday
  • Run quietly in the background
  • Work on my DietPi (Raspberry Pi) server
  • It is easy to manage with Docker

And that’s how the 9M2PJU APRS Thursday Check-in Bot was born.


🐧 What It Does

This bot runs 24/7 and sends the following APRS message every Thursday at 9:00 PM Malaysia Time (MYT):

CQ HOTG Hello from 9M2PJU-4 APRS Bot

It connects to aprs.hamradio.my:14580 using aprslib and sends the message exactly the way the #APRSThursday net expects.


🧪 You Can Also Test It Anytime

I also added a test mode. Just run:

docker compose run --rm aprs-bot python aprs_bot.py --test

..and it sends the message instantly. Useful for checking if your server or internet connection is working properly.


⚙️ Tech Stuff

  • Written in Python
  • Dockerized with a super lightweight python:alpine image
  • Runs well on low-resource devices

You just clone the repo, build it with Docker, and let it run. No need to set up cron or anything.


📥 Want to Use It?

Here’s the GitHub repo:
👉 https://github.com/9M2PJU/9M2PJU-APRS-Thursday-Check-in-Bot

Setup is simple. Just:

git clone https://github.com/9M2PJU/9M2PJU-APRS-Thursday-Check-In-Bot.git
cd 9M2PJU-APRS-Thursday-Check-in-Bot-Dockerized
docker compose up -d --build

That’s it. The bot will now check in every Thursday on its own.


💬 Final Thoughts

I built this for myself, but I figured it might help someone else, too. If you want to support the APRS community and keep message-based activity alive, this is an easy way to do it.

Feel free to fork, improve, or just use it as-is. I’ll keep updating it if I come up with new ideas.