Data Transmission, Error Checking and Encryption: Question 8

Syllabus 2.2

Structured 7 marks

A smart thermostat sends short text commands to a boiler control unit over a wireless link so that a homeowner can adjust the heating remotely. The system uses an echo check to detect transmission errors.

(a) Describe the steps carried out in an echo check when the thermostat sends the command "SET25" to the boiler control unit. [3]

(b) Due to interference on the wireless link, the boiler control unit actually receives the command as "SEQ25", and it echoes back exactly what it received. State what the thermostat compares this echoed command with, and explain how the thermostat is able to tell that an error has occurred. [2]

(c) Explain one disadvantage of using an echo check, rather than a method such as a checksum, to detect errors in this system. [2]

Show worked solution Hide worked solution

Worked solution

Part (a): The steps of an echo check

An echo check works by sending data in both directions and comparing it at the original source:

  1. The thermostat transmits the command “SET25” to the boiler control unit.
  2. The boiler control unit immediately sends (“echoes”) back exactly the data it received, over the same link, to the thermostat.
  3. The thermostat compares the echoed data it receives back with the command it originally sent. If the two match, the data is assumed to have arrived correctly; if they do not match, the thermostat knows an error has occurred somewhere during transmission.

[3 marks]: [1] for the original transmission, [1] for the receiver echoing back what it received, [1] for the sender comparing the echo to the original data.

Part (b): Detecting the error

Interference changes the command in transit, so the boiler control unit actually receives (and therefore echoes back) “SEQ25” instead of “SET25”.

The thermostat compares this echoed command, “SEQ25”, against the command it originally transmitted, “SET25”. The third character does not match (“Q” was received where “T” was sent), so the two strings are not identical. Because the echoed data does not match what was originally sent, the thermostat detects that a transmission error has occurred. [2 marks]: [1] for identifying the correct comparison (echoed “SEQ25” against original “SET25”), [1] for explaining that the mismatch reveals the error.

Part (c): A disadvantage of the echo check

Unlike a checksum, which only needs a small extra value to be calculated and sent alongside the data, an echo check requires the receiver to send the entire command back again in full before any comparison can be made. For a system that sends many short commands, this roughly doubles the amount of data that has to travel across the wireless link, and also takes longer, since the data must make a round trip before an error can even be detected. [2 marks]: [1] for identifying that the whole message is sent back a second time, [1] for linking this to increased data usage/time compared with a checksum.

Final answers

  • (a) Thermostat sends “SET25” → boiler echoes back what it received → thermostat compares the echo with the original command to detect any mismatch.
  • (b) The thermostat compares “SEQ25” (echoed) with “SET25” (originally sent); since they do not match, an error is detected.
  • (c) An echo check sends the full command back a second time, roughly doubling the data transmitted and the time taken, compared with sending a short checksum value.