Skip to content

Commit 6b4248a

Browse files
Benik3Daniel Beneš
and
Daniel Beneš
authored
Add one char delay before switching TRX control, fixed warnings (#115)
* Added one char to delay TRX control after write * fixed warnings * fix non working -r argument --------- Co-authored-by: Daniel Beneš <[email protected]>
1 parent 4a05446 commit 6b4248a

File tree

3 files changed

+6
-7
lines changed

3 files changed

+6
-7
lines changed

src/cfg.c

+2-2
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ cfg_t cfg;
5050
/* Configuration error message */
5151
char cfg_err[INTBUFSIZE + 1];
5252

53-
#define CFG_ERR(s, v) snprintf(cfg_err, INTBUFSIZE, s, v)
53+
#define CFG_ERR(...) snprintf(cfg_err, INTBUFSIZE, __VA_ARGS__)
5454

5555
/*
5656
* Setting up config defaults
@@ -232,7 +232,7 @@ cfg_handle_param(char *name, char *value)
232232
{
233233
if (!strlen(value))
234234
{
235-
CFG_ERR("missing logfile value", value);
235+
CFG_ERR("missing logfile value");
236236
return 0;
237237
}
238238
else if (*value != '/')

src/conn.c

+3-4
Original file line numberDiff line numberDiff line change
@@ -245,8 +245,6 @@ conn_write(int d, void *buf, size_t nbytes, int istty)
245245
{
246246
int rc;
247247
fd_set fs;
248-
struct timeval ts, tts;
249-
long delay;
250248

251249
#ifdef TRXCTL
252250
if (istty && cfg.trxcntl != TRX_ADDC)
@@ -266,7 +264,8 @@ conn_write(int d, void *buf, size_t nbytes, int istty)
266264
#ifdef TRXCTL
267265
if (istty && cfg.trxcntl != TRX_ADDC )
268266
{
269-
tty_delay(DV(nbytes, tty.bpc, cfg.ttyspeed));
267+
// one char more delay to prevent too early GPIO switch on some HW
268+
tty_delay(DV((nbytes + 1), tty.bpc, cfg.ttyspeed));
270269
tty_set_rx(d);
271270
}
272271
#endif
@@ -839,7 +838,7 @@ conn_loop(void)
839838
if (curconn->ctr >= MB_DATA_NBYTES)
840839
{
841840
/* compute request data length for fc 15/16 */
842-
unsigned int len;
841+
unsigned int len = 0;
843842
switch (MB_FRAME(curconn->buf, MB_FCODE))
844843
{
845844
case 15: /* Force Multiple Coils */

src/main.c

+1-1
Original file line numberDiff line numberDiff line change
@@ -194,7 +194,7 @@ main(int argc, char *argv[])
194194
while ((rc = getopt(argc, argv,
195195
"dh"
196196
#ifdef TRXCTL
197-
"ty:Y:"
197+
"try:Y:"
198198
#endif
199199
#ifdef HAVE_TIOCRS485
200200
"S"

0 commit comments

Comments
 (0)