Apparatus for communicating with a plurality of printhead controllers of a printing device comprising: a first interface controller electrically coupled to a control system and a coupling medium, the control system being configured to receive image data for use in a printing operation and the first interface controller being arranged to receive a plurality of data signals associated with the printing operation, encode said signals in one or more data streams and send the encoded signals to the coupling medium, wherein the first interface controller comprises: a first streaming controller arranged to receive print data derived from said plurality of data signals for transmission as one or more data streams with a deterministic latency such that there is a fixed upper bound on a range of time delays for the data streams that can be tolerated, and a first packet-based control component to receive packet-based control data derived from said plurality of data signals and to send said packet-based control data for embedding in the one or more data streams generated by the first streaming controller; the apparatus further comprising: a second interface controller electrically coupled to the coupling medium and the plurality of printhead controllers, the second interface controller being remote from the control system and arranged to receive the one or more encoded data streams sent over the coupling medium, decode said one or more encoded data streams to obtain the plurality of signals associated with the printing operation, and send said signals to the plurality of printhead controllers, wherein the second interface controller comprises: a second streaming controller arranged to receive the one or more data streams and convert said one or more data streams into print data for the plurality of printhead controllers, and a second packet-based control component to receive packet-based control data extracted from the one or more data streams received by the second streaming controller. a first interface controller electrically coupled to a control system and a coupling medium, the control system being configured to receive image data for use in a printing operation and the first interface controller being arranged to receive a plurality of data signals associated with the printing operation, encode said signals in one or more data streams and send the encoded signals to the coupling medium, wherein the first interface controller comprises: a first streaming controller arranged to receive print data derived from said plurality of data signals for transmission as one or more data streams with a deterministic latency such that there is a fixed upper bound on a range of time delays for the data streams that can be tolerated, and a first packet-based control component to receive packet-based control data derived from said plurality of data signals and to send said packet-based control data for embedding in the one or more data streams generated by the first streaming controller; a first streaming controller arranged to receive print data derived from said plurality of data signals for transmission as one or more data streams with a deterministic latency such that there is a fixed upper bound on a range of time delays for the data streams that can be tolerated, and a first packet-based control component to receive packet-based control data derived from said plurality of data signals and to send said packet-based control data for embedding in the one or more data streams generated by the first streaming controller; the apparatus further comprising: a second interface controller electrically coupled to the coupling medium and the plurality of printhead controllers, the second interface controller being remote from the control system and arranged to receive the one or more encoded data streams sent over the coupling medium, decode said one or more encoded data streams to obtain the plurality of signals associated with the printing operation, and send said signals to the plurality of printhead controllers, wherein the second interface controller comprises: a second streaming controller arranged to receive the one or more data streams and convert said one or more data streams into print data for the plurality of printhead controllers, and a second packet-based control component to receive packet-based control data extracted from the one or more data streams received by the second streaming controller. a second interface controller electrically coupled to the coupling medium and the plurality of printhead controllers, the second interface controller being remote from the control system and arranged to receive the one or more encoded data streams sent over the coupling medium, decode said one or more encoded data streams to obtain the plurality of signals associated with the printing operation, and send said signals to the plurality of printhead controllers, wherein the second interface controller comprises: a second streaming controller arranged to receive the one or more data streams and convert said one or more data streams into print data for the plurality of printhead controllers, and a second packet-based control component to receive packet-based control data extracted from the one or more data streams received by the second streaming controller. a second streaming controller arranged to receive the one or more data streams and convert said one or more data streams into print data for the plurality of printhead controllers, and a second packet-based control component to receive packet-based control data extracted from the one or more data streams received by the second streaming controller.