A social alarm system able to perform location detection in a dwelling, comprising: a personal radio trigger configured to be carried by a client and operable to transmit an alarm signal by wireless radio frequency transmission in response to a triggering alarm event; a plurality of radio receptor nodes operable to monitor the wireless radio frequency transmissions from the personal radio trigger, wherein each radio receptor node is configured to report at least one respective received signal strength value; a client unit operable to receive the alarm signal and initiate an alarm call to a remote monitoring centre over a communications network; and a location finder unit operable to determine a location of the personal radio trigger in the dwelling, according to the received signal strength values reported from the plurality of radio receptor nodes, and report the location; characterised in that the location finder unit is configured to perform a location finding algorithm comprising: receiving a set of observed signal strength values from the plurality of nodes, comparing the set of observed signal strength values against sets of previously recorded signal strength values from a plurality of known locations in the dwelling, and thereby determining a current location of the personal radio trigger from amongst the plurality of known locations; wherein the location finding algorithm determines the current location of the personal radio trigger by selecting amongst the known locations according to normalised power levels from each of the M radio receptor nodes for each of the set of L known locations, where L and M are positive integers, on the basis of a shape power error which is calculated according to the equations: Node _ Norm = Node − MAX Node 1.. M, LUT _ Norm p, 1.. M = LUT p, 1.. M − MAX LUT p, 1.. M, Shape _ error p = ∑ k = 1 M MAX Node _ Norm k − LUT _ Norm k p 2 M, where 'k' is the Node ID position corresponding to the plurality of radio receptor nodes which can take the positive integer values 1..M, 'p' is the Location ID fit to be selected and which can take the positive integer values 1..L, Node(1..M) is the set of observed signal strength values by each of the nodes 1..M, and LUT is a Look Up Table of the set of previously recorded signal strength values by each of the nodes 1..M for the known locations 1..L. a personal radio trigger configured to be carried by a client and operable to transmit an alarm signal by wireless radio frequency transmission in response to a triggering alarm event; a plurality of radio receptor nodes operable to monitor the wireless radio frequency transmissions from the personal radio trigger, wherein each radio receptor node is configured to report at least one respective received signal strength value; a client unit operable to receive the alarm signal and initiate an alarm call to a remote monitoring centre over a communications network; and a location finder unit operable to determine a location of the personal radio trigger in the dwelling, according to the received signal strength values reported from the plurality of radio receptor nodes, and report the location; characterised in that the location finder unit is configured to perform a location finding algorithm comprising: receiving a set of observed signal strength values from the plurality of nodes, comparing the set of observed signal strength values against sets of previously recorded signal strength values from a plurality of known locations in the dwelling, and thereby determining a current location of the personal radio trigger from amongst the plurality of known locations; wherein the location finding algorithm determines the current location of the personal radio trigger by selecting amongst the known locations according to normalised power levels from each of the M radio receptor nodes for each of the set of L known locations, where L and M are positive integers, on the basis of a shape power error which is calculated according to the equations: Node _ Norm = Node − MAX Node 1.. M, LUT _ Norm p, 1.. M = LUT p, 1.. M − MAX LUT p, 1.. M, Shape _ error p = ∑ k = 1 M MAX Node _ Norm k − LUT _ Norm k p 2 M, where 'k' is the Node ID position corresponding to the plurality of radio receptor nodes which can take the positive integer values 1..M, 'p' is the Location ID fit to be selected and which can take the positive integer values 1..L, Node(1..M) is the set of observed signal strength values by each of the nodes 1..M, and LUT is a Look Up Table of the set of previously recorded signal strength values by each of the nodes 1..M for the known locations 1..L.