A device connectable between a host computer and a peripheral device using a standard bus (87a, 87b), the device comprising: a first module comprising: a first connector connectable to a first cable for connecting to the host computer; a first transceiver coupled to the first connector for transmitting messages to, and receiving messages from, the host computer over the first cable using the standard bus; and a first memory storing a first firmware and a first processor for executing the first firmware, the first processor is coupled to control, and to communicate with, the first transceiver, wherein the first module is configured to emulate the peripheral device to the host computer; characterized in that: the device further comprising: a second module comprising: a second connector connectable to a second cable for connecting to the peripheral device; a second transceiver coupled to the second connector for transmitting messages to, and receiving messages from, the peripheral device over the second cable using the standard bus; and a second memory storing a second firmware and a second processor for executing the second firmware, the second processor is coupled to control, and to communicate with, the second transceiver, wherein the second module is configured to emulate the host computer to the peripheral device; characterised by: a third module comprising: a third memory storing a third firmware and a third processor for executing the third firmware, the third processor is coupled to control, and to communicate with, the second transceiver, wherein the third module is communicatively coupled to the first module exclusively over a first local bus, and is communicatively coupled to the second module exclusively over a second local bus; and a single enclosure (111, 113) housing the first, second, and third modules. a first connector connectable to a first cable for connecting to the host computer; a first transceiver coupled to the first connector for transmitting messages to, and receiving messages from, the host computer over the first cable using the standard bus; and a first memory storing a first firmware and a first processor for executing the first firmware, the first processor is coupled to control, and to communicate with, the first transceiver, wherein the first module is configured to emulate the peripheral device to the host computer; a second connector connectable to a second cable for connecting to the peripheral device; a second transceiver coupled to the second connector for transmitting messages to, and receiving messages from, the peripheral device over the second cable using the standard bus; and a second memory storing a second firmware and a second processor for executing the second firmware, the second processor is coupled to control, and to communicate with, the second transceiver, wherein the second module is configured to emulate the host computer to the peripheral device; characterised by: a third module comprising: a third memory storing a third firmware and a third processor for executing the third firmware, the third processor is coupled to control, and to communicate with, the second transceiver, wherein the third module is communicatively coupled to the first module exclusively over a first local bus, and is communicatively coupled to the second module exclusively over a second local bus; and a single enclosure (111, 113) housing the first, second, and third modules. a third memory storing a third firmware and a third processor for executing the third firmware, the third processor is coupled to control, and to communicate with, the second transceiver, wherein the third module is communicatively coupled to the first module exclusively over a first local bus, and is communicatively coupled to the second module exclusively over a second local bus; and a single enclosure (111, 113) housing the first, second, and third modules.