Commit graph

29 commits

Author SHA1 Message Date
Jonathan Naylor
7008c624d9 Regularise the local address handling across all of the protocol. 2021-04-25 11:10:35 +01:00
Daniel Caujolle-Bert
ec0bc51899
Fix network ports datatype (unsigned int -> unsigned short). UDPSocket: fix old bug using m_port instead of m_port[x]. 2021-04-25 07:47:06 +02:00
Daniel Caujolle-Bert
b5420fef15
Fix *Network::isConnected().
As m_enabled is changed accordingly to the modem current mode, it's not valid to use it for network connexion status.
2021-03-23 22:32:36 +01:00
Daniel Caujolle-Bert
27b7d3fc41
Add RemoteCommand 'status' command.
As DMRGateway, it reports connection status.

Command sent: "status" to port: 7642
dstar:n/a dmr:conn ysf:n/a p25:n/a nxdn:n/a fm:n/a

RemoveCommand has been slighlty modified, as using Log on a read-only filesystem simply forbids the strings to be displayed.
Another solution would be to set LogInitialisse's filePath to "/tmp/" for *nix systems.
2021-03-22 20:32:43 +01:00
Jonathan Naylor
7d3e899104 Clean ups for IPv6. 2020-09-06 12:54:08 +01:00
SASANO Takayoshi
9856025923 rewrite for UDPSocket renewal 2020-09-06 15:52:46 +09:00
SASANO Takayoshi
dad47317e6 set INADDR_ANY/IN6ADDR_ANY_INIT address string to m_socket
when CUDPSocket::open() is called with m_address (in CUDPSocket) is nothing,
IPv4 socket is created by "0.0.0.0" (INADDR_ANY) address.

This causes a problem that DMRGateway cannot connect to reflector on IPv6.
To choose default INADDR_ANY/IN6ADDR_ANY_INIT address, added
open(address_family) in UDPSocket.cpp.

Following code sets address string at construction, not modified.
	NXDNNetwork.cpp
	POCSAGNetwork.cpp
	YSFNetwork.cpp

Other codes does not set, modified open() -> open(address_family)
	DMRNetwork.cpp
	DStarNetwork.cpp
	MMDVMHost.cpp
	MobileGPS.cpp
	P25Network.cpp
	RemoteCommand.cpp
	RemoteControl.cpp

I think there is more clever method, but I have no other idea.

Maybe IPv6 support for digital radio works, but RemoteControl can work
IPv4 only.
2020-04-06 18:35:12 +09:00
SASANO Takayoshi
c92039d83b modified for IPv6 supported CUDPSocket 2020-04-06 18:34:54 +09:00
Jonathan Naylor
76badb28f1 Add more intelligence to the remote control. 2019-01-15 21:45:29 +00:00
Jonathan Naylor
b1544c26a2 More P25 network data changes. 2017-10-31 10:18:15 +00:00
Jonathan Naylor
aeca35a77a More changes to the P25 Network data layout. 2017-10-30 13:45:59 +00:00
Jonathan Naylor
929426aa0c Small change to the P25 network data format. 2017-10-30 12:23:49 +00:00
Jonathan Naylor
c0571edb0b Modify the P25 UID check slightly. 2017-03-29 20:46:27 +01:00
Ryan Butler
aae96a1caf This adds the ability to override the UID checking in P25 code to force 7 digit IDs.
Jonathan added this code due to a lack of CRC on P25 checking but some parties desire the ability to have any id.

It's understood that on networked connections, the need to use a 7 digit unique ID like the DMR ID is necessary.

This change is affected by adding a new parameter to the [P25 Network] section called OverrideUIDCheck and it defaults to 0.

The logic is, if the network is enabled, or if the network is disabled and the override is disabled, the check is made, otherwise it is not.

This has been field tested for all 4 configuration cases and found to work as described above.
2017-03-29 10:18:54 -05:00
Jonathan Naylor
2ac7e43929 Alter and clean up the P25 network protocol. 2016-11-01 19:01:37 +00:00
Jonathan Naylor
6fdfb93514 Simplify the P25 protocol. 2016-11-01 07:42:34 +00:00
Jonathan Naylor
9f65e2f4ef Bring debug logging into line with the other modes. 2016-10-14 09:30:10 +01:00
Jonathan Naylor
d11ade27fc Enable P25 RX network debugging. 2016-10-13 22:39:57 +01:00
Jonathan Naylor
dd73ccb578 Try and make the network protocol closer to that of a Quantar. 2016-09-29 18:47:36 +01:00
Jonathan Naylor
f627a18dd8 Handle network end markers and missing end of LDU frames. 2016-09-28 07:53:45 +01:00
Jonathan Naylor
b0aecf12eb Small tweaks for the network data format. 2016-09-28 07:17:11 +01:00
Jonathan Naylor
5e22470b98 Enable the P25 network interface. 2016-09-27 20:46:41 +01:00
Jonathan Naylor
3577fbb14b Compare the created network packets with a reference. 2016-09-22 21:26:03 +01:00
Jonathan Naylor
98ab0845f3 Clean up of processing. 2016-09-22 20:31:25 +01:00
Jonathan Naylor
21ce2abcb2 Finish off the basics of the P25 network handling. 2016-09-22 19:39:19 +01:00
Jonathan Naylor
1ff9095b09 Skeleton P25 audio transmission. 2016-09-21 07:51:13 +01:00
Jonathan Naylor
e9b330f01e Start work on the outgoing network data. 2016-09-20 07:53:16 +01:00
Jonathan Naylor
16ec0db6d8 Add full FEC decoding to LDU1 and LDU2. 2016-09-15 20:28:56 +01:00
Jonathan Naylor
9423fb25a6 Add P25 networking, and rename DMR network files. 2016-09-14 07:41:37 +01:00