542 total views, 2 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.
The second video shows how two MMDVM units can provide routing of IP packets across a DMR radio link.
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.
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.