Local Monitor - have I got it wrong?

Setup Information

Asterisk : 22.4.1+asl3-3.5.4-1.deb12
ASL [app_rpt] : 3.5.4

Inquiry

I typically have two nodes that I connect to in "Local Monitor" mode by default that I...monitor. One of the nodes is a node remotely connected to a local repeater (that I host), the other is a nearby, but out of RF range repeater node.

I've discovered that if I change the local repeater node to Tranceive mode and transmit, the audio from the other connected node (which is in "Local Monitor" mode) is transmitted along with my transmission. I'm using DVSwitch hUC as the transmit/receive client on the same server as my node (pi5).

My understanding of "Local Monitor" mode is that this should not happen - do I have this wrong?

I did find that I had the rpt.conf value for linkmongain set to zero for my node, and have since changed it to -32 to see if this makes a difference. I have yet to test this. But I don't think I should have to do this?

Doesn't "Local Monitor" mode mean exactly that - that only the local node should receive the audio?

Just a quick check Myles...

; Link Commands

; 1 - Disconnect specified link
; 2 - Connect specified link – monitor only
; 3 - Connect specified link – tranceive
; 4 - Enter command mode on specified link
; 5 - System status
; 6 - Disconnect all links
; 7 - Last Node to Key Up
; 8 - Connect specified link – local monitor only
; 9 - Send Text Message (9,<destnodeno or 0 (for all)>,Message Text, etc.
; 10 - Disconnect all RANGER links (except permalinks)
; 11 - Disconnect a previously permanently connected link
; 12 - Permanently connect specified link – monitor only
; 13 - Permanently connect specified link – tranceive
; 15 - Full system status (all nodes)
; 16 - Reconnect links disconnected with “disconnect all links”
; 17 - MDC test (for diag purposes)
; 18 - Permanently Connect specified link – local monitor only

(also notice these are all commented out)
The above are not commands themselves. They are the internal ilink command structure that you have to assign a command to achieve.

**
1 = ilink,1 ; Disconnect specified link
2 = ilink,2 ; Connect specified link – monitor only
3 = ilink,3 ; Connect specified link – tranceive
4 = ilink,4 ; Enter command mode on specified link
70 = ilink,5 ; System status

For instance (only example)

8 = ilink,18 ; would make *8 the command to run ilink 18 to create local monitor only

But before you just plug that in a try it, make sure that you don’t have any other commands that start with 8 as they would never execute.

801 = ilink,18

What do you have for ilink,18 assignment ? That is the command you should be using.
(I don't know what the current default is as I don't use defaults)

If you have already connected to a node in monitor, I don't know if local monitor only command will change that status... could be. Never tried.

Hi Mike,

Thanks for taking the time.

These are as I have them and I've not changed them.

;;;;;; Mandatory Command Codes ;;;;;
1 = ilink,1                         ; Disconnect specified link
2 = ilink,2                         ; Connect specified link -- monitor only
3 = ilink,3                         ; Connect specified link -- transceive
4 = ilink,4                         ; Enter command mode on specified link
70 = ilink,5                        ; System status
99 = cop,6                          ; PTT (phone mode only)

I've uncommented out the 800's as below:

806 = ilink,6                     ; Disconnect all links
807 = ilink,7                     ; Last Node to Key Up
808 = ilink,8                     ; Connect specified link -- local monitor only
;809 = ilink,9,1999,"Testing"      ; would send a text message to node 1999 replace 1999 with 0 for all connected nodes
810 = ilink,10                    ; Disconnect all RANGER links (except permalinks)
811 = ilink,11                    ; Disconnect a previously permanently connected link
812 = ilink,12                    ; Permanently connect specified link -- monitor only
813 = ilink,13                    ; Permanently connect specified link -- transceive
815 = ilink,15                    ; Full system status (all nodes)
816 = ilink,16                    ; Reconnect links disconnected with "disconnect all links"
;817 = ilink,17                    ; MDC test (for diag purposes)
818 = ilink,18                    ; Permanently connect specified link -- local monitor only

I use *818-node to put the two nodes in 'local monitor' mode at startup.

This appears to work fine when both are in 'local monitor' mode i.e. there is no audio crossover between the two.

If I put one of the nodes in Transceive mode *3-node, it continues to work as it should i.e. there is no audio crossover between the two when not transmitting.

However, it appears that when I transmit on the node in Transceive mode, any received (audio) from the other node which is still in 'Local monitor' mode, is 'broadcast' along with my audio out over the radio.

There is a previous post:
*8xxxx command ( local monitor)
That hints at a similar issue, but not quite the same and using an older version?

Well, I can conceive that this may not work well on some duplex modes.

So, I know this is getting harder to get ones head around,
can you explain which nodes are not using duplex=2 if any ?

It does get hard quickly :slight_smile:

For the 'remote node' I'm hosting, I use a private node to connect to the physical radio using:

duplex = 0
linktolink = yes

this is permanently connected to a public node. The public node is what connections i.e. DVSwitch hUC are made to. This configuration gives me better control.

I don't know how the other remote node is configured.

I can't quite see how the duplex setting is related to the issue of the 'local monitor' setting, but I'm likely missing something.

At this stage, I want to rule out DVSwitch. I'm beginning to think DVSwitch is what is passing the audio through from one node to another. When the issue occurred, DVSwitch was not sending the audio to the speakers, so it must have been going somewhere else or was muted - I'm thinking it may have been combined with the microphone input being sent out. I need to think of a way to confirm if this is happening or not. I think I can do this with an additional USB sound card plugged in and route the output to that...

Thanks for your help so far Mike, leave it with me for a couple of days and I'll report back. If I can rule out DVSwitch, I'll put together a diagram showing how I have things 'connected' which will no doubt help you help me :slight_smile:

Myles.

So Myles, the duplex mode has a lot to do with what you do not see...
virtual switches pipeing audio different directions, depending on that duplex mode and event/actions on the system.
Not everything you may want is possible in all duplex modes. For each mode has a targeted purpose.

That is the best I can explain it anyway.
Hope it helps you visualize it in your head. It's hard till you have to think it through a few times. And easy to forget when you have not dealt with it for a while.

Thanks Mike. I will do some more reading/investigating and see what I can find.

Perhaps my understanding of half/full duplex in the 'normal' communications sense is a little different from the way AllStarLink does it, or as I think you are suggesting, in some duplex modes some things don't/can't work as you would expect.

Embarrassed to say that I believe I may have found the culprit.

Nothing to do with AllStarLink, nor DVSwitch.

I have a nice little switch on my external soundcard that allows the soundcard to combine the audio from the PC and microphone and it was turned on. This would have allowed the audio from the 'local monitored' node to mix with my microphone input (output from the radio).

The odd thing, is, that I did not hear the audio from the other node, set for 'local monitor', at the time of the transmission, but those listening on the other end of the radio transmission did. Normally I would. So I need to try to work that one out. Makes my head hurt.

I'll set this as the solution for now and hope that this was the issue - that being my own stupidity :wink: