de_comm.config.module.json Configuration File
A file called de_comm.config.module.json exists in /home/pi/drone_engage/de_comm/ This file is written in JSON format. However, you can still add comments to the file. To those who do not know JSON just consider it a text file that you need to edit only few lines in it.
Accessing the Configuration File
Login to your Raspberry-PI board using ssh.
ssh pi@raspberry_pi_ip_address
Navigate to the configuration directory:
cd /home/pi/drone_engage/de_comm/
ls
Open the configuration file:
nano de_comm.config.module.json
Configuration Fields
| Field Name | Description | Example | |————|————-|———| | module_id | A name and GUID for this module | “MT_1”, “COMM_MAIN” | | unit_type | Type of unit. Use “control_unit” for drone modules | “control_unit” | | s2s_udp_listening_ip () | IP address for the de_comm module to communicate with other modules | “127.0.0.1” if all modules on same board, else “0.0.0.0” | | s2s_udp_listening_port () | UDP port used to communicate with other modules | “60000” | | s2s_udp_packet_size () | Maximum size of UDP packets, should be same value in all modules | “8192” | | auth_ip () | Authentication server IP address | “127.0.0.1”, “andruav.com”, “droneengage.com” | | auth_port () | Authentication server port (number, not string) | 19408 | | auth_verify_ssl () | Enable SSL verification for authentication | false | | ignore_original_comm_server () | Don’t authenticate and connect directly to a drone server | false | | root_certificate_path () | Path to SSL certificate (required if auth_verify_ssl is true) | “./root.crt” | | userName (M) | Your account username | “user@example.com” | | accessCode (M) | Your account access code | “your_access_code” | | unitID (M) | A readable name for your drone that will be displayed | “drone1”, “D1-Copter” | | groupID () | Group identifier for your drone | “1” | | unitDescription (M) | A brief single line description of vehicle | “My X8 Drone” | | logger_enabled () | Enable logging (creates log files in Logs folder) | false | | logger_debug () | Enable debug logging | false | | ping_server_rate_in_ms () | Ping rate to the server in milliseconds | 1500 | | max_allowed_ping_delay_in_ms () | Maximum allowed ping delay before restart attempts | 5000 | | max_offline_count () | Maximum failed reconnection attempts before app exits | 5 | | led_pins_enabled () | Enable power LED indicator (GPIO module only) | true | | buzzer_pins_enabled () | Enable buzzer indicator (GPIO module only) | true |
Legend
(*)You can keep default value unless you have specific requirements(M)You need to change it based on your account
Important Notes
Important: If you change unitDescription and unitID then you need to delete file
de_comm.localUserm de_comm.localto delete it.
Note: userName and accessCode can be generated from your DroneEngage account.
Example Configuration
{
/*
This is a JSON file with ability to add c-like comments.
*/
// A name and GUID for this module
"module_id" : "MT_1",
"unit_type" : "control_unit",
// IP & Port Communication Module is listening to.
"s2s_udp_listening_ip" : "0.0.0.0",
"s2s_udp_listening_port" : "60000",
"s2s_udp_packet_size" : "8192",
// Drone-Engage Communication Server Connection
"auth_ip" : "127.0.0.1",
"auth_port" : 19408,
"auth_verify_ssl" : false,
"ignore_original_comm_server" : false,
// SSL certificate path (optional if auth_verify_ssl == true)
"root_certificate_path" : "./root.crt",
"userName" :"your_email@example.com",
"accessCode" :"your_access_code",
"unitID" :"drone_cairo",
"groupID" :"1",
"unitDescription" :"My Drone Unit 1",
// Logger Section
"logger_enabled" : false,
"logger_debug" : false,
// Connection management
"ping_server_rate_in_ms": 1500,
"max_allowed_ping_delay_in_ms": 5000,
"max_offline_count": 5,
// Hardware indicators (GPIO module only)
"led_pins_enabled" : true,
"buzzer_pins_enabled" : true
}
SSL Configuration
If you need to connect to a server with SSL verification enabled:
Set
"auth_verify_ssl": trueProvide the path to your SSL certificate in
"root_certificate_path"Ensure the certificate file is accessible by the application
Connection Troubleshooting
If you experience connection issues:
Check that
auth_ipandauth_portare correctVerify your
userNameandaccessCodeare validAdjust
ping_server_rate_in_msandmax_allowed_ping_delay_in_msif neededMonitor
max_offline_countto prevent excessive restartsCheck firewall settings for UDP port
s2s_udp_listening_port