AaAA
--- a/module/owlib/src/c/ow_w1_parse.c
+++ b/module/owlib/src/c/ow_w1_parse.c
@@ -237,7 +237,7 @@ enum Netlink_Read_Status W1_Process_Resp
 			owfree(nlp.nlm) ;
 			return nrs_nodev ;
 		}
-		if ( nrs_callback == NULL ) { // status message
+		if ( nrs_callback == NULL ) { // bus reset
 			owfree(nlp.nlm) ;
 			return nrs_complete ;
 		}
@@ -246,7 +246,7 @@ enum Netlink_Read_Status W1_Process_Resp
 		nrs_callback( &nlp, v, pn ) ;
 		LEVEL_DEBUG("Called nrs_callback");
 		owfree(nlp.nlm) ;
-		if ( nlp.cn->ack != 0 ) {
+		if ( nlp.cn->seq != nlp.cn->ack ) {
 			if ( nlp.w1m->type == W1_LIST_MASTERS ) {
 				continue ; // look for more data
 			}
@@ -254,7 +254,7 @@ enum Netlink_Read_Status W1_Process_Resp
 				continue ; // look for more data
 			}
 		}
-		nrs_callback = NULL ; // now look for status message
+		return nrs_complete ; // status message
 	}
 	return nrs_timeout ;
 }
