Communication between DMR and a computer network

 572 total views,  1 views today

Anders Fongen, November 2022

Abstract: The integration of a sensor network with services from voice communication, text messaging and Global Positioning System (GPS) creates opportunities for improved situational awareness, better safety for field operators, higher confidence in sensor readings and improved return on equipment investment. Digital Mobile Radio (DMR) has been the choice of communication technology for a series of experiments where these potentials have been investigated. Additional technology components used were mostly inexpensive and open source.

The article was published in the The Sixteenth International Conference on Sensor Technologies and Applications (SENSORCOMM 2022) October 2022, Lisbon Portugal.

Demonstration videos

Below are two demonstration videos from the integration experiment, view these if you are not into reading academic papers:

The first video shows how to integrate a DMR radio into an pub-sub network using the MQTT protocol.

Demonstration video from the integration experiment – pubsub intergation

The second video shows how two MMDVM units can provide routing of IP packets across a DMR radio link.

Demonstration video from the integration experiment – IP routing

Full text of article

Download source code

This link allows you to download the source code in the form of a compressed tar file. Please observe that this is experimental code not meant for production, and:

  • The module gwtest.py is the root module, and the execution starts there
  • You will need to import the module dmr_utils3, paho-mqtt, netifaces, etc.
  • You will need to inspect the source code and modify values for ip-addresses, DMR-ids, UDP port number, MQTT topics etc.
  • You need to configure pi-star so that it connects to the Controller at its IP-address.
  • The code also includes code to route IP-packets over a DMR link. Un-comment this code if necessary, but this will require the program to run in root mode (sudo…)
  • If you make improvements and want to share them with me, you are welcome to contact me. Please accept that I cannot spend much time on advice and support otherwise.

5 thoughts on “Communication between DMR and a computer network

  1. Many thanks for your great work, I would like to test the system but I’m facing some problem in running your code.
    I have some doubts also on MMDVM settings.

    Do you have some other documents on the setup ?

    Many thanks
    IK2WBK – Rino

    • Thank you for your interest. There are no changes in the MMDVM software, but some configration is needed: Your DMR master info (config web page) needs to point to the IP-address of the adapter, you may need to edit the /usr/local/etc/DMR_Hosts.txt on the MMDVM to make that happen. And the IP address of the MMDVM must belong to the same IP subnet as the adapter. There are debugging code there which you can uncomment to inspect the protocol dialog between the adapter the MMDVM. Besides, I assume that you have already configured the radio and the MMDVM with the same frequencies and color code? Good luck

      • Yes Anders, my MMDVM is well configured and working on brendmeiser network. So in MMDVM I need to change in DMR Network on Expert Configuration:
        Address 192.168.1.59
        RemoteAddress 192.168.1.59

        In the DMR_Host.txt I undersood to change in this way
        BM_2222_Italy 2222 2222.master.brandmeister.network
        will be changed to
        BM_2222_Italy 2222 192.168.1.59

        • The adapter and the MMDVM should not have the same IP address, but IP addresses that belong to the same subnet. Make a small program on the adapter RPi and check that the MMDVM actually sends UDP packets to it.

          • Hi Anders, yes pi-star has 192.168.1.59 and the RP has 192.168.1.58.
            I can not attach the image of the pi-star configuration here; if I set the in both fields “RemoteAddress” & “Address” located in “http://pi-star.local/admin/expert/edit_mmdvmhost.php” -> “DMR Network”, the RP IP 192.168.1.58, I can see data flowing in the RP terminal where is running the “gwtest.py” but no connection with brandmeister.
            If one of those field I set to “2222.master.brandmeister.network” I can use brandmeister but no data flow on the RP terminal…..I don’t know how to setup the pi-star….
            Obviously I have changed the IPs in the “gwtest.py” and my personal DMR ID:
            UDP_PORT = 62031 # Port to MMDVM
            senderID = 2228978 # Sender DMR ID
            #receiverID = 24203 # Receiver DMR ID
            routeID = 24299 # TG for IP routing through DMR
            MQTTBROKER = ‘127.0.0.1’

            And I have changed also the credentials in two files: “mmdvminput.py” & “mmdvmoutput.py” with my brandmeister credential.

            Is all OK ?

            Many thanks
            IK2WBK – Rino.

Leave a Reply

Your email address will not be published. Required fields are marked *

three × four =