• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
Aucun tag

Frequently used words (click to add to your profile)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Commit MetaInfo

Révision1653b845297c53b4728febb75e45d88aefe1dbb1 (tree)
l'heure2020-10-11 12:18:50
AuteurSatoshi Yasuda <7m3tjz@jarl...>
CommiterSatoshi Yasuda

Message de Log

modified: dmonitor.h
modified: dmonitor_cmd.c
modified: dmonitor_utils.c
modified: dstar_data.c
modified: dvap.c
modified: dvmega_utils.c
modified: from_node.c
modified: inet_read.c
modified: main.c
modified: rig_read.c
modified: send_msg.c
modified: send_node.c

Change Summary

Modification

--- a/dmonitor.h
+++ b/dmonitor.h
@@ -293,5 +293,7 @@ int lcd_type;
293293 int lcd;
294294 time_t lcd_time_save;
295295
296-/* mics */
296+/* misc */
297297 char voice_packet_save[15];
298+int hole_punchd_recvd;
299+time_t msg_send_set_time;
--- a/dmonitor_cmd.c
+++ b/dmonitor_cmd.c
@@ -27,6 +27,7 @@ int cmd_check (unsigned char cmd[])
2727 sprintf (msg_temp, "UNLINK FROM %8.8s", area_call);
2828 memcpy (mycall2, "UNLK", 4);
2929 send_msg_sw = TRUE;
30+ time (&msg_send_set_time);
3031 sig_term = TRUE;
3132 lcd_write();
3233 return FALSE;
@@ -36,6 +37,7 @@ int cmd_check (unsigned char cmd[])
3637 sprintf (msg_temp, "LINKED TO %8.8s ", area_call);
3738 memcpy (mycall2, "DMON", 4);
3839 send_msg_sw = TRUE;
40+ time (&msg_send_set_time);
3941 lcd_write ();
4042 return FALSE;
4143 }
@@ -44,6 +46,7 @@ int cmd_check (unsigned char cmd[])
4446 memcpy (msg_temp, "EXIT FROM SCAN ", 20);
4547 memcpy (mycall2, "DMON", 4);
4648 send_msg_sw = TRUE;
49+ time (&msg_send_set_time);
4750 scan_stop_sw = TRUE;
4851 lcd_write();
4952 return FALSE;
@@ -53,6 +56,7 @@ int cmd_check (unsigned char cmd[])
5356 memcpy (msg_temp, "RASPI REBOOT ", 20);
5457 memcpy (mycall2, "DMON", 4);
5558 send_msg_sw = ON;
59+ time (&msg_send_set_time);
5660 reboot_sw = ON;
5761 lcd_write ();
5862 return FALSE;
@@ -62,6 +66,7 @@ int cmd_check (unsigned char cmd[])
6266 memcpy (msg_temp, "RASPI SHUTDOWN ", 20);
6367 memcpy (mycall2, "DMON", 4);
6468 send_msg_sw = ON;
69+ time (&msg_send_set_time);
6570 shutdown_sw = ON;
6671 lcd_write();
6772 return FALSE;
--- a/dmonitor_utils.c
+++ b/dmonitor_utils.c
@@ -597,6 +597,7 @@ void error_msg (char str[])
597597 sprintf (msg_temp, "NOT REGIST %8.8s ", &str[31]);
598598 memcpy (mycall2, "NORG", 4);
599599 send_msg_sw = TRUE;
600+ time (&msg_send_set_time);
600601 sig_term = TRUE;
601602 not_clear_error_msg = TRUE;
602603 lcd_write();
@@ -606,6 +607,7 @@ void error_msg (char str[])
606607 sprintf (msg_temp, "LINK TO %8.8s ", area_call);
607608 memcpy (mycall2, "LINK", 4);
608609 send_msg_sw = TRUE;
610+ time (&msg_send_set_time);
609611 lcd_write ();
610612 }
611613 }
--- a/dstar_data.c
+++ b/dstar_data.c
@@ -8,6 +8,7 @@ void inet_led_onoff(void);
88 void putFifo (int len, char str[]);
99 void header_store (char str[]);
1010 unsigned short int crc_calc (unsigned char string[], int length);
11+int rig_status_check(void);
1112
1213 void short_msg_wrt (void)
1314 {
@@ -189,6 +190,8 @@ void rig_alt_header_set (unsigned char alt_hdr[])
189190 int ret;
190191 unsigned short int crc;
191192
193+ if (!rig_status_check()) return;
194+
192195 if (!scan_sw) syslog (LOG_NOTICE, "Alt header %8.8s from rig", &alt_hdr[27]);
193196 else
194197 {
--- a/dvap.c
+++ b/dvap.c
@@ -12,6 +12,7 @@ void dstar_data(unsigned char string[], int inet);
1212 void short_msg_wrt (void);
1313 void send_msg (unsigned char str[], unsigned char my2[]);
1414 int cmd_check (unsigned char cmd[]);
15+int rig_status_check(void);
1516
1617 struct termios save_attr;
1718 char dvap_buff[1024];
@@ -589,6 +590,7 @@ void dvap_send_header (void)
589590
590591 if (dvap_header[25] == 0x20) return;
591592 if (!cmd_check (&dvap_header[25])) return;
593+ if (!rig_status_check()) return;
592594 if (!memcmp (&dvap_header[25], "CALIBRAT", 8))
593595 {
594596 dvap_state = DVAP_CALIBRATION_CLEAR;;
--- a/dvmega_utils.c
+++ b/dvmega_utils.c
@@ -11,6 +11,7 @@ void dstar_data (unsigned char string[], int inet);
1111 void rig_buff_reset (int length);
1212 unsigned short int crc_calc (unsigned char string[], int length);
1313 int cmd_check (unsigned char cmd[]);
14+int rig_status_check(void);
1415
1516 int rig_status_check (void);
1617 char lastframe1[3] = {0x55, 0x55, 0x55};
@@ -137,6 +138,7 @@ void dvmega_read (void)
137138 else
138139 fprintf (status_fd, "%8.8s from DVMEGA\n", &rig_buff[30]);
139140 if (!cmd_check (&rig_buff[22])) break;
141+ if (!rig_status_check()) return;
140142 gw_on = FALSE;
141143 if (!inet_send_buff_set()) break;
142144 inet_send_buff[16] = 0x80;
--- a/from_node.c
+++ b/from_node.c
@@ -9,6 +9,7 @@ void short_msg_wrt (void);
99 void dstar_data (unsigned char string[], int inet);
1010 unsigned short int crc_calc (char str[], int length);
1111 int cmd_check (unsigned char cmd[]);
12+int rig_status_check(void);
1213
1314
1415 char node_header_save[58];
@@ -49,6 +50,7 @@ void header_read_from_node(void) /* read from rig (DV packet) */
4950 fprintf (status_fd, "%8.8s from Rig\n", usb.node_hdr.MyCall);
5051 }
5152 if (!cmd_check (usb.node_hdr.YourCall)) return;
53+ if (!rig_status_check()) return;
5254 gw_on = FALSE;
5355 if (!inet_send_buff_set()) return;
5456 inet_send_buff[16] = 0x80;
--- a/inet_read.c
+++ b/inet_read.c
@@ -110,12 +110,14 @@ void inet_read (void)
110110 memcpy (&buff[24], "REQ ", 4);
111111 sendto(in_addr_sock, buff, 28, 0,
112112 (struct sockaddr *)&in_addr, sizeof(in_addr));
113+ hole_punchd_recvd = TRUE;
113114 #if 0
114115 if (!link_send_sw)
115116 {
116117 sprintf (msg_temp, "LINK TO %8.8s ", area_call);
117118 memcpy (mycall2, "LINK", 4);
118119 send_msg_sw = TRUE;
120+ time (&msg_send_set_time);
119121 link_send_sw = TRUE;
120122 }
121123 #endif
--- a/main.c
+++ b/main.c
@@ -311,6 +311,7 @@ int main(int argc, char *argv[])
311311 alt_header_pnt = 0;
312312 reboot_sw = FALSE;
313313 shutdown_sw = FALSE;
314+ hole_punchd_recvd = FALSE;
314315
315316 FD_SET (in_addr_sock, &fd_save);
316317
@@ -354,8 +355,9 @@ top:
354355 }
355356 if (FD_ISSET (rig_fd, &read_set))
356357 {
357- if (rig_type == DVAP) dvap_read();
358- if (rig_type == DVMEGA) dvmega_read();
358+ if (rig_type == ICOM) rig_read();
359+ else if (rig_type == DVAP) dvap_read();
360+ else if (rig_type == DVMEGA) dvmega_read();
359361 }
360362 }
361363 jitter_putFifo();
@@ -370,6 +372,7 @@ top:
370372 sprintf (msg_temp, "NOT LINKED %8.8s ", area_call);
371373 memcpy (mycall2, "NOLK", 4);
372374 send_msg_sw = TRUE;
375+ time (&msg_send_set_time);
373376 syslog (LOG_INFO,
374377 "Not Connected to %8.8s", area_call);
375378 error_msg ("ERROR接続できまません");
--- a/rig_read.c
+++ b/rig_read.c
@@ -97,6 +97,7 @@ enum
9797 DVMEGA_INIT_DONE,
9898 NODE_INIT,
9999 NODE_INIT_DONE,
100+ HOLE_PUNCH_WAIT,
100101 RIG_READ
101102 } rig_state = RIG_CHECK;
102103
@@ -144,7 +145,7 @@ void rig(void)
144145 case ICOM_INIT_DONE:
145146 if (icom_init_recv())
146147 {
147- rig_state = RIG_READ;
148+ rig_state = HOLE_PUNCH_WAIT;
148149 syslog (LOG_INFO, "RIG(ID-xxPlus) init/re-init done");
149150 memset (inet_frame_id, 0x00, 2);
150151 frameID = 0;
@@ -185,7 +186,7 @@ void rig(void)
185186 {
186187 memset (inet_frame_id, 0x00, 2);
187188 frameID = 0;
188- rig_state = RIG_READ;
189+ rig_state = HOLE_PUNCH_WAIT;
189190 }
190191 else
191192 {
@@ -239,7 +240,7 @@ void rig(void)
239240 case DVMEGA_INIT_DONE:
240241 if (dvmega_init_recv())
241242 {
242- rig_state = RIG_READ;
243+ rig_state = HOLE_PUNCH_WAIT;
243244 syslog (LOG_INFO, "RIG(DVMEGA) init/re-init done");
244245 memset (inet_frame_id, 0x00, 2);
245246 frameID = 0;
@@ -260,7 +261,7 @@ void rig(void)
260261 rig_not_connect_msg();
261262 not_clear_error_msg = TRUE;
262263 sig_term = TRUE;
263- rig_state = RIG_READ;
264+ rig_state = HOLE_PUNCH_WAIT;
264265 }
265266 }
266267 break;
@@ -270,7 +271,11 @@ void rig(void)
270271 break;
271272
272273 case NODE_INIT_DONE:
273- rig_state = RIG_READ;
274+ rig_state = HOLE_PUNCH_WAIT;;
275+ break;
276+
277+ case HOLE_PUNCH_WAIT:
278+ if (hole_punchd_recvd) rig_state = RIG_READ;
274279 break;
275280
276281 case RIG_READ:
@@ -414,6 +419,7 @@ int rig_read (void)
414419 fprintf (status_fd, "%8.8s from Rig\n", &rig_buff[29]);
415420 }
416421 if (!cmd_check (&rig_buff[21])) return FALSE;
422+ if (!rig_status_check()) return FALSE;
417423 gw_on = FALSE;
418424 if (!inet_send_buff_set()) return TRUE;
419425 inet_send_buff[16] = 0x80;
--- a/send_msg.c
+++ b/send_msg.c
@@ -35,7 +35,14 @@ void send_msg (unsigned char string[], unsigned char my2[])
3535 char hdr_buff[42];
3636 struct timeval temp_time;
3737 int n;
38+ time_t ctime;
3839
40+ time (&ctime);
41+ if ((ctime - msg_send_set_time) >= 2)
42+ {
43+ send_msg_sw = FALSE;
44+ return;
45+ }
3946 status_msg[3][10] = 0x70 ^ 0x40;
4047 status_msg[3][11] = 0x4f ^ string[0];
4148 status_msg[3][12] = 0x93 ^ string[1];
--- a/send_node.c
+++ b/send_node.c
@@ -91,7 +91,7 @@ void node_write (unsigned char str[], int length)
9191 }
9292 else if (length == 17)
9393 {
94-syslog(LOG_DEBUG," %2.2x %2.2x %2.2x %2.2x %2.2x %2.2x", str[4], str[5], str[6], str[13], str[14], str[15]);
94+//syslog(LOG_DEBUG," %2.2x %2.2x %2.2x %2.2x %2.2x %2.2x", str[4], str[5], str[6], str[13], str[14], str[15]);
9595 if ((str[3] & 0x40)
9696 || !memcmp (&str[13], &lastframe[3], 3)
9797 || !memcmp (&str[4], &lastframe[3], 3)) node_last_send (&str[4]);