From 7d482e47f72c9c92389de47a0f0e3d56caecf13c Mon Sep 17 00:00:00 2001 From: Robert Johansson Date: Sun, 13 May 2012 16:39:48 +0900 Subject: [PATCH] use the max frame limit 16 also for serial multi-telegram transfers (some devices does not seems to stop reporting 'more data follows', so unless we set a hard limit it will loop forever. so this limit should probably be made a cmd line argument) --- bin/mbus-serial-request-data-multi-reply.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/mbus-serial-request-data-multi-reply.c b/bin/mbus-serial-request-data-multi-reply.c index c6082f5..46bcbe5 100644 --- a/bin/mbus-serial-request-data-multi-reply.c +++ b/bin/mbus-serial-request-data-multi-reply.c @@ -114,8 +114,8 @@ main(int argc, char **argv) } // instead of the send and recv, use this sendrecv function that - // takes care of the possibility of multi-telegram replies - if (mbus_sendrecv_request(handle, address, &reply, -1) == -1) + // takes care of the possibility of multi-telegram replies (limit = 16 frames) + if (mbus_sendrecv_request(handle, address, &reply, 16) == -1) { fprintf(stderr, "Failed to send/receive M-Bus request.\n"); return 1;