{'fraction_non_alphanumeric': 0.017828200972447326, 'fraction_numerical': 0.0, 'mean_word_length': 5.269035532994923, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Verification of an Ad-hoc Serial Communication Protocol through Model-checking: A Case Study with Echo Sounder

Serial data transmission accounts for a considerable share of the overall communication involved in real-time embedded systems. Although there are some standard serial protocols, many systems still use ad-hoc serial protocols for communication between a control computer and a serial peripheral device. Such protocols may have flaws in them which cannot be revealed by computer simulations or testing only. To complement testing, formal methods are now widely used and have proved effective in the verification of various communication protocols. However, for serial communication specifically, most of the previous research is focused on applying formal methods for the verification of standard serial interfaces. In the current work instead, we use formal methods to verify an ad-hoc serial communication protocol between a control computer and an echo sounder. Through our case study, we show how we integrated formal modeling and model-checking methods in an existing system and as a result, we were able to discover a fault in the protocol design, which could have gone unnoticed without formal software verification.