Opened 17 months ago

Closed 17 months ago

Last modified 17 months ago

#63522 closed enhancement (wontfix)

SDRplay3: Please add ARM/M1/Apple Silicon support

Reported by: n2iw (Ming Ying) Owned by: ra1nb0w
Priority: Normal Milestone:
Component: ports Version: 2.7.1
Keywords: arm64 Cc: michaelld (Michael Dickens)
Port: SDRplay3

Description

I was trying to compile SDRPlusPlus with SDRPlay support on a M1 (ARM) Mac mini. I was able to install sdrplay3 by running "sudo port install sdrplay3". However, when I tried to compile SDRPlusPlus, I got following link error:

ld: warning: ignoring file /opt/local/lib/libsdrplay_api.so, building for macOS-arm64 but attempting to link with file built for macOS-x86_64

Please add ARM/M1 support for sdrplay3, thanks so much!

Change History (10)

comment:1 Changed 17 months ago by jmroot (Joshua Root)

Cc: michaelld added
Keywords: arm64 added
Owner: set to ra1nb0w
Status: newassigned
Summary: Please add ARM/M1/Apple Silicon support for sdrplay3sdrplay3: Please add ARM/M1/Apple Silicon support
Type: defectenhancement

comment:2 Changed 17 months ago by jmroot (Joshua Root)

Port: SDRplay3 added; sdrplay3 removed
Summary: sdrplay3: Please add ARM/M1/Apple Silicon supportSDRplay3: Please add ARM/M1/Apple Silicon support

comment:3 Changed 17 months ago by ra1nb0w

SDRplay driver is a binary blob and at the moment is x86_64 only.

No way to update or use it on a M1 machine. We need to wait the manufacture.

comment:4 Changed 17 months ago by ra1nb0w

Resolution: wontfix
Status: assignedclosed

comment:5 Changed 17 months ago by kencu (Ken)

It should run under Rosetta. Perhaps if SDRPlusPlus was marked as x86_64 only it would be able to sort out the archs correctly.

comment:6 Changed 17 months ago by ra1nb0w

Since it is a driver (interact with low level usb) I am not sure that it works. But trying to compile the software (SDRPlusPlus in this case) with -DCMAKE_OSX_ARCHITECTURES=x86_64 can be an idea...

comment:7 Changed 17 months ago by n2iw (Ming Ying)

Thanks for the comments! I realized that SDRPlay API was not open source after creating this ticket. But I was able to completely remove all ports and re-install everything in a iTerm2 running through Rosetta2, then compiled SDRPlusPlus. It actually worked! I'm able to run SDRPlusPlus with my SDRPlay RSP-1A now!

I was trying to create a support ticket in SDRPlay's website, but they changed their support page, I couldn't find where to create a ticket anymore. I reached out to them in Facebook, hopefully they will update their API to support M1 Macs.

comment:8 Changed 17 months ago by ra1nb0w

Wonderful! the performance and latency are acceptable?

comment:9 Changed 17 months ago by n2iw (Ming Ying)

Yes, it uses 40% or less of one CPU core. I don't have a way to measure latency, but comparing to my TS-590SG it's about a couple of characters late for 25 wpm CW signal, which is basically normal in my opinion. Next step for me is to figure out how to control connect SDRPlusPlus to RUMlogNG so I can have a working panadapter.

comment:10 Changed 17 months ago by ra1nb0w

FYI: I created and pushed SDRPlusPlus to macports

Note: See TracTickets for help on using tickets.