Synchronizing 2 radios to make duplex repeater ?

Post Reply
ok1pt
Posts: 167
Joined: Mon Jul 20, 2020 3:38 am

Synchronizing 2 radios to make duplex repeater ?

Post by ok1pt » Thu Dec 31, 2020 1:00 pm

I can't understand the reason, why we can't use 2 GD-77s for full duplex repeater construction. In the list of features not going to be implemented, there's the following:

Full duplex repeater using 2 GD-77 connected to PiStar
This is not technically possible, because :

1. Its not possible to control the timing of the 2 radios to the necessary precision via the USB connection
2. MMDVMHost at the core of PiStar does not support this type of configuration.

I don't understand point 1.
Please correct me, where I have a mistake in my thoughts.
1) Let's start with TX radio. It needs to be fed with full frame structure containing two timeslots. I believe that it's the same what we are sending to it in the hotspot mode, just with the difference that we are sending the same payload to both timeslots. So, is there any problem to send the regular two-timeslot stream required for the duplex mode ?
2) What's happening in the air ? The client radios will receive this stream, will synchronize on the particular timeslot, and the one which wants to transmit will start to send its frames properly synchronized to the transmitted frames (if the repeater is off, the client will send the starting frames "blindly" and wait for waking the downstream going up, and then it will synchronize on it).
3) So, the Rx radio of the repeater will receive frames already synchronized by the client radios, and the radio will send them to its USB port. Theoretically we can read both timeslots, because the radios are synchronized and they don't collide. I believe that Linux kernel on modern multi-core RasPi is able to read the frames and properly supply them to the process/thread, which awaits them. And I believe as well, that GD-77 can send data of both received timeslots on its USB port.
In the 3 previous points I didn't find any place, where the PiStar needs to take a special care to synchronize the radios. The Tx radio is the master of the sync chain, the client radios are subordinated to it, the repeater Rx radio is subordinated to the client radios and the receiving process in PiStar is subordinated to the Rx radio. The sync chain seems to be fully closed.
So, where is the problem ?
Regarding point 2, I believe that MMDVMHost could be adapted for this mode, if it is technically possible. I'm relatively experienced with VoIP platforms on Linux (especially Asterisk, including writing low-level drivers for audio boards I/O) and I believe that I know its real-time possibilities enough to be able to judge that it should be doable (maybe not with RasPi Zero, but with any more robust one for sure).
WIth regards / 73, Pavel

G4EML
Posts: 919
Joined: Sat Nov 16, 2019 10:01 am

Re: Synchronizing 2 radios to make duplex repeater ?

Post by G4EML » Thu Dec 31, 2020 6:44 pm

Transmitting both timeslots using a GD77 is theoretically possible but it is not as simple as just supplying it with a full frame of data. To implement the hotspot mode Roger has been very clever and is actually taking the encoded data from the host and decoding it back to the source data which is then sent to the HRC6000 which re-encodes it for transmission. As far as we know it is not possible to bypass the encoder chip and drive the modulator directly as is done in a MMDVM system. Whilst the HRC6000 is capable of operating in Base Station mode this would need suitable firmware to be developed. As we have very little information on the chip it would be a difficult task.

However, even if we could transmit the two timeslots and Base Station synchronising signals you still could not use a separate radio as the receiver.

The receiver would indeed receive the two timeslots but there is no way that it can identify which is TS1 and which is TS2. The incoming over the air transmissions from a handheld sending to a repeater are identical for each timeslot, there is no data to identify which is which.
The only way a repeater receiver knows which timeslot is which is because it is synchronised with its associated transmitter which identifies the timeslot in the CACH (Common Announcement Channel) burst sent between the two timeslots. When an HRC6000 is working as a repeater it is in control of both the transmitter and receiver and both are synchronised. It would be extremely difficult (impossible?) to synchronise two different radios with two different clocks and HRC6000s.

ok1pt
Posts: 167
Joined: Mon Jul 20, 2020 3:38 am

Re: Synchronizing 2 radios to make duplex repeater ?

Post by ok1pt » Thu Dec 31, 2020 7:01 pm

Hi!
Many thanks for explaining the problem. It's clear now. I didn't read the DMR standard deeply enough so I didn't get the info that the TS number is not a part of the TS frame and that it should be synchronized according to the CACH.
OK, so I can leave this dream and I'll start to dream about something different!
Many thanks again!
WIth regards, Pavel

Post Reply