ASL3 on NanoPi Zero2 (Debian 13) – chan_simpleusb stuck at Card is -1 / "associated USB device string not found"

Setup Information

Use sudo asl-show-version to obtain this information from the console or SSH

********** AllStarLink [ASL] Version Info **********

OS : Debian GNU/Linux 13 (trixie)
OS Kernel : 6.1.141

Asterisk : 22.9.0+asl3-3.9.3-1.deb13
ASL [app_rpt] : 3.9.3

Installed ASL packages :

Package Version
============================== ==============================
allmon3 1.8.1-1.deb13
asl3 3.18-2.deb13
asl3-appliance 2.1.0-2.deb13
asl3-asterisk 2:22.9.0+asl3-3.9.3-1.deb13
asl3-asterisk-config 2:22.9.0+asl3-3.9.3-1.deb13
asl3-asterisk-modules 2:22.9.0+asl3-3.9.3-1.deb13
asl3-menu 1.18-1.deb13
asl3-update-nodelist 2.0.0-1.deb13
asl-apt-repos 2.0-1.deb13
cockpit 337-1+deb13u1
cockpit-bridge 337-1+deb13u1
cockpit-networkmanager 337-1+deb13u1
cockpit-packagekit 337-1+deb13u1
cockpit-sosreport 337-1+deb13u1
cockpit-storaged 337-1+deb13u1
cockpit-system 337-1+deb13u1
cockpit-wifimanager 1.2.0-1.deb13
cockpit-ws 337-1+deb13u1
dahdi 1:3.1.0-2.1
dahdi-linux 1:3.4.0-11.asl.deb13
pi@NanoPi-Zero2:~$

Inquiry

Hello,

I am running ASL3 (Asterisk 22.9.0+asl3-3.9.3-1.deb13) on a headless NanoPi Zero2 (Debian 13, arm64) with a single C-Media electronics USB radio interface (0d8c:0012).

Despite valid group permissions and clean configuration structures, chan_simpleusb refuses to initialize the hardware faders, resulting in Card is -1 and no audio/PTT throughput.

1. Hardware & System Context

  • ALSA Cards: The onboard codec is card 0; the C-Media fob is card 1.

Plaintext

pi@NanoPi-Zero2:~$ cat /proc/asound/cards
 0 [rk3528acodec   ]: simple-card - rk3528-acodec
 1 [Device         ]: USB-Audio - USB Audio Device

  • Permissions: asterisk user is confirmed in plugdev (46) and audio (29). The running PID verifies group 46 is active in real-time (/proc/$PID/status).

  • Device Nodes: /dev/hidraw0 exists and is owned by root:plugdev with crw-rw---- permissions.

  • Faders: amixer -c 1 scontrols reports the expected standard controls: 'Speaker',0, 'Mic',0, and 'Auto Gain Control',0.

2. The Core Symptoms

  1. The OSS Fallback Loop: If devstr is left empty or set to the physical topology string (1-1.1:1.0), chan_simpleusb enters a rapid crash loop throwing: Unable to open DSP device 1: No such file or directory.

  2. The "Not Found" Silent Failure: When forcing devstr = hw:1 or devstr = hw:Device, the CLI remains stable and quiet, but susb show settings returns Card is -1.

  3. When launching simpleusb-tune-menu and choosing V (View COS/CTCSS/PTT Status), it fails explicitly with:

    Device 298720 is selected, the associated USB device string hw:1 was not found

3. Enumeration Anomaly

When entering the utility and selecting option 1) Select active USB device, instead of scanning the USB bus and printing the device description, it presents a duplicate loop of the node number itself:

Plaintext

Please select from the following USB devices:
1) Device [298720]
2) Device [298720]

Even if selecting an instance and writing the parameters (W), the mismatch persists.

It appears chan_simpleusb or the underlying ASL3 device discovery engine is misinterpreting the ALSA/HID layer on this specific arm64 platform or hitting a configuration parsing loop.

Has anyone encountered this specific hardware string mapping failure on newer Debian 13 ARM targets, or is there a state database file I need to clear out to fix the duplicate device enumeration?

Thanks,
Cam

I'm willing to bet that your problem is the kernel for that board doesn't include oss support, which is currently required.

You ran this through an AI engine that gave you a whole series of wrong assumptions and advice. @N2DYI is undoubtedly correct - NanoPI is clearly building it's own kernel which lacks the OSS driver. Nothing you can do about that. We're close to changing over to ALSA though.

Thanks. I was starting to suspect a missing OSS but was thinking that since Trixie dropped OSS and ASL3 was moving to ALSA, that couldn't be it. I'll add OSS and confirm.

Cheers!

You should be able to use the osspd package to emulate it via the userspace.

Added osspd and still no luck. I believe asterisk is a member of all relevant groups so I'm not sure where the permission denied is coming from.

[2026-07-05 18:40:22.900] ERROR[28578]: chan_simpleusb.c:1561 setformat: Channel 298720: Unable to open DSP device 1: Permission denied.

what are the permissions on /dev/dsp?

osspd will not work with app_rpt. We're not just using /dev/dsp but other parts as well. You need the full OSS kernel module. As I said, ALSA support is coming soon.

This output has me a bit perplexed. Can you check your /etc/asterisk/simpleusb.conf file and look to see how many sections are present with :

[298720](node-main)
...

There should be only one stanza/section for the node. If you find more than one stanza then remove all but the first [298720] stanza and see if that helps.

Also, can you exec the following commands and share the output :

asl-find-sound

and

ls -l /dev/dsp*

Thanks N8EI for the clarification that the full kernel module is needed. I tried to compile the kernel with it but was missing some proper version files. I'll wait patiently for the ALSA release and throw a few bucks in for the effort.

BTW, the I only have one stanza for sure. The second Device entry appeared along the road of messing around but I forget exactly where.

I found in my notes that this ( the double device) happened when I swapped USB2RIG devices.