An apparatus comprises: a memory to store sensor data and at least one processing core that compiles a message based on the sensor data; the message is transmitted from the apparatus, causing receiving in the apparatus of a machine readable instruction; and estimated activity type is derived using the machine readable instruction. The sensor data is preferably acceleration sensor data; additional sensor data may include sound or vibration data. In use the apparatus derives a user activity and may receive a message from a user device. Methods for detecting activity type are also disclosed including the steps of storing sensor data 510, compiling a message 520, transmitting a message 530, receiving an instruction 540 and deriving an activity type 550. The apparatus and methods are preferably used to detect a sporting or physical activity performed by a user wearing a user device which communicates with a server or back end apparatus.