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 201
SN 126
A 14
K 1 Quiet
X-Ray C4.3
Wind 398.1 km/s
Aurora 1
Updated 11:30 UTC HamQSL · N0NBH
Day 80/40m Poor 30/20m Good 17/15m Good 12/10m Good
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 an arduino to automate my antenna switching — anyone done this?

 Loading...

so ive been messing around with this idea for a while now and finally started putting something together on the bench last weekend. basically i want to use an arduino mega to handle all my antenna switching automatically based on what band i QSY to — right now im manually flipping relays and its getting old real fast especially during contests when im bouncing between 40 and 15.

the plan is to read the band data output from my radio (its an IC-7300 so the CI-V bus is available) and then drive a relay board to select the right antenna. ive got a raspberry pi 4 running fldigi and some logging software already so im thinking maybe the pi handles the higher level logic and just sends commands down to the arduino over USB serial. the arduino then does the actual relay switching since i dont really trust the pi's GPIO for anything timing critical or that has to be electrically isolated from the RF side.

has anyone actually done something like this or am i overcomplicating it? i feel like the CI-V parsing on its own is gonna be a pain but there seem to be some libraries floating around. also not sure if i need opto-isolators between the arduino and the relay board or if the relay board i got already has them built in — its one of those cheap 8-channel ones off amazon so who knows.

  • Replies 1
  • Views 3
  • Created
  • Last Reply

Top Posters In This Topic

Featured Replies

yeah i did almost exactly this about two years ago, except i used a nano instead of a mega and was only switching between two antennas so it was pretty simple. the CI-V parsing is actually not that bad once you get the framing figured out — the tricky part is that the 7300 doesnt always spit out band data unsolicited, you might have to poll it. there's a library on github called IC7300-CI-V or something similar, cant remember the exact name but a search will find it.

on the relay board question — most of those cheap amazon boards already have optoisolation built in, look for the EL817 or PC817 chips near the input headers. if you see those youre probably fine. i'd still put a snubber diode across any inductive load you're switching just to be safe but for a basic antenna switch the relay contacts are doing all the work anyway so RF isolation from the arduino side is less of a concern than you might think.

the pi doing higher level logic and the arduino doing the actual I/O is a solid approach, thats kind of the standard way to split it and it means you can update the logic without reflashing the microcontroller every time. just make sure your serial comms have some kind of handshaking or at least a watchdog on the arduino side so if the pi crashes the relays dont do something weird.

dont overcomplicate it honestly. i tried the pi plus arduino combo for a rotor controller project and ended up just doing everything on the pi with a relay HAT and it was fine. depends on what your timing requirements actually are i guess. for antenna switching youre probably not talking about microsecond precision so the pi GPIO is probably okay if you isolate it properly.

that said the CI-V stuff is kind of annoying to get right and having it on a dedicated arduino that just does that one job isnt a bad call.

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.