A method of addressing a plurality of remote units electrically connected to a fire panel in a fire loop, the method comprising: requesting an initial identifier from each remote unit; for each remote unit which responds with a unique initial identifier: (a) assigning a unique address to the remote unit; and (b) silencing the response of the configured remote unit to further identifier requests; for each remote unit which responds with an initial identifier matching the initial identifier of at least one other remote unit: (a) initialising an identifier array with the initial identifier for the remote unit in question; (b) requesting a further identifier and adding it to the identifier array for the remote unit; (c) for each remote unit which responds with a unique identifier array: (i) assigning a unique address to the remote unit; and (ii) silencing the response of the configured remote unit to further identifier requests; (d) for each remote unit which responds with an identifier array matching the identifier array of at least one other remote unit, repeating steps (b)-(c) until all remote units of the plurality of remote units have been silenced; and enabling communication of the plurality of remote units in the fire loop. requesting an initial identifier from each remote unit; for each remote unit which responds with a unique initial identifier: (a) assigning a unique address to the remote unit; and (b) silencing the response of the configured remote unit to further identifier requests; (a) assigning a unique address to the remote unit; and (b) silencing the response of the configured remote unit to further identifier requests; for each remote unit which responds with an initial identifier matching the initial identifier of at least one other remote unit: (a) initialising an identifier array with the initial identifier for the remote unit in question; (b) requesting a further identifier and adding it to the identifier array for the remote unit; (c) for each remote unit which responds with a unique identifier array: (i) assigning a unique address to the remote unit; and (ii) silencing the response of the configured remote unit to further identifier requests; (d) for each remote unit which responds with an identifier array matching the identifier array of at least one other remote unit, repeating steps (b)-(c) until all remote units of the plurality of remote units have been silenced; and (a) initialising an identifier array with the initial identifier for the remote unit in question; (b) requesting a further identifier and adding it to the identifier array for the remote unit; (c) for each remote unit which responds with a unique identifier array: (i) assigning a unique address to the remote unit; and (ii) silencing the response of the configured remote unit to further identifier requests; (i) assigning a unique address to the remote unit; and (ii) silencing the response of the configured remote unit to further identifier requests; (d) for each remote unit which responds with an identifier array matching the identifier array of at least one other remote unit, repeating steps (b)-(c) until all remote units of the plurality of remote units have been silenced; and enabling communication of the plurality of remote units in the fire loop. <EOS>