Wiki source code of Add GPS Support in LG308

Version 1.4 by Xiaoling on 2022/05/14 10:23

Show last authors
1 It is possible to GPS support in LG308 EC25 version so device will add location info to uplink packet to LoRaWAN server.
2
3 Below are the steps:
4
5 Open the box and connect GPS antenna to GNSS port of EC25
6
7 [[image:https://wiki.dragino.com/images/thumb/1/19/LG308_GPS_1.png/600px-LG308_GPS_1.png||height="359" width="600"]]
8
9 Connect GPS antenna
10
11
12 modify the two files:
13
14 /etc/chatscripts/3g.chat
15
16 (% class="box" %)
17 (((
18 ABORT   BUSY
19 ABORT   'NO CARRIER'
20 ABORT   ERROR
21 REPORT  CONNECT
22 TIMEOUT 10
23 ""      "AT&F"
24 OK      "ATE1"
25 (% style="color:red" %)OK  "AT+QGPS=1"   ~-~-> Add this line, so EC25 module GPS will be enable when dial up(%%)
26 (% style="color:black" %)OK      'AT+CGDCONT=1,"IP","$USE_APN"'
27 SAY     "Calling UMTS/GPRS"
28 TIMEOUT 30
29 OK      "ATD$DIALNUMBER"
30 CONNECT ' '
31 )))
32
33 (% style="color:red" %)Note: After above settings, the GPS will be enable when dial up, if user doesn't use Cellular for Internet access, above script won't execute, in this case, user can run "echo AT+QGPS=1 > /dev/ttyUSB2" to enable GPS
34
35 /usr/bin/generate-config.sh, after configure this, in the web page, select any frequency band and save to make this take affect.
36
37 (% class="box" %)
38 (((
39 gen_gw_cfg() {
40 json_init
41 json_add_object gateway_conf
42 json_add_string "gateway_ID" "$gwid"
43 json_add_string "server_address" "$server"
44 json_add_int "serv_port_up" "$upp"
45 json_add_int "serv_port_down" "$dpp"
46 json_add_int "stat_interval" "$stat"
47 json_add_boolean "forward_crc_valid" 1
48 json_add_boolean "forward_crc_error" 0
49 (% style="color:red" %)json_add_string "gps_tty_path" "/dev/ttyUSB1"   ~-~-~-~--> Add this line so lora program knows to get the gps info from EC25
50 json_close_object
51 json_dump  > /etc/lora/local_conf.json
52 }
53 )))
54
55
56 Reboot the device and run logread -f to verify if GPS already works.
57
58 (% class="box" %)
59 (((
60 Fri Mar  6 04:08:59 2020 daemon.info lora_pkt_fwd[3016]: ~(% style="color:red" %)INFO~~ GPS serial port path is configured to "/dev/ttyUSB1"
61 Fri Mar  6 04:08:59 2020 daemon.info lora_pkt_fwd[3016]: INFO~~ [main] TTY port /dev/ttyUSB1 open for GPS synchronization
62 Fri Mar  6 04:09:00 2020 cron.err crond[1689]: time disparity of 4301528 minutes detected
63 Fri Mar  6 04:09:00 2020 daemon.info lora_pkt_fwd[3016]: INFO~~ sockfd=4
64 Fri Mar  6 04:09:00 2020 daemon.info lora_pkt_fwd[3016]: INFO~~ sockfd=5
65 Fri Mar  6 04:09:00 2020 daemon.info lora_pkt_fwd[3016]: INFO~~ FPort Filter: 0
66 Fri Mar  6 04:09:00 2020 daemon.info lora_pkt_fwd[3016]: INFO~~ DevAddrMask: 0x0
67 Fri Mar  6 04:09:34 2020 daemon.info lora_pkt_fwd[3016]: INFO: [jit] queue is empty
68 Fri Mar  6 04:09:34 2020 daemon.info lora_pkt_fwd[3016]: STAT~~ {"stat":{"time":"2020-03-06 04:09:34 UTC",(% style="color:red" %)"lati":22.70627,"long":114.24277,"alti":58,(%%)
69 (% style="color:black" %)"rxnb":0,"rxok":0,"rxfw":0,"ackr":0.0,"dwnb":0,"txnb":0}}
70 Fri Mar  6 04:09:35 2020 daemon.info lora_pkt_fwd[3016]: INFO~~ [up] PUSH_ACK received in 293 ms
71 Fri Mar  6 04:09:35 2020 daemon.info lora_pkt_fwd[3016]: INFO~~ [down] PULL_ACK received in 596 ms
72 )))