Hi,
A normal user under Linux doesn't have the permissions to access arbitrary USB devices because of security reasons.
In your message did not indicate what SDR receiver are you using. Assume that it is RTL dongle.
You need to add the udev rules to make the dongle available for the non-root users. First you can check to find the vendor id and product id for your dongle.
1. The way to do this, run the command:
lsusbIf dongle was connected, on a console you will see among others the line, for example:
QuoteBus 003 Device 002: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
or
Bus 001 Device 006: ID 0bda:2832 Realtek Semiconductor Corp. RTL2832U DVB-T
Each line has the important parts are
"0bda" (the vendor id) and
"2838" (or "2832 for other instance") (the product id):
Bus 003 Device 002: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T2. Create a new file (as root) in
/etc/udev/rules.d/20.rtlsdr.rules that contains the following line:
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="2838", GROUP="adm", MODE="0666", SYMLINK+="rtl_sdr"With the vendor and product ids for your particular dongle.
This should make the dongle accessible to any user in the adm group and add a /dev/rtl_sdr symlink when the dongle is attached.
3. Check and set (if necessary) the file permissions:
sudo chmod u=rw,g=r,o=r 20.rtlsdr.rules4. Now to unplug the dongle from port.
Now you can either reboot computer or run the command (as root) to instruct
udev to reload all rule files by running command:
sudo udevadm control --reload-rules; udevadm trigger.
5. Re-plug the dongle to the USB port. After re-plugging your dongle (or rebooting) you should be able to access the RTL dongle as a normal user. If you still can't access, make sure that you are a member of the
plugdev group:
cat /etc/groupAnother reason can be that kernel also automatically loads the dvb driver module for the dongle to make it available as a TV tuner. This causes the program to complain that something is already using the dongle.
You can blacklist the offending modules by create a file in directory
/etc/modprobe.d with a
*.conf extension (for example
block-rtl.conf) with these contents:
blacklist dvb_usb_rtl28xxu
blacklist rtl2832
blacklist rtl2830Now you must reboot computer.
For a quick kill of the kernel module you can just do:
sudo rmmod rtl2832_sdr; rmmod dvb_usb_rtl28xxuRegards,
sergsero
thank you Sergsero, it now works i had missed the need to do sudo chmod u=rw,g=r,o=r 20.rtlsdr.rules