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 40
A 16
K 2 Quiet
X-Ray B6.1
Wind 617.0 km/s
Aurora 3
Updated 11:00 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 arduino to automate my antenna switching, anyone done this?

 Loading...

so ive been messing around with an arduino mega for the past few weeks trying to get it to handle my antenna switching automatically based on band changes from my IC-7300. the idea is pretty simple — radio sends CI-V commands out the USB, the arduino reads that, figures out what band im on, and fires the right relay to switch between my yagi and my vertical. on paper it makes total sense but im running into weirdness with the serial timing.

basically what happens is the arduino will catch maybe 3 out of 5 band change commands correctly and then just miss the others entirely. ive tried adjusting the baud rate, tried adding delays, tried using a software serial on different pins thinking maybe the hardware serial was conflicting with something but nothing has really fixed it consistently. im using a level shifter between the radio and the arduino because the CI-V runs at 5v logic and i didnt want to risk the mega's pins.

also considered just ditching the arduino and moving to a raspberry pi zero W so i could run a proper python script with threading and not worry about blocking loops — but that feels like overkill for just switching 4 relays. has anyone actually built something like this that works reliably or am i missing something obvious with the serial handling

  • Replies 1
  • Views 28
  • Created
  • Last Reply

Top Posters In This Topic

Featured Replies

yeah i did almost exactly this with my 7300 and an arduino uno a while back. the serial timing issue you're describing sounds like a buffer problem to me — the CI-V output from icom radios can sometimes send incomplete frames if the radio is still mid-transaction when you poll it. what helped me was not trying to parse on the fly but just dumping everything into a ring buffer and then processing it after a short settling delay, like 50ms or so after the last byte comes in. took a bit of fiddling but it got reliable pretty fast after that.

also double check your baud rate actually matches what the 7300 is set to in the menu, i spent like two days chasing a ghost problem that turned out to be the radio was set to 9600 and i had the arduino at 19200. felt pretty dumb about that one.

honestly the pi zero W isnt that overkill for this, i know it sounds like it but once you have python doing the serial stuff it's actually way easier to debug and the threading thing you mentioned is real — blocking loops on the arduino are annoying when you're dealing with timing sensitive serial protocols. i run a pi zero in my shack handling CAT control, a small web interface for remote logging, and a couple gpio lines for PTT and band data all at once and it doesnt even break a sweat. the only downside is boot time if you lose power but you can hack around that pretty easily.

  • Guest locked, unpinned, unlocked and pinned this topic
Guest
Reply to this topic...

Account

Navigation

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.