<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def _call_rpc(self, address, rpc_id, payload):
 """Call an RPC with the given information and return its response. Must raise a hardware error of the appropriate kind if the RPC can not be executed correctly. Otherwise it should return the binary response payload received from the RPC. Args: address (int):
 The address of the tile we want to call the RPC on rpc_id (int):
 The id of the RPC that we want to call payload (bytes, bytearray):
 The data that we want to send as the payload """


        # FIXME: Set a timeout of 1.1 seconds to make sure we fail if the device hangs but
        #        this should be long enough to accommodate any actual RPCs we need to send.

        status, response = self.hw.stream.send_rpc(address, rpc_id, payload, timeout=1.1)
        return response