********** AllStarLink [ASL] Version Info **********
OS : Debian GNU/Linux 12 (bookworm)
OS Kernel : 6.12.25+rpt-rpi-v8
Asterisk : 22.4.1+asl3-3.5.4-1.deb12
ASL [app_rpt] : 3.5.4
Inquiry
I have what appears to be low drive level out of my CM108 fob. I cant drive a high level TX audio input hard enough to get the correct level of deviation. I’m seeing about 180mV level which gets me about 2.5kHz deviation. I have read that the CM108 is good for about 1 volt of output level, but I just cant get that out of it.
What is the expected level from the CM108 with the level in simpleusb-tune-menu set to 999?
Dion… Indeed, my first impulse was what you mentioned… the possibility of the radio’s input circuitry loading down the audio output from the CM108 fob. Could you possibly try parallelling the 100K resistor with another 100K, or maybe even a lower value, to see if that improves the audio drive? Otherwise (and unfortunately), you may need to add a preamp stage. The only experience I’ve had with interfacing CM108 fobs is connecting them to older Kenwood and Motorola commercial radios. Honestly, I’ve never checked the output of the CM108 fobs I’m using but always had enough audio to drive those radios to full deviation with a simpleusb setting of between 700 and 900.
To add another resistor was my next move, but since I’ve never had to mod any other radio before, including the same model as this, it led me to investigate the level out of the CM108.
I read about a txboost feature, and I’m certain I have used it before, but now it seems as though it doesnt exist. If I could simply just get the level out of the CM108 that the datasheet says its capable of, it would just work.
The level you mention is what I would expect to see, but its just not happening, even with the level set to 999. I guess the software is designed to work with microphone level inputs, not high level inputs like I prefer to use.
Reminds me of this thread, where several users mentioned that ASL1/2 allowed the txboost option in chan_simpleusb, but someone else replied that it only ever existed in chan_usbradio...
You are not the only one having chan_simpleusb TX drive issues with ASL3. Can you try using chan_usbradio instead?
Unfortunately, it looks like this thread died and never went anywhere.
If you are driving a low impedance load like a 500 ohm line level input, use an interface that can drive low impedance loads such as the original RIM or the RA-35/RA-40/RA42. These all have an amp that can drive low impedance loads.
A working CM108 will drive a 32 ohm headset directly. There's no op amp on the RA series URIs. There's an LM386 power amp for driving loads lower than 32 ohm. The RA-25/33/38 don't use the LM386 at all. Mine produce > 2V p-p output, which is typical. 180 mv output indicates a defective part or wiring error.
I took the fob from the node and put it into my LMDE laptop. Initially the level was down. Increasing the mixer controls all the way up still resulted in low output. I then started alsamixer in the terminal, selected the CM108 fob as the device and noticed the “Speaker” slider was near minimum. I increased this to maximum, ran another 100% amplitude 1k sine wave test in Audacity and now I see 1.4V p-p out of the fob. So I now know that its not a defective CM108, but something happening in software in the ASL3 image thats limiting the output. The speaker level control is not available in alsamixer in the ASL3 Pi image it seems - it appears as “Headphone” instead.
I generated a 1k 100% amplitude tone in Audacity, then sent the .wav file to the node. Killed asterisk so the sound fob was available. I used aplay to play the test tone with the mixer set as it was in simpleusb-tune-menu, keyed the transmitter and it was in deviation limiting. I can back the alsamixer slider off to about half way and still get 3k deviation.
I ‘amplified’ the 100% amplitude test tone by negative 10dB in Audacity and played it on the node with the previous method with the alsamixer set to maximum and I get the ~3kHz deviation that I should be getting in simpleusb-tune-menu. Where is the missing 10dB in ASL?
I converted the -10dB .wav file to ulaw. With simpleusb-tune-menu set to 999, I can do rpt localplayand get 2.6kHz deviation. If I do rpt playbackI get the ~3kHz that I measured with the aplay method. Why do the two rpt play methods produce different level outputs?