Skip to content
View in the app

A better way to browse. Learn more.

Ham Radio Base -Powered By Ham CQ DX

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Solar
SFI 128
SN 73
A 6
K 1 Quiet
X-Ray B9.3
Wind 433.7 km/s
Aurora 2
Updated 23:30 UTC HamQSL · N0NBH
Day 80/40m Fair 30/20m Good 17/15m Good 12/10m Fair
Night 80/40m Good 30/20m Good 17/15m Good 12/10m Poor

Callsign Lookup
_
Vanity Call Signs Available
Enter filters above and click Search.
ⓘ Callsign lookups are in real time via the FCC database. Vanity callsign availability is refreshed daily at 6:00 AM CST. The vanity search may be unavailable for a few minutes during this update.
Live DX spots
Live DX Spots — 70cm via PSKReporter · scroll or pinch to zoom
Band
Mode
Time
Loading map data…
MHz DX Spotter Info
Recent spots
Select a band above to load spots
Ready — select a band to fetch live spots

using a pi zero to auto-log contacts during contests — anyone done this?

so ive been messing around with a raspberry pi zero w for a few months now trying to get it to handle some of the tedious stuff during contests. right now im running it headless and using a python script to pull data off my IC-7300 via the USB-serial connection, basically reading the frequency and mode and then pushing that into a simple sqlite database. nothing fancy yet but it works most of the time.

the part thats giving me grief is the timing. during a pileup things get hectic and the script sometimes drops a line or gets behind and i end up with duplicate entries or missed contacts. i think its a threading issue but honestly my python is only decent, not great. ive looked at asyncio a little but havent gone down that rabbit hole yet.

also thinking about wiring up an arduino nano as kind of a middle layer to handle the keyer input separately so the pi isnt trying to do too much at once. has anyone actually done something like this where the arduino handles the low latency stuff and the pi handles the logging and network side? curious if thats overcomplicating it or if thats actually the right way to split the work.

  • Replies 1
  • Views 11
  • Created
  • Last Reply

Top Posters In This Topic

Featured Replies

yeah ive done something similar with a pi 3B and a nano working together for a WSPR beacon a while back. the split you're describing actually makes a lot of sense — arduino is way better for anything timing critical, like keying or PTT, because the pi's linux scheduler just isnt deterministic enough. you'll get random 10-50ms jitter from the OS doing whatever it wants and that kills you for CW or anything that needs tight timing.

for the logging side the threading issue might just be that youre not using a queue properly. i had the same problem. what fixed it for me was putting a thread-safe queue between the serial reader and the database writer so they never block each other. the reader just stuffs things in the queue as fast as it can and the writer pulls from it at whatever pace it needs. dropped my duplicates to basically zero. look up the queue module in python if you havent, its pretty straigthforward once you see an example.

not done the contest logging thing specifically but i use a pi 4 for rig control and a small arduino mega handles all my antenna switching relay logic. works great and honestly once you get the serial comms figured out between them its not that complicated. i use a really simple byte protocol, just send a command byte from the pi and the arduino acks it, nothing exotic.

one thing to watch with the zero w specifically — the wifi on it can cause weird timing hiccups if its doing a lot of network traffic at the same time as the serial stuff. ran into that. might be worth disabling the wifi power management mode, theres a simple command for it. or just use ethernet with a little adapter if your setup allows it.

Guest
Reply to this topic...

Affiliate Disclosure: As an Amazon Associate, Ham Radio Base earns from qualifying purchases. Some links throughout this website may be affiliate links. If you purchase a product through one of these links, we may earn a commission at no additional cost to you. Your support helps us continue creating free articles, tutorials, reviews, and resources for the amateur radio community. N0TLB © Ham Radio Base - Powered by the Ham CQ DX Community. All rights reserved.

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.