A hair styling system and control thereof

EP4687575A1Pending Publication Date: 2026-02-11JEMELLA LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
EP2025718019
Authority / Receiving Office
EP · EP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-05-24
Filing Date
2025-03-28
Publication Date
2026-02-11

AI Technical Summary

Technical Problem

Existing hair styling devices require significant user input interaction, often necessitating interruptions during styling to adjust settings and lack effective feedback for achieving complex hairstyles, leading to suboptimal user experience and limited use of advanced features.

Method used

A hair styling system equipped with ultra-wide band (UWB) sensors and a computing device that processes gestures and movements to control device settings and provide feedback, allowing users to adjust settings through gestures and monitor styling techniques for improved efficiency and accuracy.

Benefits of technology

Enables seamless adjustment of styling device functions without interrupting the styling process, enhances user experience by providing real-time feedback, and encourages users to attempt more complex hairstyles.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure GB2025050676_02102025_PF_FP_ABST
    Figure GB2025050676_02102025_PF_FP_ABST
Patent Text Reader

Abstract

A hair styler system is disclosed which includes a computing device and an ultra-wide band (UWB) sensor or camera to detect gestures and movements of a user using a hair styler to control settings and / or functions of the hair styler and provide appropriate user feedback. The hair styler of the hair styler system may also include UWB sensors and orientation detection capabilities to detect the proximity of the hair styler to a user and / or the orientation of the hair styler during use to control settings and / or functions of the hair styler and provide appropriate user feedback.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] A Hair Styling System and Control thereof

[0002] The present invention relates to an apparatus and method for styling the hair of a person (or conceivably an animal), for example after washing the hair or as part of a styling process, and a means of controlling that apparatus during the styling process.

[0003] Typically, handheld (portable) hair stylers (e.g., hair straightening and / or curling devices) are provided with one or more user interfaces that allow the user to set user defined parameters for the device. For example, the one or more user interfaces may allow a user to set a desired operating temperature of the hair styler, and / or request a cool / heat shot. The one or more user interfaces may also allow a user, by way of example only, to select one or more styling programs to be used to style their hair. For example, the hair styler may have pre-programmed styling programs stored within its memory that set specific parameters to facilitate achieving a particular hair style. Additionally, the one or more user interfaces may also allow a user to switch between different operating modes of the hair styler. For example, the user may switch between a training mode where the heaters of the hair styler are switched off allowing a user to practise particular styling techniques and moves without actually styling their hair, and a styling mode, where the heaters of the hair styler are operable and heat the hair.

[0004] However, such user input functionality to control the hair styler has drawbacks, especially, but not exclusively, when using the hair styler in the styling mode described above. For example, the need to use different buttons at different positions on the styler, and / or one or more touch displays to operate the styler and control its functions can be difficult while also styling one’s hair. In particular, but not exclusively, the need to operate the styler using a touch sensitive display can result in the user having to interrupt styling procedures to look at the display and select an input. This can have negative effects on the quality of a style using the styler as the user has to regularly remove their hair from the device to select a new function and then begin running a tress of hair through the device again once the new function has been selected. There is therefore a need to improve functionality of hair stylers while minimising the amount of user input interaction required. In particular, there is a need to improve functionality of such hair stylers without requiring the user to interrupt styling procedures to change styler settings. There is also a need to improve functionality of such hair stylers without requiring a user to move from a seated position while styling. There is also a need to improve functionality of such hair stylers without requiring a user to move from their current position in general while styling. For example, where a user is using the hair styler in a standing position in front of a mirror, there is a need to improve functionality of such hair stylers so that such users do not have to move around a lot while in front of the mirror.

[0005] Furthermore, during the use of a hair styler, whether that be in a training mode or a styling mode as described above, the user may benefit from feedback from the styler (or another device in communication with the styler) to provide guidance and instruction to the user, thereby ensuring correct use of the styler. By ensuring such correct use of the styler, optimal styling may be achieved. This is particularly true where a user wishes to achieve more complicated styles that may traditionally require the assistance of a professional hair stylist. There is therefore a need to provide feedback to a user during their use of the hair styler device.

[0006] Additionally, the one or more user interfaces may also allow a user to switch between different operating modes of the hair styler. For example, the user may switch between a training mode where the heaters of the hair styler are switched off allowing a user to practise particular styling techniques and moves without actually styling their hair, and a styling mode, where the heaters of the hair styler are operable.

[0007] In the scenario where a user selects one or more styling programs to be used to style their hair, the hair styler may use pre-programmed styling programs stored within its memory that set specific parameters necessary to achieve the particular hair style selected. However, although the user does not have to input / change specific parameters of the hair styler to achieve the desired hair style they have selected, the user still needs to be well versed in the techniques and movements that need to be performed with the hair styler to achieve the selected style. This in turn means that the average user generally does not attempt complex styles because of the complexity of the techniques and movements required. Furthermore, even with simpler styles, a user who is not accustomed to the hair styler may still make mistakes when attempting to achieve the desired style. There is thus a need to incorporate monitoring and feedback functionality into such hair stylers that can monitor the techniques and movements being used by a user and assist them when using the hair styler to achieve their desired hair style. Similar issues arise with hair dryers and dual functionality stylers such as the applicant’s “Duet Style” hair drying and styling device. Summary of Invention

[0008] In an aspect of the invention there is provided a hair styling system comprising a hair styling device, at least one ultra-wide band, UWB, sensor configured to transmit UWB radio pulses and to receive UWB radio signals reflected by objects adjacent the at least one UWB sensor, and a computing device in communication with the at least one UWB sensor, the computing device comprising a processor configured to i) process signals obtained from the at least one UWB sensor to identify a gesture made by a user adjacent to the at least one UWB sensor, and ii) control, in response to the identified gesture, at least one setting of the hair styling device or the computing device.

[0009] In another aspect, to process signals obtained from the at least one UWB sensor to identify a gesture made by a user adjacent to the at least one UWB sensor may comprise comparing the signals obtained from the at least one UWB sensor with a plurality of gesture recognition models.

[0010] In another aspect, comparing the signals obtained from the UWB sensor with a plurality of gesture recognition models may comprise comparing a pattern of the signals obtained from the at least one UWB sensor with each one of the gesture recognition models of the plurality of gesture recognition models, wherein each gesture recognition model comprises one or more pre-stored UWB radio signal patterns corresponding to a gesture.

[0011] In another aspect, the one or more pre-stored UWB radio signal patterns corresponding to a gesture comprise at least one of: a distance-amplitude signal graph, and / or a distance-time signal graph.

[0012] In another aspect, to process signals obtained from the at least one UWB sensor to identify a gesture made by a user adjacent the at least one UWB sensor may comprise comparing the signals obtained from the at least one UWB sensor with a gesture recognition model, wherein each one of the gesture recognition models is a convolutional neural network, CNN. Additionally, or alternatively the signals may be compared with a plurality of gesture recognition models, wherein each one of the gesture recognition models is a convolutional neural network, CNN. In another aspect each identified gesture is associated with one of a plurality of control commands and in response to identifying the gesture made by a user adjacent to the at least one UWB sensor the processor is configured to transmit a corresponding control command to the hair styler to control the at least one setting of the hair styling device.

[0013] In another aspect, controlling the at least one setting of the hair styling device, in response to an identified gesture may comprise increasing a temperature of the hair styler, or increasing a temperature of the hair styler by a pre-configured step size, or initiating a heat-shot function of the hair styler, or initiating a cold-shot function of the hair styler.

[0014] In another aspect, in response to identifying the gesture made by a user adjacent to the at least one UWB sensor the processor may be configured to control the at least one setting of the computing device in communication with the at least one UWB sensor.

[0015] In another aspect, in response to an identified gesture, the at least one setting of the computing device in communication with the at least one UWB sensor may comprise restarting a music track being played by the computing device or skipping a music track being played by the computing device.

[0016] In an aspect of the invention there is provided a hair styling system comprising a hair styling device, a plurality of ultra-wide band, UWB, sensors, each UWB sensor configured to transmit UWB radio pulses and to receive UWB radio signals reflected by objects adjacent the plurality of UWB sensors, and a computing device in communication with the plurality of UWB sensors. The computing device comprises a processor configured to i) process signals obtained from each UWB sensor of the plurality of UWB sensors to identify a dynamic gesture made by a user, wherein the dynamic gesture is a moving gesture, ii) process the signals obtained from each UWB sensor of the plurality of UWB sensors to determine a position of a user’s head, and iii) control, in response to the identified dynamic gesture and the determined position of the user’s head, at least one setting of the hair styling device or the computing device.

[0017] In another aspect, the processor is configured to process signals obtained from the plurality of UWB sensors to identify the dynamic gesture made by the user may comprise comparing the signals obtained from the plurality of UWB sensors with a plurality of gesture recognition models.

[0018] In another aspect, comparing the signals obtained from the plurality of UWB sensors with a plurality of gesture recognition models may comprise comparing a pattern of the signals obtained from the plurality of UWB sensors with each one of the gesture recognition models of the plurality of gesture recognition models, wherein each gesture recognition model comprises one or more pre-stored UWB radio signal patterns corresponding to a dynamic gesture. In addition, the one or more pre-stored UWB radio signal patterns corresponding to a dynamic gesture may comprise a distance-time signal graph.

[0019] In another aspect, the processor is configured to process signals obtained from the plurality of UWB sensors to identify a gesture made by a user may comprise comparing the signals obtained from the plurality of UWB sensors with a plurality of gesture recognition models, wherein each one of the gesture recognition models is a convolutional neural network (CNN).

[0020] In another aspect, the processor is configured to process the signals obtained from each UWB sensor of the plurality of UWB sensors to determine a position of a user’s head may comprise identifying, in the signals obtained from each UWB sensor a static portion of the signals, wherein the static portion of the signals is a portion of the signals that remains unchanged over time. For example, during use of the hair styler a user may move their head (e.g., tilt / twist / turn their head). The processor thus may be configured to process the signals obtained from each UWB sensor of the plurality of UWB sensors to determine a position of a user’s head as well as changes in the position of a user’s head over time (e.g., a time frame).

[0021] In another aspect, to control, in response to the identified dynamic gesture and the determined position of the user’s head, at least one setting of the hair styling device may comprise determining, whether the dynamic gesture began on the left- or right-hand side of the user’s head, and wherein each identified dynamic gesture and its starting position relative to the left- or right-hand side of the user’s head is associated with one of a plurality of different control commands, and in response to identifying the gesture made by a user and its starting position relative to the left- or right-hand side of the user’s head, the processor is configured to transmit a corresponding control command to the hair styler to control the at least one setting of the hair styling device.

[0022] In another aspect, to control, in response to the identified dynamic gesture and the determined position of the user’s head, at least one setting of the computing device may comprise determining, whether the dynamic gesture began on the left- or right-hand side of the user’s head, and in response to identifying the gesture made by a user and its starting position relative to the left- or right-hand side of the user’s head, the processor is configured to control the at least one setting of the computing device.

[0023] In an aspect of the invention there is provided a hair styling system comprising a hair styling device, at least one ultra-wide band, UWB, sensor configured to transmit UWB radio pulses and to receive UWB radio signals from at least one radio frequency identification, RFID, tag on the hair styling device, at least one user interface for input of a desired hair style, and a computing device in communication with the at least one UWB sensor. The computing device comprises a processor configured to i) process signals obtained from the at least one UWB sensor to identify a movement of the hair styling device adjacent to at least one UWB sensor, and ii) provide feedback to a user in response to the identified movement.

[0024] In another aspect, the processor is configured to process signals obtained from the at least one UWB sensor to identify a movement of the hair styling device adjacent to the movement of the hair styling device, at least one UWB sensor may comprise comparing the signals obtained from the at least one UWB sensor with a plurality of gesture recognition models.

[0025] In another aspect, comparing the signals obtained from the UWB sensor with a plurality of gesture recognition models may comprise comparing a pattern of the signals obtained from the at least one UWB sensor with each one of the gesture recognition models of the plurality of gesture recognition models, wherein each gesture recognition model comprises one or more pre-stored UWB radio signal patterns corresponding to a gesture.

[0026] In another aspect, the one or more pre-stored UWB radio signal patterns corresponding to a movement of the hair styling device comprises a distance-time signal graph. In another aspect, to process signals obtained from the at least one UWB sensor to identify a movement of the hair styling device adjacent to the at least one UWB sensor may comprise comparing the signals obtained from the at least one UWB sensor with a plurality of gesture recognition models, wherein each one of the gesture recognition models is a convolutional neural network, CNN.

[0027] In another aspect, to provide feedback to a user in response to the identified movement may comprise comparing the identified movement of the hair styler device with a set of movements of the hair styler device required to achieve the desired hair style input at the at least one user interface, determining, based on the comparing, whether the identified movement of the hair styler device corresponds to at least one movement of the hair styler device required to achieve the desired hair style, and in response to the determining, the processor is configured to transmit a feedback command to the hair styler to provide feedback to a user in response to the identified movement. The feedback may comprise at least one of visual feedback provided via a display of the computing device, visual feedback provided via a display of the hair styler device, audio feedback provided via the computing device, haptic feedback provided via the hair styler and / or audio feedback provided via the hair styler (where the hair styler is provided with one or more speakers).

[0028] In another aspect, the identified movement of the hair styling device may comprise at least one of a rotating movement of the hair styler device, a unidirectional straight movement of the hair styler device, and / or an up-down movement of the hair styler device while arms of the hair styler device are open.

[0029] In another aspect of the invention there is provided a hair drying and / or styling device comprising a first ultra-wide band, UWB, sensor located on hair styling device for transmitting UWB radio pulses and for receiving UWB radio signals reflected by objects in the vicinity of the first UWB sensor, and a processor in communication with the first UWB sensor. The processor is configured to process signals obtained from the first UWB sensor to detect when the hair drying and / or styling device is in proximity to a user’s head, and perform a control action in response to detecting that the hair drying and / or styling device is in proximity to a user’s head. In another aspect, the control action comprises providing feedback to the user. For example, feedback provided to the user comprises at least one of: audio feedback, visual feedback, and / or haptic feedback.

[0030] In another aspect, the control action comprises controlling a power delivered to at least one heater of the hair drying and / or styling device.

[0031] In another aspect, the hair drying and / or styling device further comprises a second UWB sensor, the first and the second UWB sensors being located on either side of the hair drying and / or styling device, and the processor is in communication with the first and second UWB sensors. The processor is also configured to process signals obtained from the first and second UWB sensors to detect a side of the hair drying and / or styling device on which a user’s head is located.

[0032] In another aspect, the processor is configured to compare the signals obtained by the first and the second UWB sensors to determine which of the signals has the largest amplitude peak, and determine, based on which of the signals has the largest amplitude peak, which side of the hair drying and / or styling device on which a user’s head is located. For example, the user’s head may be determined to be on the side of the hair styler device corresponding to the side on which the UWB sensor that received the signal with the largest amplitude peak is located.

[0033] In another aspect, comparing the signals obtained by the first and the second UWB sensors comprises generating, for each of the signals obtained by the first and the second UWB sensors, a distance-amplitude graph, and analysing each distanceamplitude graph to identify which of the distance-amplitude graph contains the largest amplitude peak.

[0034] In another aspect, the hair styling device further comprises a pressure sensor located proximal to the first and / or the second UWB sensor. Furthermore, the processor is further configured to determine, based on data obtained from the pressure sensor, whether a user’s hand is positioned proximal to the first and / or second UWB sensor. In response to determining that the user’s hand is proximal to the first and / or second UWB sensor, applying a correction to the signals obtained from the first and / or UWB sensor to account for UWB radio signals reflected off the user’s hand. In another aspect, the processor is further configured to determine an orientation of the hair drying and / or styling device with respect to magnetic north.

[0035] In another aspect, the processor is in communication with orientation sensing circuitry configured to sense an orientation of hair drying and / or styling device , and wherein the processor is configured to process data received from the orientation sensing circuitry to determine an orientation of the hair drying and / or styling device with respect to magnetic north. For example, the orientation sensing circuitry comprises at least one of: an accelerometer, a gyrometer, and / or a magnetometer.

[0036] In another aspect, the processor is configured to perform a control action in response to determining the orientation of the hair drying and / or styling device and detecting that the hair drying and / or styling device is in proximity to a user’s head.

[0037] In another aspect, the computing device further comprises a user interface for selection of a desired hair style by a user, and the processor is further configured to determine movement of the hair styling device, compare the determined movement with a set of movements necessary to achieve the desired hair style to determine whether the movement is correct to achieve the desired hair style, and perform a control action based on the determination of whether the movement is correct to achieve the desired hair style.

[0038] In another aspect, the processor is configured to re-determine the orientation of the hair styling device, compare the orientation and the re-determined orientation of the hair styling device, and determine, based on the comparison, a movement of the hair styler device.

[0039] Brief Description of the Drawings

[0040] Embodiments of the invention will now be described, by way of example only, and with reference to the drawings in which:

[0041] Figure 1 a illustrates a perspective overview of a hair styling device;

[0042] Figure 1 b illustrates the device of Figure la when in use to style hair; Figure 2 illustrates a hair styler system used by an end user to style their hair;

[0043] Figure 3a illustrates internal components / modules of an ultra-wide band (UWB) sensor of the hair styler system;

[0044] Figure 3b illustrates the circuitry of an ultra-wide band (UWB) sensor of the hair styler system;

[0045] Figure 4a illustrates an example static gesture and processing thereof to adjust a function of the hair styler;

[0046] Figure 4b illustrates an example dynamic gesture and processing thereof to adjust a function of the hair styler;

[0047] Figure 5 illustrates an example process flow diagram depicting the steps involved in gesture-based control of a hair styler and / or computing device of the hair styler system;

[0048] Figure 6 illustrates an exemplar gesture-function mapping table stored in the memory of a computing device of the hair styler system;

[0049] Figure 7 illustrates an example use of a signal graph, generated through reflected UWB pulses, to determine a user’s head position and a gesture with respect to the user’s head position;

[0050] Figure 8 illustrates an example process flow diagram depicting the steps involved in another gesture-based control of a hair styler and / or computing device of the hair styler system;

[0051] Figure 9 illustrates an example use of a signal graph, generated through reflected UWB pulses, to determine a styling movement performed by a user of a hair styler;

[0052] Figure 10 illustrates an example process flow diagram depicting the steps involved in recognising a location and movement of a hair styler and providing appropriate feedback;

[0053] Figure 11 illustrates a table of example movements of a hair styler that may be performed by a user and the feedback that may be triggered by the computing device; and Figure 12 illustrates another example movement of the hair styler 1 and processing thereof to provide user feedback.

[0054] Figure 13 illustrates a hair styler that includes a computing device;

[0055] Figure 14a illustrates the computing device components and modules;

[0056] Figure 14b illustrates the circuitry of the UWB sensors;

[0057] Figure 15a depicts a graph showing a comparison of an actual orientation of the hair styler with a predicted orientation;

[0058] Figure 15b illustrates the roll, pitch, and yaw angles of rotation of the hair styler;

[0059] Figure 16a illustrates one example of the hair styler in use;

[0060] Figure 16b depicts signal amplitude-distance graphs of reflected UWB signals received at the UWB sensors located on the hair styler;

[0061] Figures 16c and 16d illustrate an example movement of the hair styler and the feedback that can be provided;

[0062] Figure 17 illustrates a process flow chart of the steps involved in providing feedback to a user;

[0063] Figure 18a illustrates another example of the hair styler in use;

[0064] Figures 18b and 18c depict another set of signal amplitude-distance graphs of reflected UWB signals received at the UWB sensors located on the hair styler; and

[0065] Figure 19 illustrates another process flow chart of the steps involved in providing feedback to a user.

[0066] Overview

[0067] Figure 1a illustrates a handheld (portable) hair styler 1. The hair styler 1 includes a first movable arm 4a and a second movable arm 4b, which are coupled at proximal ends thereof to a shoulder (or hinge) 2. The first arm 4a bears a first heater 6a at its distal end, and the second arm 4b bears a second heater 6b at its distal end. The first and second heaters 6a, 6b oppose one another and are brought together as the first and second arms 4a, 4b are moved from an open configuration to a closed configuration. As shown in Figure 1 b, during use, a tress of hair 40 is sandwiched between the two arms 4 so that the user’s hair is in contact with, and therefore heated by, outer heating surfaces of the heaters 6a, 6b. Therefore, as the user pulls the hair styler 1 along the tress of hair 40, the tress of hair 40 is heated by conductive heating to a suitable temperature to facilitate styling.

[0068] One or more user interfaces 11 are provided to allow the user to set user defined parameters and for the device to output information to the user. For example, a desired operating temperature may be set via the user interface 11. The user interface 11 may have a dial, button, or touch display for allowing the user to input information to the hair styler 1 and the user interface 11 may have an indicator light, display, sound generator or haptic feedback generator for outputting information to the user. In this embodiment, the user interface 11 also comprises a control button or switch 14 to enable the user to turn the hair styler 1 on or off; and an indicator light 15 to show whether the power is on.

[0069] A printed circuit board assembly (not shown) may be provided at any suitable location within the housing of the hair styler 1 and carries the control circuitry for controlling the operation of the hair styler 1 and for controlling the interaction with the user via the user interface 11. In this example, electrical power is provided to the hair styler 1 by means of a power supply located at an end of the device, via a power supply cord 3. The power supply may be an AC mains power supply. However, in an alternative embodiment the power supply may comprise one or more DC batteries or cells (which may be rechargeable, e.g., from the mains or a DC supply via a charging lead), thereby enabling the hair styler 1 to be a cordless product.

[0070] In use, the hair styler 1 is turned on, energising the heaters 6 to cause them to heat up. The user then opens the first and second arms 4a, 4b and, normally starting from the roots of the hair ( / .e., near the scalp), a length or tress of hair 40 (which may be clumped) is introduced between the arms 4a, 4b, transversely across the heaters 6a, 6b. The user then closes the arms 4a, 4b so that the length of hair 40 is held between the first and second arms 4a, 4b and then the user pulls the hair through the closed arms (as illustrated in Figure 1 b). The outer (hair contacting) surface of the heaters 6 is flat in this embodiment and so the hair styler 1 can be used to straighten the user’s hair. The hair styling hair styler 1 shown in Figure 1 can also be used to curl the hair by turning the hair styler 1 through approximately 180 degrees or more after clamping the hair between the arms 4a, 4b and before moving the hair styler 1 along the tress of hair 40. The control of the functions and / or settings of such hair stylers 1 however can be cumbersome, especially where a user must control the functions and / or settings via an array of buttons and / or user interfaces of the hair styler 1 . For example, where a user wishes to change a temperature of the hair styler, or trigger a heat / cold shot, the user may have to remove their hair from the hair styler to look at the available buttons and / or options on the user interface to change its settings. This in turn results in use of the hair styler 1 being less efficient than would be optimal, as the user may have to start-stop styling to change settings as they go.

[0071] Beneficially, by providing an Ultra-WideBand (UWB) sensor and computing device in the hair styling system herein described, a user is able to control functions and / or settings of the hair styler via gestures and movements of their body e.g., their hand. Such manipulation of the functions and settings of the hair styler beneficially means that a user can adjust the functions and / or settings of the hair styler while in use i.e., they no longer have to remove their hair from the hair styler to look at buttons and / or user interfaces. Furthermore, the hair styler can be controlled from a seated position without the user having to move around.

[0072] Further beneficially, by providing the UWB sensor and computing device in the hair styling system herein described a combination of a gesture and a location of a gesture relative to a part of a user’s body (e.g., the head) can be used to control functions and / or settings of the hair styler, thereby beneficially providing a greater array of possible gestures that may be used to control the settings / function of the hair styler. That in turn means a greater level of functionality can be achieved.

[0073] When using hair stylers at home, users are less likely to attempt complex styles due to the complexity of the movements and / or sequence of movements that may need to be performed with the hair styler to achieve a desired style. This in turn means that such hair stylers are not used to their maximum potential.

[0074] Beneficially, by providing a UWB sensor, a computing device, and radio-frequency identification (RFID) tags in the hair styling system herein described, the system is able to determine / track movements of the hair styler being performed by a user and provide appropriate feedback to the user to assist in their efforts to style their hair in accordance with a desired style. For example, the computing device beneficially stores sets and / or patterns of movements that are necessary to achieve specific styles. Upon selection of a desired style via an appropriate user interface, the hair styling system compares detected movements of the hair styler with those stored at the computing device and associated with the desired style to ascertain whether the user is performing movements correctly. Based on that determination, the hair styler system beneficially provides feedback (e.g., audio, visual and / or haptic feedback) to the user to guide them in their styling technique. That in turn beneficially improves overall user experience of the hair styler product. It is also hoped that this will beneficially encourage users to attempt more complex styles at home with the hair styler.

[0075] Furthermore, the use of UWB sensors as described above, as opposed to other types of sensors (e.g., light-based ToF sensors) provides a number of additional benefits to the hair styling system herein described. For example, UWB sensors can beneficially pinpoint exact locations in real-time, with an accuracy of around 50 cm (with optimal conditions and deployment), and extremely low latency. This represents a real advantage over other technologies such as Bluetooth, and Wi-fi which typically determine location via received signal strength indicators (RSSI) which can be used to determine locations with an accuracy of around 5m. UWB sensors are therefore particularly beneficial when determining locations in indoor environments.

[0076] Additionally, given the proliferation of narrowband technology, the use of UWB sensors as described above is also beneficial as the low transmission power and wide spectrum frequencies of UWB, allow for little to no interference with surrounding narrowband technologies.

[0077] Finally, as the use of UWB sensors as described above does not require the use of dedicated infrastructure, their implementation in hair styler systems is relatively simple and low cost compared to other location determining methods (e.g., cameras, light detection and ranging (LIDAR), and the like).

[0078] Each configuration of the hair styler system briefly summarised above will now be discussed in more detail with reference to Figures 2 to 12.

[0079] Gesture Recognition

[0080] Figure 2 illustrates a hair styler system 200 in use by an end user to styler their hair.

[0081] As seen in Figure 2 the hair styler system 100 comprises a handheld (portable) hair styler 1 , at least one ultra-wide band (UWB) sensor 220, and a processor 214. Optionally, the processor 214 may be stored within the handheld (portable) hair styler 1. Additionally, where the processor 214 is stored within the handheld (portable) hair styler 1 it may form part of a computing device 210. Alternatively, the processor 214 may be external to the handheld (portable) hair styler 1. Additionally, where the processor 214 is external to the handheld (portable) hair styler 1 it may form part of a computing device 210. The handheld hair styler 1 may be any appropriate type of hair styler device such as that previously described with reference to Figures 1 a and 1 b.

[0082] UWB is a short-range, wireless communication protocol that operates through radio waves at very high frequencies (e.g., between 3.1 and 10.6 GHz) in a wide band (e.g., a band of 500 MHz or greater). Unlike Wi-Fi and Bluetooth protocols, UWB is able to capture highly accurate spatial and directional data. The UWB sensor 220 is described in more detail with reference to Figure 3.

[0083] The computing device 210 may be any appropriate electronic device that can provide communication and data transfer between itself and the hair styler 1 and the UWB sensor 220. It will be appreciated that the computing device 210 may be an integral part of either the hair styler 1 or the UWB sensor 220. For example, appropriate circuitry that provides a memory 212, a processor 214, and a communication module 216 may be provided in the hair styler 1 , alternatively it may be provided as part of the UWB sensor 220.

[0084] Alternatively, the computing device 210 may be an external device e.g., a separate device from the hair styler 1 and the UWB sensor 220. For example, the computing device 210 may be a simple computer processing device with appropriate circuitry that provides a memory 212, a processor 214, and a communication module 216 - such as a personal computer, tablet, laptop, smart screen, or the like.

[0085] In another example, the computing device 210 may be a user equipment (UE), such as a UE used in telecommunication systems e.g., a smart phone. Where the computing device 210 is an external device such as a UE, it may be configured to communicate with the hair styler 1 and the UWB sensor 220 over any appropriate wireless communication links 224; 226 that can support communication between such devices. For example, they may communicate with one another over Wi-Fi, Bluetooth, or over any other radio access technology that supports communications between devices within close proximity of one another. Nevertheless, it will be appreciated that where the computing device 210 is an external device such as a UE, it may alternatively, be configured to communicate with the hair styler 1 and the UWB sensor 210 over a wired connection between the hair styler 1 and the UWB sensor 210.

[0086] It will be appreciated that depending on the form of the computer device 210, it may be configured with several other appropriate modules. By way of example only, where the computing device 210 is a UE (e.g., a smart phone), the computing device 210 may be equipped with an audio module 218 and one or more speakers for providing sounds and / or music to a user during use of the hair styler 1 .

[0087] As shown in Figure 2, during use, the UWB sensor 220 may transmit radio pulses 230 toward the user using the hair styler 1. For example, (and as described below in more detail), the UWB sensor 220 may emit radio pulses 230 across a wide spectrum frequency range (e.g., a band range of 500 MHz or greater) toward the user between every 10 to 100 ms. Having emitted those radio pulses 230, the UWB sensor 220 may subsequently receive (detect) reflections of those radio pulses which are converted into reflected radio pulse signals by the processor.

[0088] Where the UWB sensor 220 is provided with its own processor, the UWB sensor 220 may process those reflected radio pulses to translate them into data (e.g., reflected radio pulse signals), and then communicate that data over communication link 224 with the computing device 210. It will be appreciated that the shorter the duration of the pulse, the more precisely the processor of the UWB sensor can determine distance measurements and thus spatial and directional information.

[0089] Alternatively, where the UWB sensor 220 does not include its own processing capabilities, the UWB sensor 220 may, communicate appropriate information over communication link 224 to the computing device 210 to allow the computing device 210 to receive information on the reflected radio pulses to translate it into spatial and directional data.

[0090] The time of arrival (ToA) of each of those reflected radio pulse signals is dependent on how far away the object is off of which the radio pulse was reflected. Accordingly, the reflected radio pulse signals may be used to determine relative distances between the hair styler 1 and objects in the vicinity of the hair styler 1. Furthermore, it will be appreciated that the power (e.g., amplitude) of such reflected radio pulse signals will depend on various factors including the surface area (size) of the object from which the radio pulses are reflected. Accordingly, the reflected radio pulse signals may also be used to determine relative sizes of objects in the vicinity of the hair styler 1. By way of example only, an object may include a hand of a user, and the surface area of the user’s hand may vary depending on a gesture being performed by the user e.g., a closed fist gesture will result in reflected radio pulse signals with a lower amplitude than if the gesture was an open palm gesture.

[0091] Each reflected radio pulse signal may comprise a linear combination of reflected radio pulses from N different paths (directions) and an additive noise term, over a predetermined period of time such that it comprises N delayed and distorted signals that may, for example, be represented algebraically as: wherein: s(n,k) is the estimate of the transmitted pulse shape received at the receiver in the UWB sensor 220 that is usually distorted due to several different factors, such as the reflection, refraction, and scattering coefficients of objects,

[0092] N is additive noise, a™ is a scaling factor of the signal, and

[0093] Ti is a duration

[0094] Once received, each reflected radio pulse signal may also have corrections applied to it where appropriate to remove ‘clutter’ from the signals. Clutter is defined as aspects of the reflected pulse signals (also referred to simply as ‘reflected signals’) that are caused by background objects, that is to say objects that are far away from the UWB sensor 220 e.g., walls in the background behind the user. By applying such corrections, the remaining features of each reflected radio pulse signal may be clearer, enabling the processor to identify the presence of objects more clearly (e.g., gestures) in the foreground of the hair styler 1 .

[0095] Based on the reflected radio pulse signals, the computer device 210 may (further) process the signals to determine a gesture of a user. For example, the processor 214 of the communication device 210 may compare the signals with one or more gesture recognition models stored within the memory 212 of the communication device 210 to determine whether a user has performed a specific gesture.

[0096] Having determined that a particular gesture has been performed by the user, the computer device 210 may determine one or more functions of the hair styler 1 that are to be adjusted based on the determined gesture. By way of example only, the computer device may determine that a temperature of the hair styler 1 is to be adjusted based on the determined gesture. In response to determining that one or more functions of the hair styler 1 are to be adjusted, the computing device 210 may send an appropriate message and / or command to the hair styler 1 (e.g., over wireless communication link 226) to adjust the one or more functions of the hair styler 1 .

[0097] Beneficially the system illustrated in Figure 2 allows the control of a hair styler 1 using gestures (e.g., hand gestures), rather than having to press buttons on the hair styler 1 or use a touch screen to make inputs. Beneficially, a user is thus able to control the hair styler 1 while continuing to style their hair ( / .e., the styling procedure does not have to be interrupted). Furthermore, it is easier for a user to control the hair styler 1 , while in use, without having to move from a seated position.

[0098] Figure 3a illustrates possible internal components / modules of a UWB sensor 220.

[0099] As shown in Figure 3a, the UWB sensor 220 implemented in the system shown in Figure 2, has a transceiver 312 that transmits UWB pulses and receives reflected UWB pulses in response. The transmitted pulses will typically have a duration of a few nanoseconds and accordingly have a wide spectrum of the order of 500 MHz to 1.5GHz. The pulses are typically transmitted with a pulse repetition frequency of between 1 ms and 1 ns. The transceiver 312 also receives reflected radio pulses, reflected off the user and other objects in the vicinity of the UWB transceiver 312. It will be appreciated that while the UWB sensor 220 in Figure 3a is shown to have a transceiver 312 that facilitates both transmission and reception of radio pulses, the UWB sensor 220 may alternatively be provided with a separate transmitter and receiver circuitry capable of transmitting and receiving pulses, respectively.

[0100] As shown in Figure 3a, the UWB sensor 220 may optionally be provided with its own processor 314. For example, the UWB sensor 220 may be provided with a processor 314 that may be capable of processing reflected radio pulses to translate them into data (e.g., spatial, and directional data), and then communicate that data over communication link 224 with the computing device 220. Alternatively, the UWB sensor 220 may not be provided with its own processor 314, in which case the UWB sensor 220 may, communicate appropriate information over communication link 224 to the computing device 210 to allow the computing device 210 to receive information on the reflected radio pulses to translate it into spatial and directional data.

[0101] Furthermore, as shown in Figure 3a, the UWB sensor 220 is provided with a communication module 316 to allow communication with one or more external devices. For example, the UWB sensor 220 may be in communication with one or more computing devices (not shown in Fig. 3a) and / or a hair styler 1. By way of example only, the UWB sensor 220 may communicate with one or more computing devices 210 (not shown) and / or a hair styler 1 over Wi-Fi, Bluetooth, or over any other radio access technology that supports communications between devices within close proximity of one another. Alternatively, the UWB sensor 220 may communicate with one or more computing devices 210 (not shown) and / or a hair styler 1 over a wired connection between the hair styler 1 and the computing device 210.

[0102] Figure 3b illustrates the circuitry of the UWB sensor 220.

[0103] As shown in Figure 3b, the UWB sensor 220 includes an oscillator 220-3 and a pulse generator 220-4 to generate ultra-wide band pulses of electromagnetic radiation. The ultra-wide band pulses may optionally be passed through a modulator 220-5 to prepare the pulses for transmission by the transmission (Tx) antenna 220-7. As shown in Figure 3b, prior to transmission by Tx antenna 220-7, the pulses may also be passed through a power amplifier 220-6 to increase the power ( / .e., the amplitude) of the pulses.

[0104] The UWB sensor 220 also includes a receiver (Rx) antenna 220-8 for receiving reflected UWB signals. Once received by the Rx antenna 220-8, the reflected UWB signals are passed through a low-band pass filter 220-9 to allow the processing of reflected UWB signals below a cutoff frequency threshold while attenuating all signals above this cutoff frequency threshold. The reflected UWB signals are also passed through a low-noise amplifier 220-19 to amplify very low-power signals without significantly degrading their signal-to-noise ratio (SNR). The reflected UWB signals (and / or information pertaining to those reflected UWB signals) are then processed by the processor 314. For example, reflected UWB signals (and / or information pertaining to those reflected UWB signals) may be processed by the processor 314 to determine a proximity of a user of the hair styler 1 to the hair styler 1 as will be described in more detail later.

[0105] Optionally, prior to being processed by the processor 314, the reflected UWB signals may also be passed through a correlator receiver 220-11 to correlate the reflected UWB signals with the UWB pulses transmitted by the Tx antenna 220-7. For example, the reflected UWB signals may be passed through a mixer 220-12 where the received signal is mixed with a version of the transmitted UWB pulses with the resulting mixed signal being integrated by the integrator 220-13 prior to being processed by the processor 314.

[0106] Figure 4a illustrates an example static gesture and processing thereof to adjust a function of the hair styler 1 .

[0107] As shown in Figure 4a, there is an UWB sensor 220 in communication with a computing device 210 as described above with reference to Figure 2. It will be appreciated that the computing device 210 may be external to both the UWB sensor 220 and the hair styler 1. Alternatively, the computing device may be housed within the hair styler 1. It will further be appreciated that where the computing device is external to the hair styler 1 , the computing device 210 may communicate with the hair styler 1 over an appropriate communication link (e.g., communication link 226). The UWB sensor 220 is in communication with the computing device 210 over communication link 224.

[0108] As described briefly above, a user of the hair styler 1 may control one or more functions of the hair styler 1 via a gesture (e.g., a hand gesture) 410. Figure 4a shows, by way of example only, one possible gesture that a user may use to control one or more functions of the hair styler 1. The gesture 410 shown (hereafter referred to as ‘Devil Horns’ gesture) involves the user extending their first and last fingers of a hand while closing all other fingers and thumb towards their palm.

[0109] During use of the hair styler 1 , the end user sits (or alternatively stands) in front of the at least one UWB sensor 220, which in turn emits UWB radio pulses 230 toward the user. Those UWB radio pulses 230 propagate through air and space, with their energy dissipating as a function of distance away from the UWB sensor 220. Upon reaching an object such as the user, a hand of the user, a wall behind the user, or the like, those UWB radio pulses 230 will be reflected (not shown) off the respective objects, back toward the UWB sensor 220, which in turn detects the reflected pulses in the form of reflected pulse signals as described above. Based on the reflected pulse signals, a processor 314 of the UWB sensor 220, or a processor 214 of the computing device 210, processes the signals (or information associated with them) to determine highly accurate spatial and directional data in the form of a signal graph 420 (e.g., a distance-amplitude signal graph).

[0110] Processing the reflected pulse signals may include any appropriate form of processing known in the art that allows the generation of graphs such as distance-amplitude signal graphs and / or distance-time signal graphs and / or sequences of distance-amplitude signal graphs over time, and the like.

[0111] As previously described, the amplitude of the reflected pulse signals will vary depending on the size (surface area) of the object(s) from which the pulses reflect off. For example, the distance-amplitude signal graph 420 shown in Figure 4a is one example of the signal amplitudes detected when the reflected pulse signals are a consequence of UWB pulses being reflected off a user’s hand making a ‘Devils Horn’ gesture.

[0112] Once the spatial and directional data in the form of a signal graph 420 is determined, the computing device 210, which may have determined the signal graph 420 itself, or alternatively received the signal graph 420 from the UWB sensor 220, uses the signal graph 420 to determine the gesture being performed by a user.

[0113] By way of example only, the processor 214 of the computing device 210 may determine a gesture being performed by a user of the hair styler 1 based on comparing one or more aspects of the signal I signal graph 420 with tables stored within the memory 212 of the computing device 210. For example, there may be stored within the memory 212 of the computing device 210 one or more mapping tables that map specific amplitude values, or sequence of amplitude values, to specific gestures. The processor 214 may be able to process the signal I signal graph 420 to identify an aspect of the signal I signal graph 420 (e.g., an amplitude value at a distance assumed to correspond to a distance of a user from the sensor), and then lookup that aspect in the one or more mapping tables to identify a gesture being performed by a user of the hair styler 1 . By way of another example, the processor 214 of the computing device 210 may compare the signal graph 420 with one or more gesture recognition models stored within the memory 212 of the computing device 210 to determine a gesture being performed by a user of the hair styler 1. For example, the memory 212 of the computing device 210 may store a plurality of recognition models, each associated with their own respective gesture. Each recognition model of the plurality of recognition models may comprise a signal graph 420 (or data corresponding to such a signal graph 420), that corresponds to a reflected UWB signal that would be expected to be detected by a receiver in the event that a particular gesture is performed in front of the UWB sensor 220.

[0114] Once the signal graph 420 has been compared with the one or more gesture recognition models stored within the memory 212 of the computing device 210, the processor 214 may determine a gesture being performed by the user. For example, when performing this comparison, the processor 214 compares the signal graph 420 with the one or more gesture recognition models to determine a matching metric for each comparison that is made. A matching metric may, by way of example only, comprise a percentage similarity value indicating a percentage similarity between the signal graph 420 and a gesture recognition model i.e., a percentage similarity between the signal graph 420 and the signal graph of the gesture recognition model. Nevertheless, it will be appreciated that the matching metric may be any appropriate metric that indicates a level of similarity or match between the signal graph 420 and gesture recognition model.

[0115] Based on the matching metrics, the processor 214 determines which gesture recognition model matches closest to the signal graph 420. For example, the processor may select the gesture recognition model associated with the largest percentage similarity value. By determining which gesture recognition model matches closest to the signal graph 420, the processor 214 in turn determines which gesture is being performed by the user, as each gesture recognition model is associated with their own specific gesture (e.g., ‘Devil Horns’ gesture).

[0116] Based on determining the gesture being performed by the user, the processor 214 determines a function of the hair styler 1 to adjust, and sends, over the communication link 226 with the hair styler 1 , an appropriate message or command to adjust the corresponding function of the hair styler 1 . For example, having determined that the user is performing a ‘Devil Horns’ gesture, the processor 214 may send an appropriate message or command to the hair styler 1 to adjust a temperature of the hair styler 1 e.g., each time the ‘Devil Horns’ gesture is detected the temperature of the hair styler 1 may be incrementally increased in steps such as 120 °C, 140 °C, 160 °C, 180 °C, 210 °C.

[0117] It will be appreciated that while the above describes a scenario where the temperature of the hair styler 1 may be incrementally increased in steps such as 120 °C, 140 °C, 160 °C, 180 °C, 210 °C, another gesture may also be configured (such as an upside down ‘Devil Horns’ gesture by way of example) such that when it is detected the temperature of the hair styler incrementally decreases in steps of, for example 20 °C.

[0118] Furthermore, it will be appreciated that a further gesture may also be configured that triggers a ‘hard stop’ such that the temperature cannot be raised any further than its current temperature.

[0119] While the gestures described above with reference to Figure 4a relate to static gestures, it will be appreciated that the same system can be used to detect dynamic gestures. Further by providing multiple UWB sensors 220 at different positions in front of the user (e.g., one in front of the user, one to the left of the user, and one to the right of the user), the system can differentiate between left hand gestures and right-hand gestures which can allow the user to control more functions / settings of the hair styler 1 .

[0120] Figure 4b illustrates an example dynamic gesture and processing thereof to adjust a function of the hair styler 1 .

[0121] As shown in Figure 4b, there are three UWB sensors 220-1 , 220-2, 220-3 in communication with a computing device 210 as described above with reference to Figure 2. The UWB sensors 220-1 , 220-2, 220-3 are in communication with the computing device 210 over communication links 224-1 , 224-2, 224-3 respectively. It will be appreciated that the computing device 210 may be an external to both the UWB sensor 220 and the hair styler 1. Alternatively, the computing device may be housed within the hair styler 1. It will further be appreciated that where the computing device 210 is external to the hair styler 1 , the computing device 210 may communicate with the hair styler 1 over an appropriate communication link (e.g., communication link 226).

[0122] As described briefly above, a user of the hair styler 1 may control one or more functions of the hair styler 1 via a gesture (e.g., a hand gesture) 430. Figure 4b shows, by way of example only, one possible gesture that a user may use to control one or more functions of the hair styler 1. The gesture 430 shown (hereafter referred to as ‘Swipe Right’ gesture) involves the user moving their hand in a direction from the left to the right. During use of the hair styler 1 , the end user sits in front of UWB sensors 220-1 , 220-2, 220-3 positioned in front of, and to the left and right of the user, which in turn emit UWB radio pulses 230-1 , 230-2, 230-3 toward the user. Those UWB radio pulses 230-1 , 230- 2, 230-3 propagate through air and space, with their energy dissipating as a function of distance away from the UWB sensor 220-1 , 220-2, 220-3. Upon reaching an object such as the user, a hand of the user, a wall behind the user, or the like, the UWB radio pulses 230-1 , 230-2, 230-3 will be reflected (not shown) off the respective objects, back toward the UWB sensor 220-1 , 220-2, 220-3, which in turn detects the reflected pulses in the form of reflected pulse signals as described above.

[0123] However, unlike in the static gesture scenario, the reflected pulse signals received at the different UWB sensors 220-1 , 220-2, 220-3 will change over time as the user moves their hand from the left to the right as shown in the distance-time graphs shown in Figure 4b.

[0124] Based on the reflected pulse signals, the processor 214 of the computing device 210, processes the reflected signals to determine highly accurate spatial and directional data in the form of a signal graph 320-1 , 320-2, 320-3 from each UWB sensor 220-1 , 220-2, 220-3 (e.g., the three distance-time signal graphs as shown in Figure 4b). In more detail, each time a UWB pulse is transmitted from the three UWB sensors 220-1 to 220- 3 a new amplitude / distance plot (such as is shown in Figure 4a) is generated. This information is processed to identify the distance of specific objects and the distance of those objects over time is determined by processing the signals received from successive UWB pulses that are transmitted by the UWB sensors 220. The pulse repetition frequency has to be sufficient to be able to capture the desired motion. A pulse repetition frequency of the order of 10KHz is sufficient to capture most human movements. The distance information contained in the reflected UWB signals relating to more static objects - such as the background walls or the user’s head, can be filtered out, so that the determined distance-time signal graphs 320-1 , 320-2, 320-3 contain the distance information of moving objects such as the user’s hand. By processing the distance-time graphs 320-1 320-2, 320-3 from the top UWB sensor, the left UWB sensor and the right UWB sensor, the processor 214 can determine if the object that is moving is on the left-hand side or the right-hand side of the user’s head and how that object is moving over time relative to each of the UWB sensors 220. This information can then be used to select a corresponding control function to be performed. Once the spatial and directional data in the form of signal graphs 320-1 , 320-2, 320-3 is determined, the computing device 210, uses the signal graph 420 to determine a dynamic gesture being performed by a user by analysing the signal graphs 320-1 , 320- 2, 320-3 themselves as described above.

[0125] Alternatively, the computing device 210, may use the signal graphs 320-1 , 320-2, 320-3 to determine a dynamic gesture being performed by a user by analysing the signal graphs 320-13, 20-2, 320-3 and comparing them with pre-stored gesture models as before in the static gesture case.

[0126] Based on determining the gesture being performed by the user, the processor 214 determines a function of the hair styler 1 , or of the computing device 210 to adjust, and sends an appropriate message or command to adjust that function of the hair styler 1 or that function of the computing device 210. For example, having determined that the user is performing a ‘Swipe Right’ gesture, the processor 214 may send an appropriate message to adjust a music track being played currently by the computing device 210.

[0127] The process of gesture recognition and setting adjustment of the hair styler 1 is further described below with reference to the process flow diagram of Figure 5.

[0128] Figure 5 illustrates an example process flow diagram depicting the steps involved in gesture-based control of a hair styler 1 and / or computing device 210.

[0129] At step S510, a UWB sensor 220 transmits UWB pulses toward a user operating a hair styler 1. The UWB sensor transmits radio pulses 230 approximately once every 10 to 100 ms across a wide spectrum frequency range. Those radio pulses propagate through the air toward a user operating the hair styler 1 and upon hitting an object (e.g., a hand of the user), the radio pulses are reflected off the object, back to the UWB sensor 220.

[0130] At step S520, the reflected UWB pulses are received by the UWB sensor 220.

[0131] At step S530, the reflected UWB pulses are either processed by a processor of the UWB sensor 220 or a processor of the computing device 210 to determine the gesture performed by the user.

[0132] At step S540, having determined the gesture being performed by a user, the computing device 210 sends an appropriate message or command to the hair styler 1 to adjust a function and / or setting of the hair styler 1 based on the gesture being performed. For example, the memory 212 of the computing device 210 may store a mapping table that maps specific gestures to specific functions and / or settings of the hair styler 1 that are to be adjusted when that specific gesture is detected. Having determined which gesture is being performed, the computing device 210 may look up the gesture in the mapping table stored in its memory 212 to determine the function and / or setting of the hair styler 1 that is to be adjusted based on the gesture. Having determined the function and / or setting, an appropriate message or command may be sent by the computing device 210 to the hair styler 1 over a communication link i.e., each gesture is associated with one of a plurality of control commands and in response to detecting a specific gesture, the processor is configured to transmit the corresponding control command to the hair styler 1.

[0133] Alternatively, or additionally, at step S540 having determined the gesture being performed by the user, the computing device 210 may determine one or more functions and / or settings of the computing device 210 to adjust based on the gesture being performed. For example, the memory 212 of the computing device 210 may store a mapping table that maps specific gestures to specific functions and / or settings of the computing device 210 (additionally or alternatively to specific functions and / or settings of the hair styler 1) that are to be adjusted when that specific gesture is detected. Having determined which gesture is being performed, the computing device 210 may look up the gesture in the mapping table stored in its memory 212 to determine the function of the computing device 210 that is to be adjusted based on the gesture. The computing device 210 may then adjust one or more of its functions and / or settings as appropriate. By way of example only, where the computing device 210 has an audio module 218 (e.g., where the computing device 210 is a smart phone), the computing device 210 may be able to play music while a user is styling their hair using the hair styler 1 . As such, the user may use gestures to change the music track being played.

[0134] An example of a gesture-function mapping table that may be stored in the memory 212 of the computing device 210 will now be described with reference to Figure 6.

[0135] Figure 6 illustrates an exemplary gesture-function mapping table that may be stored in the memory 212 of the computing device 210. As shown, the table 600 includes four example gestures that may be performed by a user to control and / or adjust a function and / or setting of the hair styler 1. In one example, the user may make a ‘Devil Horns’ gesture with one of their hands wherein the user extends the first and last finger of their hand while closing the remaining fingers and thumb.

[0136] In response to detecting the ‘Devil Horns’ gesture using the process described with reference to Figure 5, the computing device 210 may determine, based on the table 600, that the user wishes to control I adjust a temperature of the hair styler 1 . By way of example only, each time the user makes the ‘Devil Horns’ gesture, the computing device 210 may determine that the user wishes to increase the temperature of the hair styler 1 by a set amount. As shown in table 600, the possible temperature settings of the hair styler 1 may be pre-configured in a specific pattern such that each time the ‘Devil Horns’ gesture is detected the computing device sends an appropriate message or command to the hair styler to change the temperature of the hair styler 1 to the next temperature in the pre-configured pattern of temperatures. By way of example only, the pre-configured pattern of temperatures may be {120 °C, 140 °C, 160 °C, 180 °C, 210 °C}. If the hair styler 1 is at the maximum temperature of 210 °C, then in response to detecting the ‘Devil Horns’ gesture, the computing device 210 may send an appropriate message or command to the hair styler 1 to loop the temperature back around to the beginning of the pre-configured pattern of temperatures e.g., 120 °C. It will be appreciated that the preconfigured pattern of temperatures given is by way of example only, and that other patterns are possible.

[0137] In another example, the user may make a ‘Finger Gun’ gesture with the index finger extended outwards and the remaining fingers and thumb closed into a fist. In response to detecting the ‘Finger Gun’ gesture using the process described with reference to Figure 5, the computing device 210 may determine, based on the table 600, that a user wishes to control a heat shot feature of the hair styler 1 . By way of example only, in response to determining that a user has performed the ‘Finger Gun’ gesture the computing device 210 sends an appropriate message or command to the hair styler 1 to initiate a heat shot function (e.g., a rapid increase in the temperature of the hair styler 1 for a pre-determined period of time) of the hair styler 1 to inject heat into a user’s hair.

[0138] In another example, the user may make a ‘Hand Swipe’ gesture with their hand. The Hand Swipe’ gesture may comprise a swipe to the left of a hand, or a swipe to the right of a hand. Each will be discussed in turn. The user may make a ‘Hand Swipe’ gesture with their hand to the left ( / .e., ‘Left Hand Swipe’ gesture). In response to detecting the ‘Left Hand Swipe’ gesture using the process described with reference to Figure 5, the computing device 210 may determine, based on the table 600, that a user wishes to replay a current music track being played by the computing device 210. The computing device 210 may then restart the current music track being played.

[0139] In another example, the user may make another ‘Hand Swipe’ gesture with their hand. For example, the user may make a ‘Hand Swipe’ gesture with their hand to the right ( / .e., ‘Right Hand Swipe’ gesture). In response to detecting the ‘Right Hand Swipe’ gesture using the process described with reference to Figure 5, the computing device 210 may determine, based on the table 600, that a user wishes to skip a current music track being played by the computing device 210. The computing device 210 may then skip the current music track being played.

[0140] In another example, (not shown in table 600), the user may make confirmatory gestures with their hand such as a ‘Thumbs-Up’ gesture to confirm whether they wish to proceed with a step of a styling process or procedure. For example, when the user is practising with the hair styler 1 and the hair styler 1 is operating in a training mode, the hair styler 1 may not heat up its heating plates to allow heat to the user’s hair. In response to detecting the ‘Thumbs-Up’ gesture, the computing device 210 may determine that a user wishes to switch from a training mode to a styling mode of the hair styler 1 , and the computing device 210 sends an appropriate message or command to the hair styler 1 to initiate the styling mode, which may include initiating a heat-up procedure of the heating plates of the hair styler 1 to allow the application of heat to the user’s hair.

[0141] In another example, (not shown in table 600), the user may make negative gestures with their hand such as a ‘Thumbs-Down’ gesture to indicate that they are not ready to proceed with a step of a styling process or procedure. For example, when the user is practising with the hair styler 1 and the hair styler 1 is operating in a training mode, the hair styler 1 may not heat up its heating plates to allow heat to the user’s hair. In response to detecting the ‘Thumbs-Down’ gesture, the computing device 210 may determine that a user wishes to remain in the training mode of the hair styler 1 , and the computing device 210 sends an appropriate message or command to the hair styler 1 to indicate that the hair styler 1 is to remain in the training mode.

[0142] It will be appreciated that the mapping table 600 in Figure 6 is given by way of example only and that the system may be configured with any multitude of gestures that may be used to control and / or adjust a function and / or setting of the hair styler 1 or the computing device 210. For example, the system may be configured such that specific gestures may be used to adjust and / or control (to name but a few): a cold shot function of the hair styler 1 , and a styling mode of the hair styler 1 .

[0143] Head Position Detection

[0144] Additionally, or alternatively to the gesture recognition procedures described above, the hair styler system 100 comprising the handheld (portable) hair styler 1 , the ultra-wide band (UWB) sensor 220, and the computing device 210, as shown in Figure 2, may also be configured to enable detection of a user’s head position.

[0145] Figure 7 illustrates an example use of a signal graph, generated through reflected UWB pulses, to determine a user’s head position and a gesture performed with respect to the determined position of the user’s head.

[0146] As shown in Figure 7, there are three UWB sensors 220-1 , 220-2, 220-3 in communication with a computing device 210 as described above with reference to Figures 2 & 3. The UWB sensors 220-1 , 220-2, 220-3 are in communication with the computing device 210 over communication links 224-1 , 224-2, 224-3 respectively. It will be appreciated that the computing device 210 may be an external to both the UWB sensor 220 and the hair styler 1. Alternatively, the computing device may be housed within the hair styler 1. It will further be appreciated that where the computing device 210 is external to the hair styler 1 , the computing device 210 may communicate with the hair styler 1 over an appropriate communication link (e.g., communication link 226).

[0147] As described briefly above, a user of the hair styler 1 may control one or more functions of the hair styler 1 via a gesture (e.g., a hand gesture) 430. Additionally, or alternatively, a user of the hair styler 1 may control one or more functions of the hair styler 1 via a combination of a gesture (e.g., a hand gesture) 430 and a position of the gesture (e.g., a position of the gesture with respect to a user’s head).

[0148] Figure 7 shows, by way of example only, one possible gesture that a user may use to control one or more functions of the hair styler 1. The gesture 430 shown (hereafter referred to as ‘Swipe Right’ gesture) involves the user moving their hand in a direction from the left to the right.

[0149] During use of the hair styler 1 , the end user sits in front of UWB sensors 220-1 , 220-2, 220-3 positioned in front of, and to the left and right of the user, which in turn emit UWB radio pulses 230-1 , 230-2, 230-3 toward the user. Those UWB radio pulses 230-1 , 230- 2, 230-3 propagate through air and space, with their energy dissipating as a function of distance away from the UWB sensor 220-1 , 220-2, 220-3. Upon reaching an object such as the user, a hand of the user, a wall behind the user, or the like, the UWB signals will be reflected (not shown) off the respective objects, back toward the UWB sensor 220-1 , 220-2, 220-3, which in turn detects the reflected pulses in the form of reflected pulse signals as described above.

[0150] Based on the reflected pulse signals, the processor 214 of the computing device 210, processes the reflected signals to determine highly accurate spatial and directional data in the form of a signal graph 320-1 , 320-2, 320-3 from each UWB sensor 220-1 , 220-2, 220-3 (e.g., the three distance-time signal graphs as shown in Figure 7). In more detail, each time a UWB pulse is transmitted from the three UWB sensors 220-1 to 220-3 a new amplitude / distance plot (such as is shown in Figure 4a) is generated. This information is processed to identify the distance of specific objects and the distance of those objects over time is determined by processing the signals received from successive UWB pulses that are transmitted by the UWB sensors 220-1 , 220-2, 220-3.

[0151] The pulse repetition frequency has to be sufficient to be able to capture the desired motion. A pulse repetition frequency of the order of 10KHz is sufficient to capture most human movements. The distance information contained in the reflected UWB signals relating to more static objects - such as the background walls or the user’s head, can be filtered out, so that the determined distance-time signal graphs 320-1 , 320-2, 320-3 contain the distance information of moving objects such as the user’s hand. By processing the distance-time graphs 320-1 320-2, 320-3 from the top UWB sensor, the left UWB sensor and the right UWB sensor, the processor 214 can determine if the object that is moving is on the left-hand side or the right-hand side of the user’s head and how that object is moving over time relative to each of the UWB sensors 220. This information can then be used to select a corresponding control function to be performed.

[0152] Once the spatial and directional data in the form of signal graphs 320-1 , 320-2, 320-3 is determined, the computing device 210, uses the signal graphs 320-1 , 320-2, 320-3 to determine a dynamic gesture being performed by the user in one of the manners described above with reference to Figure 4b. For example, based on the signal graphs 320-1 , 320-2, 320-3 the computing device 210 may determine that a left-to-right (or right- to-left) swiping gesture is being performed by the user in front of the UWB sensors 220- 1 , 220-2, 220-3. As will be appreciated, the reflected pulse signals received at the different UWB sensors 220-1 , 220-2, 220-3 that are a consequence of reflections from the user’s hand moving in space will change over time as the user moves their hand from the left to the right as shown in the distance-time graphs 320-1 , 320-2, 320-3 shown in Figure 7. However, the user’s head, which is static, results in a static signal 322 in the distance-time graphs 320-1 , 320-2, 320-3 e.g., a static portion of the reflected pulse signals that does not change over time. Accordingly, the location of the user’s head may also be determined based on the distance-time graphs 320-1 , 320-2, 320-3, as well as whether the movement of the user’s hand started / finished on the left / right hand side of the user’s head.

[0153] By way of another example only, the processor 214 of the computing device 210 may compare the signal graphs 320-1 , 320-2, 320-3 with one or more gesture recognition models stored within the memory 212 of the computing device 210 to determine a gesture being performed by a user of the hair styler 1. For example, the memory 212 of the computing device 210 may store a plurality of recognition models, each associated with their own respective gesture. Each recognition model of the plurality of recognition models may comprise sets of signal graph 320-1 , 320-2, 320-3 (or data corresponding to such signal graphs 320-1 , 320-2, 320-3), that corresponds to a reflected UWB signals that would be expected to be detected by a receiver in the event that a particular dynamic gesture is performed in front of the UWB sensors 220-1 , 220-2, 220-3.

[0154] Once the signal graphs 320-1 , 320-2, 320-3 have been compared with the one or more gesture recognition models stored within the memory 212 of the computing device 210, the processor 214 may determine a gesture being performed by a user. For example, when performing the comparison, the processor 214 may compare the signal graphs 320-1 , 320-2, 320-3 with the one or more gesture recognition models and a matching metric for each comparison may be determined. A matching metric may, by way of example only, comprise a percentage similarity value indicating a percentage similarity between the signal graphs 320-1 , 320-2, 320-3 and a gesture recognition model i.e., a percentage similarity between the signal graphs 320-1 , 320-2, 320-3 and the signal graph of the gesture recognition model. Nevertheless, it will be appreciated that the matching metric may be any appropriate metric that indicates a level of similarity or match between the signal graphs 320-1 , 320-2, 320-3 and gesture recognition model. Based on the matching metrics, the processor 212 determines which gesture recognition model matches closest to the signal graphs 320-1 , 320-2, 320-3. For example, the processor may select the gesture recognition model associated with the largest percentage similarity value. By determining which gesture recognition model matches closest to the signal graphs 320-1 , 320-2, 320-3, the processor 212 in turn determines which gesture is being performed by a user, as each gesture recognition model is associated with their own specific gesture (e.g., ‘Swipe Right’ gesture).

[0155] Furthermore, based on the static signal 322 and the known positions of the UWB sensors 220-1 , 220-2, 220-3, the processor 214 is also able to determine a location of the user’s head, and the position at which the gesture is performed (when static), or starts and finishes (when dynamic) with respect to the user’s head.

[0156] Based on determining the gesture being performed by the user, and in addition the position relative to the user’s head at which the gesture was performed, the processor 212 determines a function of the hair styler 1 , or a function of the computing device 210 to adjust, and sends, an appropriate message or command to adjust that function of the hair styler 1 or that function of the computing device 210. For example, having determined that the user is performing a ‘Swipe Right’ gesture, the processor 212 may send an appropriate message to adjust a music track being played currently by the computing device 210.

[0157] Beneficially, by being able to determine which portions of the reflected signal correspond to reflections off the left and right side of the user’s head respectively, the computing device 210 may be able to adjust and / or control one or more functions and / or settings of the hair styler 1 using more advanced gestures. For example, the computing device 210 may determine a location of a gesture relative to a user’s head e.g., the computing device 210 may determine that a user is making the ‘Devil Horns’ gesture to the left of the user’s head which may correspond to a request to control and / or adjust a temperature of the hair styler 1 by increasing the temperature. In a similar vein, the computing device 210 may determine that a user is making the ‘Devil Horns’ gesture to the right of the user’s head which may correspond to a request to control and / or adjust a temperature of the hair styler 1 by decreasing the temperature.

[0158] It will be appreciated that the combination of being able to determine a gesture and a relative location of where that gesture is performed with respect to the right and left sides of the user’s head, allows a greater number of gestures to be discriminated thereby allowing a greater number of functions or settings of the hair styler 1 and / or of the computing device to be controlled.

[0159] Figure 8 illustrates an example process flow diagram depicting the steps involved in another gesture-based control of a hair styler 1 and / or computing device 210.

[0160] At step S810, a UWB sensors 220-1 , 220-2, 220-3 transmits UWB pulses toward a user operating a hair styler 1. The UWB sensor transmits UWB radio pulses 230 (e.g., approximately 1 pulse ms) across a wide spectrum frequency range. Those radio pulses propagate through the air toward a user operating the hair styler 1 and upon hitting an object (e.g., a hand of the user), the radio pulses are reflected off the object, back to the UWB sensors 220-1 , 220-2, 220-3.

[0161] At step S820, the reflected UWB pulses are received by the UWB sensors 220-1 , 220-2, 220-3.

[0162] At step S830, the reflected UWB pulses are processed by a processor to process the reflected UWB pulses into spatial and directional data such as a signal graph (S832).

[0163] At step S838, having determined a gesture being performed by a user, the computing device 210, analyses the signal in the determined signal graph to identify a portion of the signal corresponding to reflected UWB pulses reflected from the user’s head. For example, the computing device 210 may determine that the portion of the signal where the signal has its greatest static amplitude that is unchanged over time corresponds to UWB reflected pulses from the user’s head For example, as the user’s head is not moving, a static portion (amplitude) of the signal would be expected within the distancetime graph over a period of time, while the initiation of a new gesture would result in a new amplitude signal in the signal graph. Accordingly, when a new amplitude signal is observed in the signal graph, that new amplitude may be attributed to a new gesture that is being performed relative to the static portion (amplitude) of the signal corresponding to the user’s head.

[0164] Once the portion of the signal associated with UWB pulses reflecting off a user’s head has been identified, the computing device 210 can assign sections of the portions of the signal to the left and right side of the user’s head, respectively. For example, assuming that the user is facing the UWB sensors 220-1 , 220-2, 220-3 located to the left, centre and right of the user respectively and the relative positions of those UWB sensors is known by the computing device 210, then using the identified portion of the signal associated with UWB pulses reflecting off a user’s head, the computing device 210 can divide the signal into a first (left) and a second (right) section to the left and the right of the identified static signal. The first section of the signal will correspond to UWB pulses reflected from the left side of the user’s head, while the second section will correspond to UWB pulses reflected from the right side of the user’s head. In that way, the computing device 210 may be able to determine, whether observed new gestures are being performed on the left and right side of a user’s head, respectively.

[0165] Alternatively, where the gesture is a dynamic gesture moving from left-to-right or right-to- left, the computing device 210 may determine whether the gesture began / finished at the left / right hand side of the user’s head as described above with reference to Figure 7.

[0166] At step S840, having determined the gesture being performed by a user, and a location of the gesture with respect to the left- and right-hand side of a user’s head (e.g., whether the gesture is on the left or right hand side of the head, or whether the gesture began / finished at the left or right hand side of the head), the computing device 210 sends an appropriate message or command to the hair styler 1 to adjust a function and / or setting of the hair styler 1 based on the gesture being performed. For example, the memory 212 of the computing device 210 may store a mapping table that maps specific gestures performed in specific locations to specific functions and / or setting of the hair styler 1 that are to be adjusted when that specific gesture is detected. Having determined which gesture is being performed, the computing device 210 may look up the gesture in the mapping table stored in its memory 212 to determine the function and / or setting of the hair styler 1 that is to be adjusted based on the gesture. Having determined the function and / or setting, an appropriate message or command may be sent by the computing device 210 to the hair styler 1 over a communication link i.e., each gesture is associated with one of a plurality of control commands and in response to detecting a specific gesture, the processor is configured to transmit the corresponding control command to the hair styler 1 .

[0167] Alternatively, or additionally, at step S840 having determined a gesture being performed by a user, and a location of the gesture with respect to the left- and right-hand side of a user’s head, the computing device 210 may determine one or more functions and / or settings of the computing device 210 to adjust based on the gesture being performed. For example, the memory 212 of the computing device 210 may store a mapping table that maps specific gestures performed in specific locations to specific functions and / or settings of the computing device 210 (additionally or alternatively to specific functions and / or settings of the hair styler 1 ) that are to be adjusted when that specific gesture is detected. Having determined which gesture is being performed, the computing device 210 may look up the gesture in the mapping table stored in its memory 212 to determine the function and / or setting of the hair styler 1 that is to be adjusted based on the gesture. Having determined the function and / or setting, the computing device 210 may adjust one or more of its functions and / or settings as appropriate.

[0168] Styling Recognition

[0169] Additionally, or alternatively to the gesture recognition procedures and gesture location determination procedures described above, the hair styler system 100 comprising the handheld (portable) hair styler 1 , the UWB sensor 220, and the computing device 210, as shown in Figure 2, may also be configured to enable styling recognition and feedback i.e., a process for recognising a styling movement performed by a user, and providing appropriate feedback.

[0170] Figure 9 illustrates an example use of a signal graph, generated through reflected UWB pulses, to determine a styling movement performed by a user of a hair styler 1 .

[0171] As shown in Figure 9, there is an UWB sensor 220 in communication with a computing device 210 as described above with reference to Figures 2 & 3. The UWB sensor 220 is in communication with the computing device 210 over communication link 224. Although not shown, it will be appreciated that, as shown in Figure 2, the hair styler 1 is in communication with the computing device 210 over an appropriate communication link.

[0172] As described briefly above, it may be beneficial for the computing device 210 to be able to determine particular movements and / or actions that a user is making with the hair styler 1 as they style their hair, and to provide appropriate feedback to the user. For example, it may be beneficial to provide feedback to a user to indicate that they are moving their hair through the hair styler 1 too quickly or not quick enough to achieve the desired style. Additionally, or alternatively, it may be beneficial to provide feedback to a user to indicate that a curling action of the user is being performed correctly or incorrectly to achieve the desired style.

[0173] Figure 9 shows, by way of example only, one possible movement that a user may make with the hair styler 1. The movement shown (hereafter referred to as ‘Curling’ movement) involves the user placing a tress of their hair in the hair styler 1 and then rotating the hair styler 1 to curl their hair.

[0174] Radio-frequency identification (RFID) tags

[0175] In one example, one or more Radio-frequency identification (RFID) tags may be implemented in and / or on the hair styler 1. Such RFID tags typically comprise an integrated circuit (IC), an antenna and a substrate. They use electromagnetic fields to automatically identify and track objects to which the tags are attached (e.g., the hair styler 1).

[0176] During use of the hair styler 1 , the end user sits in front of at least one UWB sensor 220 (which in this scenario may be considered an RFID reader or interrogator), which in turn emits UWB radio pulses 230 toward the user and the hair styler 1 . Upon reaching the hair styler 1 , those UWB radio pulses 230 activate the one or more RFID tags on the hair styler 1. Those RFID tags may be passive tags that receive their power from the UWB pulses ( / .e., the electromagnetic wave induces a current in the RFID tag's antenna), or alternatively the RFID tags may be active tags that have their own power source such as a battery. Alternatively the RFID tags may be active tags that are connected to the power supply / circuitry of the hair styling device. Preferably, the RFID tags on the hair styler 1 will be passive RFID tags.

[0177] Once activated, the one or more RFID tags may send signals back to the UWB sensor 220. For example, the one or more RFID tags may modulate the UWB signals they receive with their own unique ID (which may be an ID specific to the hair styler 1 ) such that the signals sent back to the UWB sensor 220 by the RFID tags carry ID information (e.g., hair styler ID information).

[0178] Once received, those signals sent back to the UWB sensor 220 by the RFID tags may be processed by the UWB sensor 220 itself if it has its own appropriate processor for recovering such data. Alternatively, the UWB sensor 220 may forward those signals, or send information about the signals, in an appropriate message, to the computing device 210 for the computing device 210 to process the signals and recover the data they contain. For example, as shown in Figure 9, as the hair styler 1 pulled in a downward trajectory (e.g., as it is pulled through a tress of hair) EM signals detected by the UWB sensor 220 from the RFID tags will change over time as the trajectory of the hair styler 1 progresses. As shown in the time-amplitude graph 920 that may be generated by the processor 214 based on the EM signals, the amplitude of the EM signals may change over time as the distance of the hair styler from the UWB sensor 220 changes. Accordingly, the computing device 210 may be able to use such EM signals and generated time-amplitude graph 920 to determine a movement of the hair styler 1 relative to the UWB sensor 220. In addition, the UWB signals received by the UWB sensor 220 from the RFID tags, the computing device 210 may also be used to determine the identity / type of hair styler 1 being used, and thus may be able to determine, based on the type of hair styler 1 being used, whether the movement of the hair styler 1 relative to the UWB sensor 220 is appropriate. For example, appropriate movements for specific types of hair stylers may be stored in the memory 212 of the computing device 210.

[0179] Having determined that the user is moving the hair styler 1 in a particular way appropriate feedback may be provided to the user (e.g., visual, audio, and / or haptic feedback) to indicate whether or not the user is using the hair styler 1 correctly to achieve a desired style.

[0180] By way of example only, during initiation of the hair styler 1 , the user may input into the hair styler a particular hair style that they wish to achieve. Such input may occur via one or more buttons on the hair styler 1 , and / or via a touch display or other appropriate user interface of the hair styler 1 , and / or via a touch display or other appropriate user interface of the computing devices (e.g., a phone or computing tablet). Once selected, the UWB sensor 210 and RFID tags may be used as described above to track the movement of the hair styler 1 to ensure that a user is using the hair styler 1 correctly to achieve the desired style. When it is determined that the user is not moving the hair styler 1 correctly to achieve the desired style (for example the detected movement may be compared with a set of expected movements needed to achieve the desired style which may be stored in a memory 212 of the computing device 210), then the computing device 210 may send an appropriate message to the hair styler 1 to provide feedback to the user e.g., haptic feedback such as a vibration of the hair styler 1 and / or audio feedback from the hair styler 1 where the hair styler 1 is provided with one or more speakers. Additionally, or alternatively, the computing device 210 itself may provide feedback to the user such as sounds (if the computing device 210 has speakers) or visual indications via a display of the computing device 210 (e.g., a screen of a smartphone). It will be appreciated that the determination of the rotational movement of the hair styler 1 and the corresponding feedback provided as described above is given by way of example only and that other movements may also be determined, with different types of feedback being provided for each movement.

[0181] The process of styling recognition and providing appropriate feedback is further described below with reference to the process flow diagram of Figure 10.

[0182] Figure 10 illustrates an example process flow diagram depicting the steps involved in recognising a location and movement of a hair styler 1 and providing appropriate feedback based on a hair style desired by the user.

[0183] At step S1010, a user of the hair styler 1 inputs, via any appropriate user interface of the hair styler 1 (or the computing device 210), an input to indicate a desired hair style to be achieved using the hair styler 1 . It will be appreciated that the possible hair styles that may be selected by a user may be pre-configured in the hair styler 1 and the movements needed to achieve that style may be pre-stored in a memory of the hair styler 1 and / or an app of the hair styler 1. Alternatively, where the hair styler 1 is configured to communicate with a computing device 210, the hair styler 1 may request, via an appropriate message, the computing device 210 to search the Internet and download a set of movements needed to achieve a particular hair style, which may in turn be stored in the memory of the hair styler 1 and / or the memory of the computing device 210. At step S1020, one or more UWB sensors 220 transmit UWB pulses toward a user operating a hair styler 1. The UWB signals propagate through the air toward a user operating the hair styler 1 , and upon reaching the hair styler 1 those UWB signals energise one or more RFID tags on the hair styler 1 .

[0184] At step S1030, in response to the pulses from the UWB sensor 220 energising the one or more RFID tags on the hair styler 1 , the one or more RFID tags transmit one or more electromagnetic EM signals ( / .e., EM pulses) back to the UWB sensor 220. Those EM signals are generated and transmitted by the RFID tag in response to being in the vicinity of the UWB sensor ( / .e., in response to receiving UWB pulses from the UWB sensor 220). For example, the one or more RFID tags may modulate the UWB signals they receive with their own unique ID (which may be an ID specific to the hair styler 1 ) such that the signals sent back to the UWB sensor 220 by the RFID tags carry ID information (e.g., hair styler ID information). If the RFID tag is an active tag, then the EM signals are generated and transmitted using an energy source such as a battery. Preferably, however, the RFID tags are passive tags, and thus the EM signals are generated using radio energy from the transmitted UWB pulses received from the UWB sensor 220.

[0185] At step S1040, the UWB sensor 220 processes the EM signals received from the one or more RFID tags, or alternatively, the UWB sensor 220 may transmit appropriate information pertaining to the EM signals it receives to the computing device 210 to process the EM signals from the one or more RFID tags.

[0186] Processing the EM signals at step S1040, may include, determining, based on the EM signals, a movement of the hair styler 1 (S1044). For example, the computing device 210 may process the EM signals (or any appropriate information about the EM signals received from the UWB sensor 220) to determine, based on e.g., changes in the properties of such EM signals over time, a movement of the hair styler 1 e.g., a rotation of the hair styler 1 , a downward / upward movement of the hair styler 1 , and the like. In addition, as already described above, processing the EM signals may also include processing the EM signals to recover data modulated in the signals such as an ID specific to the hair styler 1 .

[0187] At step S1050, the computing device 210, may compare the determined movement of the hair styler 1 with a set of movements necessary to achieve the desired style input by the user at step S1010. For example, the determined movement of the hair styler 1 may be compared with the movements needed to achieve the desired style that are stored in a memory of the computing device 210 or downloaded from the Internet. By way of example only, where a user wishes to achieve a particular style that comprises hair curls, the computing device 210 may compare determined rotational movements of the hair styler 1 with rotational movements needed to achieve the desired style that are stored in a memory of the computing device 210 or downloaded from the Internet to determine if the user is rotating the hair styler 1 correctly e.g., rotating in the correct direction.

[0188] At step S1060, having compared the determined rotational movements of the hair styler 1 with rotational movements needed to achieve the desired style that are stored in a memory of the computing device 210 or downloaded from the Internet to determine if the user is rotating the hair styler 1 correctly (e.g., rotating in the correct direction), the computing device 210 may provide appropriate feedback to the user (e.g., audio, haptic and / or visual feedback) via the computing device 210 or the hair styler 1. For example, if it is determined by the computing device 210 that the user is not rotating the hair styler 1 in the correct direction, the computing device 210 may send an appropriate message or command to the hair styler 1 to activate a haptic unit in the hair styler 1 such that the hair styler 1 vibrates to indicate to the user that they are making a mistake i.e., each gesture / movement is associated with one of a plurality of feedback commands and in response to detecting a specific gesture / movement, the processor is configured to transmit the corresponding feedback command to the hair styler 1 to trigger appropriate feedback.

[0189] In another example, if it is determined by the computing device 210 that the user is not rotating the hair styler 1 in the correct direction, the computing device 210 may send an appropriate message or command to the hair styler 1 to activate a user interface or display on the hair styler 1 and indicate a message on that display informing the user that they are making a mistake. Alternatively (or additionally), where the hair styler is provided with one or more speakers, the computing device 210 may send an appropriate message or command to the hair styler 1 to trigger the one or speakers to play an error or warning sound to inform the user that they are making a mistake.

[0190] In another example, if it is determined by the computing device 210 that the user is not rotating the hair styler 1 in the correct direction, the computing device 210 may display a message on a display of the computing device 210 informing the user that they are making a mistake.

[0191] In another example, if it is determined by the computing device 210 that the user is not rotating the hair styler 1 in the correct direction, the computing device 210 may display an image or message or play a sound (if the computing device 210 is equipped with an audio module 218 and speakers) informing the user that they are making a mistake.

[0192] It will be appreciated that the examples given above are non-exhaustive and that other forms of appropriate feedback via the hair styler 1 , computing device 210, or both the hair styler 1 and the computing device 210 may be provided to a user in response to the computing device 210 determining a particular movement of the hair styler 1 and comparing that movement with a set of movements necessary to achieve a desired hair style. An example set of movements that may be performed by the user and the corresponding feedback that may be triggered by the computing device will now be described with reference to the table in Figure 11 .

[0193] Figure 11 illustrates a table of example movements that may be performed by the user and the feedback that may be triggered by the computing device 210 in response to determining those movements and comparing them with the set of movements needed to achieve a desired hair style. As shown, the table 1100 includes four example movements that may be performed by a user, and corresponding feedback that may be triggered. In one example, the movement is a straight movement of the hair styler 1 e.g., a straight, unidirectional, downward movement that may be performed by a user when they are running a tress of hair through the hair styler 1 to straighten their hair.

[0194] Having determined that the user is moving the hair styler 1 in a straight movement, the computing device 210 compares that determined movement of the hair styler 1 with a set of movements necessary to achieve the desired hair style. For example, the computing device 210 may compare the determined movement with movements necessary to achieve the desired hair style input by the user at step S1010. As described above, the movements necessary to achieve the desired hair style may be stored in a memory of the computing device 210 or may be downloaded into the memory of the computing device 210 once the user inputs the desired hair style at step S1010. Based on the comparison of the determined movement and the movements necessary to achieve the desired hair style, the computing device 210 may trigger appropriate feedback to the user. For example, the computing device 210 may indicate to the user whether they should / should not be performing the movement and / or indicate whether they are making the movement too slowly or too quickly. As described above, the computing device 210 may provide feedback in the form of visual or audio feedback. Alternatively, or additionally, the computing device 210 may send an appropriate message or command to the hair styler 1 over a communication link to trigger the hair styler 1 to provide appropriate feedback e.g., visual, or haptic feedback.

[0195] In another example, the movement is a curling movement (e.g., a rotational movement of the hair styler 1 ) to curl a tress of hair in the hair styler 1. Having determined that the user is moving the hair styler 1 in a curling movement, the computing device 210 compares that determined movement of the hair styler 1 with a set of movements necessary to achieve the desired hair style. For example, the computing device 210 may compare the determined movement with movements necessary to achieve the desired hair style input by the user at step S1010. As described above, the movements necessary to achieve the desired hair style may be stored in a memory of the computing device 210 or may be downloaded into the memory of the computing device 210 once the user inputs the desired hair style at step S1010. Based on the comparison of the determined movement and the movements necessary to achieve the desired hair style, the computing device 210 may trigger appropriate feedback to the user. For example, the computing device 210 may indicate to the user whether they should / should not be performing the movement and / or indicate whether they are making the curling in the correct direction or not. As described above, the computing device 210 may provide feedback in the form of visual or audio feedback. Alternatively, or additionally, the computing device 210 may send an appropriate message or command to the hair styler 1 over a communication link to trigger the hair styler 1 to provide appropriate feedback e.g., visual, or haptic feedback.

[0196] In another example, the movement may be a random non-specific / useful movement. Having determined that the user is moving the hair styler 1 in a non-specific direction, the computing device 210 compares that determined movement of the hair styler 1 with a set of movements necessary to achieve the desired hair style. For example, the computing device 210 may compare the determined movement with movements necessary to achieve the desired hair style input by the user at step S1010. As described above, the movements necessary to achieve the desired hair style may be stored in a memory of the computing device 210 or may be downloaded into the memory of the computing device 210 once the user inputs the desired hair style at step S1010. As described above, that computing device 210 and its respective memory may be stored in / on the hair styler 1 itself, or alternatively may be a separate external computing device such as a phone, tablet, or the like.

[0197] Based on the comparison of the determined movement and the movements necessary to achieve the desired hair style, the computing device 210 may trigger appropriate feedback to the user. For example, where the movement does not correspond with any of the movements necessary to achieve the desired hair style, the computing device 210 may provide feedback indicating that the movement is not a recognised movement, and / or not a movement necessary to achieve the desired hair style (e.g., the computing device 210 may play a random sound such as a ‘magic wand’ sound as if the user just cast a spell). As described above, the computing device 210 may provide feedback in the form of visual or audio feedback. Alternatively, or additionally, the computing device 210 may send an appropriate message or command to the hair styler 1 over a communication link to trigger the hair styler 1 to provide appropriate feedback e.g., visual, or haptic feedback.

[0198] In another example, the hair styler 1 is operating in a training mode to allow the user of the hair styler 1 to practice specific movements that may be required to achieve a desired hair style. For example, the user may switch the hair styler 1 to a training mode by an appropriate input via at least one user interface of the hair styler 1 . While in the training mode the user may be able to input a desired hair style to achieve, however the hair styler 1 will not heat up the heating plates of the hair styler 1 so that the user can practice the movements needed to achieve the desired hair style without actively styling their hair. While in the training mode, a movement of the hair styler 1 may include movement of the hair styler 1 in an up-down movement while the arms 4a, 4b of the hair styler 1 are open. Having determined that the user is moving the hair styler 1 in an up- down movement with the arms 4a, 4b of the hair styler 1 open, the computing device 210 may determine that the user wishes to repeat the movement performed immediately before the movement of the hair styler 1 in the up-down movement. Beneficially, this allows the user to practise movements of the hair styler 1 over and over again until they have perfected the movement.

[0199] It will be appreciated that the table 1100 in Figure 11 is by way of example only and that the system may be configured to detect any of a multitude of movements and provide any of a multitude of corresponding feedback.

[0200] Pattern Recognition

[0201] It will be appreciated that while some of the examples described above make use of RFID tags and the UWB sensor 220 to determine the location and movement of the hair styler 1 , other methods of detecting the location and movement of the hair styler 1 are possible. For example, rather than RFID tags and an UWB sensor 220, a camera may be provided, in communication with the computing device 210, that is able to track the location and movement of the hair styler 1 .

[0202] Figure 12 illustrates an example movement of the hair styler 1 and processing thereof to provide user feedback. As shown in Figure 12, there is a camera 1220 in communication with a computing device 210 as described above with reference to Figure 2. The camera 1220 is in communication with the computing device 210 over communication link 1224. Although not shown, it will be appreciated that, as shown in Figure 2, the hair styler 1 is in communication with the computing device 210 over an appropriate communication link.

[0203] Figure 12 shows, by way of example only, one possible movement of the hair styler 1 that a user may carry out. The movement shown involves the user rotating the hair styler to facilitate curling of a tress of hair when placed in the hair styler 1 .

[0204] During use of the hair styler 1 , the end user sits in front of the camera 1220, which captures image data of the user and their use of the hair styler. The computing device 210 in communication with the camera may continuously, or periodically, process / analyse the image data generated by the camera 1220 to determine patterns of movements of the hair styler 1. For example, the computing device 210 may store in its memory 212 sets of image data that corresponds to particular movements of the hair styler e.g., the memory 212 of the computing device 210 may store a sequence of images of the hair styler 1 in different positions as it is rotated over time. The processor of the computing device 210 may compare image data captured by the camera 1220 to image data stored in its memory to determine a movement of the hair styler 1 . By way of example, the processor may compare the image data with each sequence of images (or image data) stored in the memory of the computing device 210 and assign a matching metric for each comparison, the matching metric indicating a degree or percentage similarity between the captured image data and specific image data stored in the memory 212 of the computing device 210.

[0205] Once the comparisons have been made, the computing device 210 determines a pattern of movements being performed by a user. For example, the computing device 210 may determine the pattern of movements being performed based on which sequence of images (or image data) stored in the memory of the computing device 210 are assigned the highest matching metric when compared with the image data captured by the camera 1120.

[0206] Once the comparisons have been made, the computing device 210, compares the determined pattern of movements of the hair styler 1 with a pattern of movements necessary to achieve the desired style input by the user (which may also be stored in the memory 212 of the computing device 210). For example, the determined pattern of movements of the hair styler 1 may be compared with the pattern of movements needed to achieve the desired style that are stored in a memory of the computing device 210 or downloaded from the Internet.

[0207] By way of example only, where a user wishes to achieve a particular style that comprises hair curls, the computing device 210 may compare the determined pattern of movements of the hair styler 1 with rotational movements needed to achieve the desired style that are stored in a memory of the computing device 210 or downloaded from the Internet to determine if the user is rotating the hair styler 1 correctly e.g., rotating in the correct direction.

[0208] Having compared the determined pattern of movements of the hair styler 1 with rotational movements needed to achieve the desired style that are stored in a memory of the computing device 210 or downloaded from the Internet to determine if the user is rotating the hair styler 1 correctly (e.g., rotating in the correct direction), the computing device 210 may provide appropriate feedback to the user (e.g., audio, haptic and / or visual feedback) via the computing device 210 or the hair styler 1. For example, if it is determined by the computing device 210 that the user is not rotating the hair styler 1 in the correct direction, the computing device 210 may send an appropriate message or command to the hair styler 1 to activate a haptic unit in the hair styler 1 such that the hair styler 1 vibrates to indicate to the user that they are making a mistake.

[0209] It will be appreciated that the example given above is non-exhaustive and that other forms of appropriate feedback via the hair styler 1 , computing device 210, or both the hair styler 1 and the computing device 210 may be provided to a user in response to the computing device 210 determining a particular pattern of movements of the hair styler 1 and comparing that pattern of movements with one or more patterns of movements necessary to achieve a desired hair style.

[0210] User Proximity Detection

[0211] Control System

[0212] Figure 13 illustrates a hair styler 10 that includes a computing device 1310 within the hair styler 10. For example, the computing device may take the form of one or more printed circuit boards (PCBs) with electrical components thereon that provide computer processing capabilities to process data collected by one or more sensors of the hair styler 10. Alternatively, (not shown), the hair styler 10 may be in communication with an external computing device 1310 that provides computer processing capabilities to process data collected by one or more sensors of the hair styler 10 and communicated to the external computing device 13210 over a communication link (e.g., via Wi-Fi, Bluetooth, local area network (LAN) connectivity, or the like).

[0213] The computing device 1310 comprises a processor 1314 (such as a microprocessor or CPU), a memory 1312, and several modules that provide specific sensing and control circuitry. By way of example only, the computing device 1310 may comprise an orientation module 316 configured to make orientation measurements and determine an orientation of the hair styler 10 with respect to a particular reference point (e.g., a user’s head / body). The computing device 1310 may comprise a proximity module 1318 configured to make proximity measurements and determine a proximity of the hair styler 10 to a particular reference point (e.g., a user’s head / body). Furthermore, the computing device 1310 may comprise a feedback module 1320 configured to provide appropriate feedback to a user. For example, the feedback module 1320 may be configured to allow the provision of at least one of audio, or haptic, or visual feedback. Nevertheless, it will be appreciated that the feedback module 1320 may be configured to allow the provision of any appropriate type or types of feedback to a user to make indication to the user.

[0214] In one example, the feedback may be audio feedback provided by one or more speakers provided in the hair styler 10. In this scenario, the audio feedback may be triggered by the feedback module 1320 of the computing device 1310 within the hair styler 10. Alternatively, where the computing device 1310 is an external computing device 1310 the audio feedback may be triggered by the external computing device 1310 sending an appropriate message or command to the hair styler 10 over a communication link between the external computing device 1310 and the hair styler 10. Additionally, or alternatively, where the computing device 1310 is an external computing device 1310 the audio feedback may be provided by one or more speakers of the external computing device 1310.

[0215] In another example, the feedback may be haptic feedback provided by one or more haptic units provided in the hair styler 10. In this scenario, the haptic feedback, which may for example include vibrations of the hair styler 10, may be triggered by the feedback module 1320 of the computing device 1310 within the hair styler 10. Alternatively, where the computing device 1310 is an external computing device 1310, the haptic feedback may be triggered by the external computing device 1310 sending an appropriate message or command to the hair styler 10 over a communication link between the external computing device 1310 and the hair styler 10.

[0216] In another example, the feedback may be visual feedback provided by one or more user interfaces (Ills) and / or displays provided in the hair styler 10. In this scenario, the visual feedback may be triggered by the feedback module 1320 of the computing device 1310 within the hair styler 10. Alternatively, where the computing device 1310 is an external computing device 1310 the visual feedback may be triggered by the external computing device 1310 sending an appropriate message or command to the hair styler 10 over a communication link between the external computing device 1310 and the hair styler 10. Additionally, or alternatively, where the computing device 1310 is an external computing device 1310 the visual feedback may be provided by one or more Ills and / or displays of the external computing device 1310. The modules and circuitry of the computing device 1310 used in the monitoring and control of the hair styler 10 briefly described above will now be described in more detail with reference to Figure 14.

[0217] Figure 14a illustrates the computing device 1310 components and modules of the hair styler 10.

[0218] As shown in Figure 14a, the computing device 1310 comprises several circuitry components and modules for monitoring the use of the hair styler 10 and to provide appropriate feedback to a user.

[0219] The computing device 1310 may comprise its own power source 1324, or alternatively may be connected to another power source such as a power source of the hair styler 10 itself. The computing device 1310 also has a processor 1312 powered by the power supply 1324. The processor 1312 comprises a microprocessor 1312-1 and a memory 1314, or alternatively, the memory 1314 may be separate to the processor 1312 but connected to the processor 1312 via appropriate wiring / coupling.

[0220] There is also provided one or more user interfaces 1326 coupled to the microprocessor 1312-1 , for example to provide one or more user controls and / or output indications such as a visual indication.

[0221] There is also provided drive circuitry 1328 coupled to the microprocessor 1312-1 , for example to control the power provided to the heaters 1328-1 of the hair styling device 1. By way of example only, power is provided to the heaters 1328-1 for providing heat via the hair styling device 1 to a user’s hair. The power supplied to the heaters 1328-1 is controlled by the microprocessor 1312-1 via drive circuitry 1328. For example, the power supplied to the heaters 1328-1 may be controlled by drive circuitry 1328 (which may include one or more power semiconductor switching devices (triacs)) which may control the application of a voltage derived from the power source 1324 in accordance with instructions from the microprocessor 1312-1. The microprocessor 1312-1 is coupled to a memory 1314 (which is typically a non-volatile memory) that may, by way of example only, store processor control code for implementing one or more control methods that control the heating of the heaters 1328-1 in accordance with a desired operating temperature of the heaters 1328-1 and a proximity of the hair styler 10 to a user.

[0222] There is also provided an orientation module 1316 coupled to the microprocessor 1312- 1 , for example to provide capabilities to determine an orientation of the hair styler 10 relative to a particular reference point (e.g., a user’s head / body). The orientation module 1316 comprises orientation sensing circuitry 1316-1 to allow the microprocessor 1312-1 to communicate with, and collect data from, one or more orientation sensing based devices that are configured to collected data relating to the orientation of the hair styler 10 relative to a particular reference point (e.g., a user’s head / body). By way of example only, the one or more orientation sensing based devices may include at least one of: a magnetometer 1316-2, or a gyrometer 1316-3, or an accelerometer 1316-4.

[0223] In one example the one or more orientation sensing based devices may include at least the magnetometer 1316-2. The magnetometer 1316-2 may be used to measure a magnetic force on the magnetometer. For example, the magnetometer may be used to measure the Earth’s gravitational field in order to determine a compass bearing of the hair styler i.e., the hair styler’s 1 orientation with respect to the Earth’s gravitational field.

[0224] In another example the one or more orientation sensing based devices may include at least the gyrometer 1316-3. The gyrometer 1316-3 (i.e., a gyroscope 1316-3) may be located within the hair styler 10 to detect movement of the hair styler 10. The gyroscope 1316-3 in the hair styler 10 may be used to determine whether the hair styler 10 is in use (i.e., whether it is being moved around, or whether it is stationary). The gyroscope 1316- 3 may also be used to measure angular motion (e.g., rotation) of the hair styler 10 in space.

[0225] In another example the one or more orientation sensing based devices may include at least the accelerometer 1316-4. The accelerometer 1316-4 may be located within the hair styler 10 to measure the acceleration (the rate of change of velocity) of the hair styler 10 in its own instantaneous rest frame.

[0226] While the examples above describe the implementation of gyroscopes, accelerometers, and magnetometers individually, it will nevertheless be appreciated that any number of, and combination of, such devices may be implemented in the hair styler 10 to provide orientation sensing capabilities.

[0227] There is also provided in the computing device 1310 a proximity module 1318 coupled to the microprocessor 1312-1 , for example to provide capabilities to determine a proximity of the hair styler 10 to a particular reference point (e.g., a user’s head / body).

[0228] The proximity module 1318 comprises proximity sensing circuitry 1318-1 to allow the microprocessor 1312-1 to communicate with, and collect data from, one or more proximity sensing based devices that are configured to collected data relating to the proximity of the hair styler 10 relative to a particular reference point (e.g., a user’s head / body). By way of example only, the one or more proximity sensing based devices may include at least an ultra-wide band (UWB) sensor 1318-2.

[0229] A UWB sensor 1318-2 may include a transceiver that transmits UWB pulses and receives reflected UWB pulses. For example, the transceiver may be capable of transmitting approximately 1 pulse every 10 - 100 ms across a wide spectrum frequency range (e.g., at least 500 MHz wide) toward the user. The transceiver may also be capable of receiving reflected pulses every 10 - 100 ms, reflected off of the user. It will be appreciated that while the UWB sensor 1318-2 is described herein as having a transceiver that facilitates both transmission and reception of radio pulses, the UWB sensor may alternatively be provided with a separate transmitter and receiver capable of transmitting and receiving pulses respectively. The circuitry of the UWB sensor 1318-2 is described in more detail below with reference to Figure 14b.

[0230] There is also provided in the computing device 1310 a feedback module 1322 coupled to the microprocessor 1312-1 , for example to provide feedback to a user of the hair styler 10. The feedback module 1322 comprises feedback circuitry 1322-1 and at least one means of providing feedback to a user of the hair styler 10. For example, as shown in Figure 14a, there is provided a haptic unit 1322-2 that is configured to provide haptic feedback to a user (e.g., vibrations, sequences of vibrations, patterns of vibrations, and the like, via the hair styler 10). Nevertheless, it will be appreciated that a haptic unit 1322-2 is only one possible example of a feedback unit that may be provided. In another example, (not shown), there may be provided, additionally to the haptic unit, or alternatively to the haptic unit, an audio feedback unit that allows audio feedback (e.g., sounds) to be provided to a user of the hair styler 10. For example, the audio feedback unit may include one or more speakers capable of providing audio as a feedback indication to a user of the hair styler 10. In another example (not shown), there may be provided, additionally or alternatively to the haptic unit and / or the audio unit, a visual feedback unit that allows visual feedback (e.g., indications on displays, LEDs, and the like) to be provided to a user of the hair styler 10. For example, the visual feedback unit may include appropriate circuitry to allow indications to be signalled to a user via one or more Uls of the hair styler 10 such as a display screen, LED lights or the like.

[0231] While the examples above describe the implementation of haptic, audio, and visual feedback individually, it will nevertheless be appreciated that any number of, and combination of, such feedback types may be implemented in the hair styler 10 to provide appropriate feedback to a user while they are operating the hair styler 10.

[0232] It will be appreciated that while the above description refers to a computing device 1310 within the hair styler 10, nevertheless the computing device 1310 may alternatively be external to the hair styler 10. For example, the computing device 1310 may be a smart device linked to the hair styler 10 over Wi-Fi / Bluetooth (e.g., a smartphone).

[0233] Figure 14b illustrates the circuitry of the one or more UWB sensors 1318-2 incorporated in the hair styler 10. This circuitry is conventional and is included for completeness. As those skilled in the art will appreciate other kinds of UWB circuitry could be used to transmit and receive the UWB signals.

[0234] As shown in Figure 14b, the UWB sensor 1318-2 includes an oscillator 1318-3 and a pulse generator 1318-4 to generate ultra-wide band pulses. The ultra-wide band pulses are passed through a modulator (or pulse shaper) 1318-5 to prepare the pulses for transmission by transmission (Tx) antenna 318-7. As shown in Figure 14b, prior to transmission by Tx antenna 1318-7, the modulated pulses may also be passed through a power amplifier 1318-6 to increase the power ( / .e., the amplitude) of the transmitted UWB pulses.

[0235] The UWB sensor 1318-2 also includes a receiver (Rx) antenna 1318-8 for receiving reflected UWB signals. Once received by the Rx antenna 1318-8, the reflected UWB signals may be passed through a low-band pass filter 1318-9 that removes unwanted high frequency and low frequency signals. The reflected UWB signals are also passed through a low-noise amplifier 1318-10 to amplify very low-power signals without significantly degrading their signal-to-noise ratio (SNR). The reflected UWB signals (and / or information pertaining to those reflected UWB signals) are then processed by the processor 1312 of the computing device 310. For example, reflected UWB signals (and / or information pertaining to those reflected UWB signals) may be processed by the processor 1312 to determine a proximity of a user of the hair styler 10 to the hair styler

[0236] 10 as will be described in more detail later.

[0237] Optionally, prior to being processed by the processor 1312 of the computing device 1310, the reflected UWB signals may also be passed through a correlator receiver 1318-

[0238] 11 to correlate the reflected UWB signals with the UWB pulses transmitted by the Tx antenna 1318-7. For example, the reflected UWB signals may be passed through a mixer 1318-12 to mix the UWB pulses and the reflected UWB signals with the output of the mixer 1318-12 being integrated by the integrator 1318-13 prior to being processed by the processor 1312 of the computing device 1310.

[0239] Orientation Calculation

[0240] During use, as the user moves and / or rotates the hair styler 10, the orientation module 1316 determines an orientation of the hair styler 10 with respect to a reference point (e.g., with respect to a user’s head / body, or alternatively, with respect to the direction of the Earth’s magnetic field).

[0241] To determine the orientation, the microprocessor 1312-1 in communication with the orientation module 1316 may request and collect data from at least one of a magnetometer 1316-2, or a gyrometer 1316-3, or an accelerometer 1316-4. For example, the microprocessor 1312-1 in communication with the orientation module 316 may use the magnetometer 1316-2 to measure a magnetic force on the magnetometer. For example, the magnetometer 1316-2 may be used to measure the Earth’s gravitational field in order to determine a compass bearing of the hair styler i.e., the hair styler’s 1 rotation with respect to the magnetic north.

[0242] Additionally, or alternatively, the microprocessor 1312-1 in communication with the orientation module 1316 may use the gyrometer 1316-3 to measure a rotational velocity of the hair styler 10. For example, the gyrometer 1316-3 may be used to measure a rate of rotation and / or angular momentum of the hair styler 10 to as the user moves the hair styler 10 to determine a tilt and / or lateral orientation of the hair styler 10.

[0243] Additionally, or alternatively, the microprocessor 1312-1 in communication with the orientation module 1316 may use the accelerometer 1316-4 to measure a linear motion of the hair styler 10. For example, the accelerometer 1316-4 may be used to measure a rate of change of velocity of the hair styler 10 in a linear direction as the user moves the hair styler 10.

[0244] Based on some, or all of the data measured by the magnetometer 1316-2, or a gyrometer 1316-3, or an accelerometer 1316-4, the microprocessor 1312-1 determines a rotational matrix R that describes, in linear algebraic terms, a rotation of the hair styler 10 in Euclidean space. The rotational matrix R is described algebraically as follows in Equation 2:

[0245] R =

[0246] Eq. 2

[0247] Wherein: a = roll angle f3 = pitch an le y = yaw angle

[0248] Figure 15a illustrates the roll, pitch, and yaw angles of rotation of the hair styler 10. As shown in Figure 15a, the roll angle a corresponds to rotation of the hair styler 10 about the Z-axis as labelled in Figure 15a, the pitch angle corresponds to rotation of the hair styler 10 about the Y-axis as labelled in Figure 15a, and the yaw angle y corresponds to rotation of the hair styler 10 about the X-axis as labelled in Figure 15b, wherein the X-, Y-, and Z- axis used have their usual meaning in Euclidean geomertry ( / .e., the Cartesian co-ordinate system). Once the rotational matrix R is determined, the microprocessor 1312-1 in communication with the orientation module 316, uses the accelerometer 1316-4 (and / or the magnetometer 1316-2, and / or a gyrometer 1316-3) to measure a linear motion of the hair styler 10, and determine an acceleration vector A of the hair styler 10. The acceleration vector A is described algebraically as follows in Equation 3:

[0249] Eq. 3

[0250] Wherein: ax= acceleration in the X direction ay= acceleration in the Y direction az= acceleration in the Z direction

[0251] Once both the rotational matrix R and the acceleration vector A are determined, the microprocessor 1312-1 calculates the angular acceleration Anof the hair styler 10 by calculating the dot product of the rotational matrix R and the acceleration vector A as follows:

[0252] An= R A

[0253] Eq. 4

[0254] Once the rotational matrix R and the angular acceleration Anis determined, the microprocessor 1312-1 may determine the (new) orientation of the hair styler 10 which is a function of Anas follows:

[0255] F(An) = An+ c = orientation

[0256] Eq. 5

[0257] Wherein: c = A - [0, 0, 1] For example, the microprocessor 1312-1 may compare Anwith an initial orientation matrix of the hair styler 10 stored in its memory to determine changes in its orientation. Beneficially, by determining the orientation of the hair styler 10 using An, only Anand an initial orientation matrix of the hair styler 10 has to be stored in the memory 1314 of the hair styler 10 thereby reducing the amount of memory storage needed, increasing memory usage efficiency. In addition, the manner in which the microprocessor 1312-1 determines the orientation of the hair styler 10 only requires the comparison of two matrices that are simple to calculate, thereby reducing the amount of time needed for the microprocessor 1312-1 to make the calculations.

[0258] Figure 15b depicts a graph showing a comparison of an actual orientation of the hair styler 10 with a predicted orientation made by the orientation module 1316. As shown in Figure 15b, the new, efficient proposed method of determining the orientation of the hair styler 10 produces accurate orientation determinations. Beneficially, by determining the orientation of the hair styler 10 in the above manner Gimbal-locking is prevented.

[0259] Having accurately determined the orientation of the hair styler 10, its position relative to a user’s head may then subsequently be determined and, where appropriate, feedback may be provided to a user during their use of the hair styler 10 based on its orientation and position relative to a user’s head.

[0260] Feedback

[0261] Figure 16a illustrates one example of the hair styler 10 in use.

[0262] During use the microprocessor 1312-1 performs the orientation determination calculations described above to determine an orientation of the hair styler 10 relative to magnetic north. At the same time (or shortly thereafter) the microprocessor 1312-1 may also determine whether the hair styler 10 is close to a user’s head, and more particularly which side of the hair styler 10 is close to the user’s head 1640.

[0263] For example, as shown in Figure 16a, the hair styler 10 may also be provided, by way of example only, with at least two proximity sensors 1620a, 1620b; one on either side of the hair styler 10. The two proximity sensors 1620a, 1620b may, for example, be Ultra- Wide Band (UWB) sensors, or any other appropriate type of sensor capable of determining a proximity of a user to the hair styler 10 e.g., optical sensors, radar sensors, magnetic sensors, and the like. For the purpose of illustration, all further discussion of the at least two proximity sensors 1620a, 1620b will relate to at least two UWB sensors. It will be appreciated that where the wo proximity sensors 1620a, 1620b are UWB sensors, those UWB sensors may be in accordance with the UWB sensors described above with reference to Figures 14a and 14b.

[0264] During use, the at least two UWB sensors 1620a, 1620b emit UWB pulses of electromagnetic radiation. For example, the UWB sensors 1620a, 1620b may emit pulses in the band range of 500 MHz or greater and may pulse every 10 - 100 ms. Those pulses in turn travel through air and space until they reach an object or surface from which they are reflected. Upon hitting an object or surface (e.g., the side of a user’s head, a wall, or some other object in the vicinity of the UWB sensors) the pulses are reflected off the object or surface in the form of a reflected UWB radio signal. Some or all of those reflected UWB signals (depending on the angle of reflection) will in turn be picked up by the Rx antenna 1318-8 of the UWB sensor, which is in turn processed by the Rx antenna circuitry of the UWB sensor as described above with reference to Figure 14b.

[0265] The time of arrival (ToA) of each of those reflected radio signals is dependent on how far away the object is off of which the radio pulse was reflected. Accordingly, the reflected radio pulse signals may be used to determine relative distances between the hair styler 10 and objects in the vicinity of the hair styler 10.

[0266] Furthermore, it will be appreciated that the power (e.g., amplitude) of such reflected radio signals will depend on various factors including the surface area of the object from which the radio pulses are reflected. Accordingly, the reflected radio signals may also be used to determine sizes of objects in the vicinity of the hair styler 10.

[0267] Each reflected UWB radio signal received at the receiver comprises a linear combination of reflected radio pulses from M different objects (paths or directions) and an additive noise term. Thus, the received UWB signal can be represented algebraically as:

[0268] Eq. 6 wherein: s(n,k) is the estimate of the transmitted pulse shape received at the receiver that is usually distorted due to several different factors, such as the reflection, refraction and scattering coefficients of the objects,

[0269] N is additive noise, a™ is a scaling factor of the signal reflected from the ithobject, and

[0270] Ti is the delay of the reflected pulse that depend on the distance between the ithobject and the USB sensor.

[0271] Once generated, each reflected UWB radio signal may also have corrections applied to it where appropriate to remove ‘clutter’ from the signals. Clutter is defined as aspects of the reflected pulse signals (also referred to simply as ‘reflected signals’) that are caused by background objects, which is to say objects that are far away from the UWB sensors 1620a, 1620b e.g., walls in the background behind the user. By applying such corrections, the remaining features of each reflected UWB radio signal is made clearer, enabling the processor to identify the presence of objects more clearly in the foreground of the hair styler 10. By way of example only, clutter in the signals may be removed by a loopback filter.

[0272] Once processed by the Rx antenna circuitry of the UWB sensor, the processed reflected UWB signal(s) (or information pertaining to such a processed reflected UWB signal) are passed to the processor 1312 of the computing device 1310 for further processing; for example, to determine a proximity of the hair styler 10 (or a side thereof) to the head of a user.

[0273] By way of example, as shown in Figure 16a, during use the at least two UWB sensors 1620a, 1620b of the hair styler 10 each emit UWB pulses which propagate through air and space. The pulses 1630a emitted from the UWB sensor 1620a propagate through air and empty space as shown in Figure 16a. During their propagation they may or may not interact with an object in the distance such as a wall. Those pulses 1630a in turn will be reflected off the wall and a reflected UWB signal will, at some future time xi, be received by the Rx antenna 1318-8 of the UWB sensor 1620a. On the other hand, during the propagation of the pulses 1630b emitted from the UWB sensor 1620b, the pulses 1630b interact with the head 1640 of the user that is in close proximity to the UWB sensor 1620b. Those pulses 1630b in turn will be reflected off the user’s head 1640 and a reflected UWB signal will, at some future time X2 be received by the Rx antenna 1318-8 of the UWB sensor 1620b.

[0274] Based on the power (amplitude) of the reflected UWB signal (which as indicated above may be dependent on the size of the surface area off of which the pulses 1630a, 1630b reflect), and the distance that the object is from the sensor, the processor 1314 of the computing device 1310 can determine that an object (such as a user’s head) is in close proximity to the side of the hair styler 10 that contains UWB sensor 1620b. Furthermore, depending on the amplitude of the reflected UWB, the processor 1314 of the computing device 1310 may assume that said object is the side of a user’s head.

[0275] Additionally, or alternatively, based on the power (amplitude) of the reflected UWB signal (which as indicated above may be dependent on the size of the surface area off of which the pulses 1630a, 1630b reflect), and the distance that the object is from the sensor the processor 1314 of the computing device 1310 may use the pulses 1630a, 1630b to generate amplitude-distance profiles that graphically depict the distance of objects and their relative size with respect to the UWB sensors 1620a, 1620b of the hair styler 10.

[0276] Figure 16b depicts signal amplitude-distance graphs of the reflected UWB signals received at the UWB sensors 1620a, 1620b in the scenario shown in Figure 16a. As shown in Figure 16b (top) the reflected signal 1650b received at the UWB sensor 1620b has a large amplitude at a small distance from the UWB sensor 1620b that tapers off over distance. Such a reflected signal 1650b received at the UWB sensor 1620b indicates that there is a large object (e.g., the user’s head 1640) in close proximity to the sensor 1620b. Conversely, the reflected signal 1650a (Figure 16b; bottom) received at the UWB sensor 1620a has a consistently small amplitude, with a small bump in amplitude at a mid-distance from the UWB sensor 1620a. Such a reflected signal 1650a received at the UWB sensor 1620a indicates that there are no objects (or at the most very small objects only) in proximity to the sensor 1620a.

[0277] Based on those signal amplitude-distance graphs (and / or their corresponding data), the processor 1312 of the computing device 1320 of the hair styler 10, can determine a side of the hair styler 10 that is in close proximity to the user’s head 1340. Furthermore, based on those signal amplitude-distance graphs (and / or their corresponding data) and the determined orientation of the hair styler 10, the processor 1312 can also determine movements of the hair styler 10 relative to the user’s head 1340. In one example, having determined that the right-hand side of the hair styler 10 is in close proximity to the user’s head 1340, the processor 1312 may continue to process incoming reflected UWB radio signals to determine movements of the hair styler 10 with respect to the user’s head 1340. For example, as the user rotates the hair styler 10 to curl their hair, the position of the UWB sensor 1620b relative to the user’s head 1640 will change, altering the reflected radio UWB signals detected by that sensor. The processor 1312 can process the signals from the UWB sensors 1620 to determine if the user is rotating the hair styler 10 clockwise or anticlockwise. This information can also be determined from the signals obtained from the accelerometer and / or the gyroscope.

[0278] Beneficially, by determining the orientation of the hair styler 10, as well as which side of the hair styler 10 is close to a user’s head 1640, the processor 1312 of the hair styler 10 can determine whether a user is correctly using the hair styler 10 to achieve a desired style. For example, where a user has input, via a user interface 1324 of the hair styler 10, a desired style to be achieved, the processor 1312 may compare expected movements for achieving the selected style stored in the memory 1314 of the computing device 1310, with determined movements of the hair styler 10. Based on that comparison, the processor 1312 may trigger the feedback module 1322 of the hair styler 10 to provide appropriate feedback to a user.

[0279] Additionally, pressure sensors may be located in the hair styler 10 to sense when pressure is applied to the hair styler i.e., when the hair styler 10 is being held. For example, one or more pressure sensors may be provided in the hair styler 10 in proximity to the location of the UWB sensors 1620a, 1620b. Beneficially, by using such one or more pressure sensors, the processor 1312 is able to take account of reflected UWB signals that arise due to the presence of the user’s hand to ensure that user hand placement on the hair styler 10 is not falsely attributed to head position.

[0280] For example, where it is determined that a user is holding the hair styler 10 in a region proximal to the UWB sensors 1620a, 1620b, the processor 1312, when processing the reflected UWB signal(s) may apply corrections to account for features in the signals that arise from hand positioning. By way of example only, where the processor uses the reflected UWB signals to generate amplitude-distance profiles, the processor may discount, attenuate, dampen, or filter out one or more features of the amplitude-distance profile that occur at a very short distance from the UWB sensors 1620a, 1620b e.g., a few mm. Figures 16c & 16d illustrate an example movement of the hair styler 10 and the feedback that can be provided. In Figure 16c, having determined the orientation of the hair styler 10, as well as which side of the hair styler 10 is close to the user’s head 1640, the processor 1312 continues to process the incoming reflected UWB signals and / or the signals from the accelerometer or the gyroscope to determine if the hair styler 10 is being rotated by the user in a clockwise rotation with respect to the user’s head 1640, as described above. In the example of Figure 16c, the user is rotating the hair styler 10 in the clockwise direction and the processor 1312 compares that motion / movement with sets of movements that are expected or that should be performed by the user to achieve the desired style selected by the user. For example, the sets of movements that should be performed may be stored in the memory 1314 of the computing device 1310 of the hair styler 10 (or alternatively they may be downloaded from the Internet in response to a user selecting a desired style via a user interface of the hair styler 10 to determine whether the movement is a correct movement for the style desired.

[0281] Having determined that the movement is correct, the processor 1312 may trigger (e.g., via a feedback command, or other appropriate message) the feedback module 1322 to provide appropriate feedback to the user (e.g., vibrations, sounds, a visual indication, or the like), or alternatively, as the movement is correct, the processor 1312 may not trigger any type of feedback (as shown in Figure 16c)

[0282] If, however, the processor 1312 determines that the hair styler 10 is being rotated by the user in an anti-clockwise direction with respect to the user’s head 1640, when it should be rotated in a clockwise direction, then the processor 1312 may trigger the feedback module 1322 (e.g., via a feedback command, or other appropriate message) to provide appropriate feedback to the user (e.g., vibrations, sounds, a visual indication, or the like) so that they know that they are rotating the device in the wrong direction and can change the direction of rotation accordingly.

[0283] In yet another example (as shown in Figure 16d) having determined that the hair styler 10 is being rotated by the user in the correct clockwise direction with respect to the user’s head 1640, the processor 1312 continues to monitor the rotation and outputs feedback to the user when the user has rotated the hair styler 10 through an optimum angle of rotation with respect to the user’s head. For example, as shown in Figure 16d, the hair styler 10 vibrates (“buzzes”) when the hair styler 10 has been rotated to the optimal angle with respect to the user’s head to achieve the desired level or amount of curl for the tress of hair in the hair styler 10.

[0284] It will be appreciated that the movement / motion detections and corresponding feedback described above are given by way of example only and that other motions and feedback combinations are possible.

[0285] The processes of determining movements of the hair styler 10 and providing appropriate feedback as outlined above will now be described further with respect to the flow chart of Figure 17.

[0286] As shown, at step S1702, a user of the hair styler 10 inputs, into a user interface of the hair styler 10, a desired hair style that they wish to achieve. For example, the user may select a particular type of hair style that they wish to achieve from a list of preprogrammed styles stored in a memory of the hair styler 10. In such a scenario, the memory of the hair styler 10 (or alternatively a computing device in communication with the hair styler 10) may store sets of movements / motions that must be performed with the hair styler 10 to achieve a specific type of hair style e.g., the hair styler 10 may need to be rotated in a clockwise manner with respect to a user’s head to achieve curls that curl in a particular direction with respect to the user’s head.

[0287] Alternatively, or additionally, the processor 1312 of the hair styler 10 may be configured to download sets of movements / motions that must be performed with the hair styler 10 to achieve a specific type of hair style from the Internet in response to a user selecting a particular type of hair style that they wish to achieve via the user interface of the hair styler 10.

[0288] At step S1704, the processor 1312 determines the orientation of the hair styler 10. As previously described, the microprocessor 1312-1 in communication with the orientation module 1316 of the hair styler 10 may request and collect data from at least one of a magnetometer 1316-2, or a gyrometer 1316-3, or an accelerometer 1316-4 to determine an orientation of the hair styler 10 with respect to a predefined frame of reference.

[0289] At step S1706, the UWB sensors 1620a, 1620b emit UWB pulses 1630a, 1630b. Those pulses may be pulses with a bandwidth of at least 500 MHz or greater. The pulses may be emitted repeatedly over a time period AT. At step S1708, the UWB sensors 1620a, 1620b detect reflected UWB radio signals that arise through reflection of the emitted UWB pulses 1630a, 1630b. The reflected UWB radio signals comprise a linear combination of reflected radio pulses that are reflected off different objects in the vicinity of the UWB sensor.

[0290] At step S1710, the processor 1312 processes those detected reflected UWB radio signals to determine amplitude distance information for the reflected signals corresponding to the above-described amplitude-distance signal graphs. The processor may also track distance information for selected objects found in the reflected USB signals and monitor how the distance changes with time.

[0291] For example, the processor 1312 (at step S1711 ) may generate a signal graph (such as an amplitude-distance graph using the ToA information (7), also referred to as Time of Flight (ToF) information and using the amplitude information (a™)) for each of the detected reflected UWB radio signals detected by the UWB sensors 1620a, 1620b respectively over a pre-determined period of time to map out changes in the detected reflected UWB radio signals over time. It will be appreciated that the processor does not actually need to draw out the signal graphs visually and instead will store the data in 2D data structures within the memory of the processor 1312.

[0292] At step S1712, the processor 312 analyses the UWB data in the memory (i.e. the signal graph data such as amplitude-distance graphs, distance-time graphs, and the like), to determine whether a side of the hair styler 10 is proximal to the user’s head. Based on determining that the user’s head is in the vicinity of the UWB sensor 1630b, in combination with the determined orientation of the hair styler 10 made at step S1704, the processor 1312 can determine which side of the user’s head the hair styler 10 is likely to be on. Based on determining that the user’s head is in the vicinity of the UWB sensor 1630b, in combination with the determined orientation of the hair styler 10, the processor 1314 can determine that the hair styler 10 is most likely to be on the left-hand side of the user’s head. If the styler 1 had been upside down in comparison to the orientation shown in Figure 16a, then the styler 1 would most likely be on the right-hand side of the user’s head. It is most likely to be on this side because it is most likely that the user will always hold the styler with the handle portion pointing out in front of themself. In particular, it is most likely that the user in Figure 16a is looking into the page and the handle of the hair styler is pointing into the page. It would be very difficult for the user to hold the styler 1 with the handle pointing in the opposite direction out of the page whilst styling their hair. So, it is reasonable to assume that holding the styler in such an orientation would not be done in practice. Hence, based on the orientation of the styler 1 and which one of the UWB sensors 1620 detects the user’s head, the processor 1312 can determine whether the styler 1 is on the left or the right-hand side of the user’s head.

[0293] At step S1714, the processor 1312 of the hair styler 10 re-determines the orientation of the hair styler to detect changes in its orientation e.g., to determine whether the hair styler 10 is being moved / used by a user. For example, as previously described, the microprocessor 1312-1 in communication with the orientation module 1316 of the hair styler 10 may request and collect data from at least one of a magnetometer 1316-2, or a gyrometer 1316-3, or an accelerometer 1316-4 to determine the orientation of the hair styler 10 with respect to a reference frame.

[0294] At step S1716, the processor 1312, based on the determined changes in orientation of the hair styler 10, determines whether the change in orientation ( / .e., a movement of the hair styler 10 by the user) is a correct movement necessary to achieve the desired hair style input by the user at step S1702. For example, the processor 1312 may compare the movement with sets of movements stored in the memory 1312, or downloaded from the Internet, that are necessary to achieve a desired hair styler input by the user e.g., the hair styler 10 may need to be rotated in a clockwise manner with respect to a user’s head to achieve curls that curl in a particular direction with respect to the user’s head.

[0295] At step S1718, the processor 1312, based on determining whether the change in orientation ( / .e., a movement of the hair styler 10 by the user) is a correct movement to achieve the desired hair style input by the user at step S1702, triggers appropriate feedback. For example, the processor 1312 may be configured to send a feedback command to the feedback module 1322 to provide audio, visual, and / or haptic feedback as appropriate. By way of example only, having determined that the user is rotating the hair styler 10 in the wrong direction, the processor 1312 may be configured to send a feedback command to the feedback module 1322 to provide feedback to the user to indicate they are making a mistake.

[0296] Having provided feedback, the process 1700 may end, or alternatively it may operate on a loop such that after having provided the feedback the processor 1312 returns step S1714 to re-determine the orientation of the hair styler 10 again. Figure 18a illustrates another example of the hair styler 10 in use. In this example, the user places a tress of hair in the styler 1 and then moves the styler in the direction illustrated away from the user’s head along the tress of hair.

[0297] Figures 18b and 18c depict signal amplitude-distance graphs obtained from the UWB sensor 1620b as the hair styler 10 is moved along the tress of hair. Specifically, the upper plots of Figures 18c and 18d show the UWB signals received by the sensors 1620a and 1620b respectively at time T1 when the styler is close to the user’s head at the start of the hair tress being styled; and the lower plots of Figures 18c and 18d show the UWB signals received by the sensors 1620a and 1620b respectively at time T2 when the styler 1 is further away from the user’s head towards the end of the hair tress being styled.

[0298] As shown in Figure 18b (top) the reflected signal 1630b received at the UWB sensor 1620b at time T1 has a large amplitude at a small distance from the UWB sensor 1620b that tappers off over distance. Such a reflected signal 1630b received at the UWB sensor 1620b indicates that there is a large object (e.g., the user’s head 1640) in close proximity to the sensor 1620b. Conversely, the reflected signal 350a (Figure 18c; top) received at the UWB sensor 1620a has a consistently small amplitude, with a small bump in amplitude at a mid-distance from the UWB sensor 1620a. Such a reflected signal 1650a received at the UWB sensor 1620a indicates that there are no objects (or at the most very small objects) in proximity to the sensor 1620a.

[0299] Based on these amplitude-distance graphs (and / or their corresponding data) and the determined orientation of the hair styler 10, the processor 1312 of the computing device 1320 of the hair styler 10, can determine that the right-hand side of the hair styler 10 is in close proximity to the left-hand side of user’s head 1640.

[0300] As shown in Figure 18b (bottom) the reflected signal 1650b received at the UWB sensor 1620b at time T2 has a somewhat large amplitude (smaller than that in Figure 18a (top)) at a mid-distance from the UWB sensor 1620b that tapers off over distance. Such a reflected signal 1650b received at the UWB sensor 1620b indicates that there is a large object (e.g., the user’s head 1640) in at a mid-distance from the sensor 1620b. Conversely, the reflected signal 320a (Figure 18c; bottom) received at the UWB sensor 1620a has a consistently small amplitude, with a small bump in amplitude at a middistance from the UWB sensor 1620a. Such a reflected signal 1650a received at the UWB sensor 1620a indicates that there are no objects (or at the most very small objects only) in proximity to the sensor 1620a.

[0301] Based on these amplitude-distance graphs (and / or their corresponding data) and the determined orientation of the hair styler 10, the processor 1312 of the computing device 1320 of the hair styler 10, can determine that the right-hand side of the hair styler 10 is facing towards the left-hand side of user’s head 1640 but is slightly further away than it was at time T 1 .

[0302] By comparing the amplitude-distance graphs (or the data / information associated with them) shown in both Figure 18b and 18c, the processor 1312 of the hair styler 10 can determine that the hair styler 10 is in use and that it is being moved in a direction away from the user’s head. Furthermore, by measuring how far the peak in the amplitudedistance graphs of Figure 18b has moved over time, the processor 1312 can also determine the speed at which the user is moving the hair styler 10 away from their head. For example, the speed at which the user is moving the hair styler 10 away from their head may be calculated by:

[0303] Eq. 7 wherein

[0304] ARangepeak is the change in position of the peak in the amplitude-distance graphs,

[0305] AT is the time period over which the reflected UWB signals where received ( / .e., T2 - T1 in the example given in Figures 18b & 18c).

[0306] Beneficially, by determining the speed at which the hair styler 10 is being moved away (or toward) a user’s head i.e., how quickly tresses of hair are being passed through the hair styler 10, the processor 1312 may trigger the feedback module 1322 of the hair styler 10 to provide appropriate feedback to a user if the speed is too excessive or not sufficient enough to achieve a desired style.

[0307] The value of ARangepeak may also give a crude indication of the length of the user’s hair. Specifically, during use the user will repeatedly move the styler along tresses of hair and once the tress of hair has passed through the styler 1 , the user will move the styler 1 closer to the user’s head again to style the next tress of hair. Therefore, by monitoring the average value of ARangepeak, the processor 1312 can determine an approximate length of the user’s hair. This information may be used, for example to control the application of heat by the heaters to the hair. For example, less heat may be applied to the hair near the roots and more heat may be applied towards the end of the tress. The length of the tress may be used to define how the power will be varied along the tress.

[0308] The processes of determining the speed of movement of the hair styler 10 and providing appropriate feedback as outlined above will now be described further with respect to the flow chart of Figure 19.

[0309] Figure 19 illustrates another process flow chart of the steps involved in providing feedback to a user.

[0310] At step S1902, a user of the hair styler 10 inputs, into a user interface of the hair styler 10, a desired hair style that they wish to achieve. For example, the user may select a particular type of hair style that they wish to achieve from a list of pre-programmed styles stored in a memory of the hair styler 10. In such a scenario, the memory of the hair styler 10 (or alternatively a computing device in communication with the hair styler 10) may store sets of movements / motions that must be performed with the hair styler 10 to achieve a specific type of hair styler e.g., the hair styler 10 may need to be rotated in a clockwise manner with respect to a user’s head to achieve curls that curl in a particular direction with respect to the user’s head. The sets of movements / motions that must be performed with the hair styler 10 to achieve a specific type of hair style may also include durations such as the duration needed for a tress of hair to be in the hair styler 10 to achieve the desired hair style, and / or the speed at which the tress of hair should be run through the hair styler 10.

[0311] Alternatively, or additionally, as already described above, the processor 1312 of the hair styler 10 may be configured to download sets of movements / motions and / or durations such as the duration needed for a tress of hair to be in the hair styler 10 to achieve the desired hair style, and / or the speed at which the tress of hair should be run through the hair styler 10 from the Internet in response to a user selecting a particular type of hair style that they wish to achieve via the user interface of the hair styler 10. At step S1904, the processor 1312 determines the orientation of the hair styler 10 in the manner described above. At step S1906, the UWB sensors 1620a, 1620b emit UWB pulses 1630a, 1630b.

[0312] At step S1908, the UWB sensors 1620a, 1620b detect, at time T 1 , a first set of reflected UWB radio signals that arise through reflection of the emitted UWB pulses 1630a, 1630b. At step S1910, the UWB sensors 1620a, 1620b detect, at time T2, a second set of reflected UWB radio signals that arise through reflection of the emitted UWB pulses 1630a, 1630b. It will be appreciated that the UWB sensors 1620a, 1620b may also detect a third, fourth etc., set of reflected UWB radio signals at times T3, T4, etc.

[0313] At step S1912, the processor 1312 processes the detected reflected UWB radio signals detected at T1 , T2, (and T3, T4, etc., where appropriate). The processor 1314 may be configured to use those detected reflected UWB radio signals (and / or information pertaining to those detected reflected UWB radio signals) to generate (step S1913) signal graphs such as amplitude-distance graphs, distance-time graphs, and the like, for each of the detected reflected UWB radio signals detected by the UWB sensors 1620a, 1620b detected at T1 , T2, (and T3, T4, etc., where appropriate).

[0314] For example, the processor 1312 may generate a signal graph (such as an amplitudedistance graph using ToA information, also referred to as Time of Flight (ToF) information) for each of the detected reflected UWB radio signals detected by the UWB sensors 1620a, 1620b respectively at T1 , T2, (and T3, T4, etc., where appropriate) to map out changes in detected reflected UWB radio signals over time.

[0315] At step S1914, the processor 1312 analyses the signal graphs (such as amplitudedistance graphs, distance-time graphs, and the like) for the detected reflected UWB radio signals detected by the UWB sensors 1620a, 1620b at T1 , to determine whether a user’s head is on the right- or left-hand side of the hair styler 10. For example, as previously described with reference to Figures 16a and 16b, analysis of the signal graphs associated with the detected reflected UWB radio signals detected by the UWB sensors 1620a, 1620b respectively may result in the processor 1314 determining that an object (e.g., the user’s head) is in the vicinity of the UWB sensor 1630b, but not in the vicinity of UWB sensor 1630a.

[0316] Based on determining that the user’s head is in the vicinity of the UWB sensor 1630b, in combination with the determined orientation of the hair styler 10 made at step S1904, the processor 1312 determines what side of the user’s head the hair styler 10 is on. For example, as shown previously with reference to Figure 16a, based on determining that an object (e.g., the user’s head) is in the vicinity of the UWB sensor 1630b, in combination with the determined orientation of the hair styler 10, the processor 1314 can determine that the right-hand side of the hair styler 10 is most likely on the left-hand side of the user’s head.

[0317] Additionally, based on the analysis of the signal graphs (such as amplitude-distance graphs, distance-time graphs, and the like) for the detected reflected UWB radio signals detected by the UWB sensor 1620b at T1 , the processor 1312 also determines a distance of the user’s head from the UWB sensor 1620b.

[0318] At step S1916, the processor 1312 analyses the signal graphs (such as amplitudedistance graphs, distance-time graphs, and the like) for the detected reflected UWB radio signals detected by the UWB sensors 1620a, 1620b at T2, to determine whether the right-hand side of the hair styler 10 is still on the left hand side of the user’s head in the same manner as described above. Additionally, based on the analysis of the signal graphs (such as amplitude-distance graphs, distance-time graphs, and the like) for the detected reflected UWB radio signals detected by the UWB sensor 1620b at T2, the processor 1612 also determines a distance of the user’s head from the UWB sensor 1620b.

[0319] At step S1918, the processor 1312 compares the determined distance of the user’s head from the UWB sensor 1620b at T1 and the determined distance of the user’s head from the UWB sensor 1620b at T2. For example, the processor 1312 may determine the difference in the distance of the user’s head the UWB sensor 1620b between times T1 and T2 and divides the distance by the time difference T2-T 1 , to determine a measure of the speed of movement of the hair styler 10 along the tress, as described above.

[0320] At step S1920, the processor 1312, based on the determined speed of movement of the hair styler 10, determines whether the speed is appropriate / correct to achieve the desired hair style input by the user at step S1902. For example, the processor 1312 may compare the determined speed of the movement with speeds of movements stored in the memory 1312, or downloaded from the Internet, which are desirable to achieve the desired hair style input by the user. At step S1922, the processor 1312, based on determining whether the speed of the movement is appropriate / correct to achieve the desired hair style, triggers appropriate feedback. For example, the processor 1312 may be configured to send a feedback command to the feedback module 1322 to provide audio, visual, and / or haptic feedback as appropriate. By way of example only, having determined that speed of movement of the hair styler 10 is inappropriate to achieve the desired style, the processor 1312 may be configured to send a feedback command to the feedback module 1322 to provide feedback to the user to indicate they are making a mistake - such as moving the styler 1 too slowly or too quickly the tress of hair.

[0321] Alternatively, the speed information may be used to control the heating of the heaters. For example, if the speed is higher than required, then the power supplied to the heaters may be increased so that the required heat energy can be applied to the tress of hair to allow the tress to be styled. Alternatively, if the speed is lower than required, then the power delivered to the heaters may be reduced so that the user does not overheat or damage their hair.

[0322] Having provided feedback or varied the power delivered to the heaters, the process 1900 may end, or alternatively it may operate on a loop such that after having provided the feedback the processor 1312 returns step S1906 to transmit another set of UWB pulses from the UWB sensors.

[0323] Modifications and Alternatives

[0324] Detailed embodiments have been described above. As those skilled in the art will appreciate, a number of modifications and alternatives can be made to the above embodiments whilst still benefiting from the inventions embodied therein. By way of illustration only a number of these alternatives and modifications will now be described.

[0325] Deep-Learning & Neural Networks

[0326] In some of the embodiments described above, the processing of the signal graphs to determine gestures included comparing signal graphs with one or more gesture recognition models stored within a memory 212 of the computing device 210. For example, each gesture recognition model may comprise a signal graph of an expected reflected UWB pulse signal for a specific gesture, and the computing device may compare the generated signal graph with each of the signal graphs of the gesture recognition models to determine a gesture being performed by a user.

[0327] It will nevertheless be appreciated that the gesture recognition models may take any other appropriate form that allows a gesture to be recognised using the reflected signals detected by the UWB sensors. For example, each gesture recognition model may comprise a pre-trained convolutional neural network (CNN) or some other form of deeplearning neural network.

[0328] By way of example only, each gesture recognition model may comprise a CNN comprising at least one convolutional layer, at least one pooling layer, and at least one fully connected layer. Additionally, the CNN may have flattening layers, MaxPooling layers, SoftMax, layers, and other non-linearity layers where appropriate such as Sigmoid layers, Tanh layers, and / or ReLU layers.

[0329] Each CNN, once trained using training datasets, may be used to classify reflected signals detected by the UWB sensors into specific gestures. Additionally, the CNN may be further trained and refined during use of the CNN using ‘live’ reflected signals detected by the UWB sensors to further refine its classification capabilities. Training of such a CNN would be relatively straight forward - involving supplying many different signals graphs obtained when the known and different gestures are performed. Alternatively, a CNN may be generated specific to each gesture. In this case the signal graph generated would be applied to each CNN and each CNN would output a value indicating how close the signal graph is to the signal graphs that were used to train the CNN. The gesture associated with the CNN giving the highest value would then be determined to be the gesture performed by the user and the appropriate control action taken.

[0330] For the purposes of simplicity, the above description focuses on hair care products and particularly a hair styling device. However, it will be appreciated that the abovedescribed concepts may be applied widely to any hair styling product and / or other beauty product I devices in the beauty industry, including, for example: hair dryers, curling tongs / wands, hair straighteners, nail gel / varnish curers (such as UV lamp systems for the curing of nail varnish), skin epilators, hair colouring devices, crimpers, etc. In the above embodiments, the beauty product device communicated with a smart processing device. This is not essential - the beauty product device may be provided with all the processing functionality of the processing device.

[0331] In the above examples, the feedback messages were provided to the user by way of the user interface on the beauty product device or on the processing device. This is not essential. The feedback messages may be provided by any suitable user interface of any nearby device. For example, they may be sent to an Amazon Echo speaker device for playout to the user as voice messages or displayed to the user on a television screen, a mirror, or the like.

[0332] The method of communication between the hair styler and the computing device could be via a cable or wireless means. Examples of applicable wireless communications include Bluetooth, Wi-Fi, LoRa, ZigBee, 802.15 standard, NFC, or optical means - both visible and IR.

[0333] In the examples given above, various specific temperatures and power levels were discussed. As those skilled in the art will appreciate, all these specific values are clearly not essential to the invention and the particular values used in a given product will depend on the treatment to be given, the voltage sources used etc.

[0334] In the above embodiments, a number of software modules were described. As those skilled in the art will appreciate, the software modules may be provided in compiled or un-compiled form and may be supplied to the hair styler or the corresponding processing device (mobile telephone and / or the like) as a signal over a computer network, or on a recording medium. Further, the functionality performed by part or all of this software may be performed using one or more dedicated hardware circuits. However, the use of software is preferred as it facilitates the updating of the beauty product device (and the processing device).

[0335] The above embodiments used various processors located in the UWB sensors or in the computing device or the hair styler. These processors may be programmable processors such as microprocessors or CPUs or they may be formed from dedicated hardware circuits such as ASIC devices and the like.

[0336] Various other modifications will be apparent to those skilled in the art and will not be described in further detail here.

Claims

Claims1 . A hair styling system comprising: a hair styling device; at least one ultra-wide band, UWB, sensor configured to transmit UWB radio pulses and to receive UWB radio signals reflected by objects adjacent the at least one UWB sensor; and a processor configured to: i) process signals obtained from the at least one UWB sensor to identify a gesture made by a user adjacent to the at least one UWB sensor; and ii) control, in response to the identified gesture, at least one setting of the hair styling device or the computing device.

2. The hair styling system of claim 1 , wherein to process signals obtained from the at least one UWB sensor to identify a gesture made by a user adjacent to the at least one UWB sensor comprises: comparing the signals obtained from the at least one UWB sensor with a plurality of gesture recognition models.

3. The hair styling system of claim 2, wherein comparing the signals obtained from the UWB sensor with a plurality of gesture recognition models comprises: comparing a pattern of the signals obtained from the at least one UWB sensor with each one of the gesture recognition models of the plurality of gesture recognition models, wherein each gesture recognition models comprises one or more pre-stored UWB radio signal patterns corresponding to a gesture.

4. The hair styling system of claim 3, wherein the one or more pre-stored UWB radio signal patterns corresponding to a gesture comprise at least one of: a distanceamplitude signal graph, and / or a distance-time signal graph.

5. The hair styling system of claim 1 , wherein to process signals obtained from the at least one UWB sensor to identify a gesture made by a user adjacent the at least one UWB sensor comprises:comparing the signals obtained from the at least one UWB sensor with a plurality of gesture recognition models, wherein each one of the gesture recognition models is a convolutional neural network, CNN.

6. The hair styling system of any preceding claim, wherein each identified gesture is associated with one of a plurality of control commands; and in response to identifying the gesture made by a user adjacent to the at least one UWB sensor the processor is configured to transmit a corresponding control command to the hair styler to control the at least one setting of the hair styling device.

7. The hair styling system of claim 6, wherein to control, in response to the identified gesture, the at least one setting of the hair styling device comprises: increasing a temperature of the hair styler; or increasing a temperature of the hair styler by a pre-configured step size; or initiating a heat-shot function of the hair styler; or initiating a cold-shot function of the hair styler.

8. The hair styling system of any preceding claim, wherein in response to identifying the gesture made by a user adjacent to the at least one UWB sensor the processor is configured to control the at least one setting of the computing device in communication with the at least one UWB sensor.

9. The hair styling system of claim 8, wherein to control, in response to the identified gesture, the at least one setting of the computing device in communication with the at least one UWB sensor comprises: restarting a music track being played by the computing device; or skipping a music track being played by the computing device.

10. A hair styling system comprising: a hair styling device; a plurality of one ultra-wide band, UWB, sensor, each UWB sensor configured to transmit UWB radio pulses and to receive UWB radio signals reflected by objects adjacent the at least one UWB sensor; and a computing device in communication with the plurality of UWB sensors, the computing device comprising a processor configured to:i) process signals obtained from each UWB sensor of the plurality of UWB sensors to identify a dynamic gesture made by a user, wherein the dynamic gesture is a moving gesture; ii) process the signals obtained from each UWB sensor of the plurality of UWB sensors to determine a position of a user’s head; and iii) control, in response to the identified dynamic gesture and the determined position of the user’s head, at least one setting of the hair styling device or the computing device.

11. The hair styling system of claim 10, wherein to process signals obtained from the plurality of UWB sensors to identify the dynamic gesture made by the user comprises: comparing the signals obtained from the plurality of UWB sensors with a plurality gesture recognition models.

12. The hair styling system of claim 10 or claim 11 , wherein comparing the signals obtained from the plurality of UWB sensors with a plurality of gesture recognition models comprises: comparing a pattern of the signals obtained from the plurality of UWB sensors with each one of the gesture recognition models of the plurality of gesture recognition models, wherein each gesture recognition models comprises one or more pre-stored UWB radio signal patterns corresponding to a dynamic gesture.

13. The hair styling system of claim 12, wherein the one or more pre-stored UWB radio signal patterns corresponding to a dynamic gesture comprises a distance-time signal graph.

14. The hair styling system of claim 10, wherein to process signals obtained from the plurality of UWB sensors to identify a gesture made by a user comprises: comparing the signals obtained from the plurality of UWB sensors with a plurality of gesture recognition models, wherein each one of the gesture recognition models is a convolutional neural network, CNN.

15. The hair styling system of any preceding claim, wherein to process the signals obtained from each UWB sensor of the plurality of UWB sensors to determine a position of a user’s head comprises: identifying, in the signals obtained from each UWB sensor a static portion of the signals, wherein the static portion of the signals is a portion of the signals that remains unchanged over time.

16. The hair styling system of claim 15, wherein to control, in response to the identified dynamic gesture and the determined position of the user’s head, at least one setting of the hair styling device comprises: determining, whether the dynamic gesture began on the left- or right-hand side of the user’s head; and wherein each identified dynamic gesture and its starting position relative to the left- or right-hand side of the user’s head is associated with one of a plurality of control commands; and in response to identifying the gesture made by a user and its starting position relative to the left- or right-hand side of the user’s head, the processor is configured to transmit a corresponding control command to the hair styler to control the at least one setting of the hair styling device.

17. The hair styling system of claim 15, wherein to control, in response to the identified dynamic gesture and the determined position of the user’s head, at least one setting of the computing device comprises: determining, whether the dynamic gesture began on the left- or right-hand side of the user’s head; and in response to identifying the gesture made by a user and its starting position relative to the left- or right-hand side of the user’s head, the processor is configured to control the at least one setting of the computing device.

18. A hair styling system comprising: a hair styling device; at least one ultra-wide band, UWB, sensor configured to transmit UWB radio pulses and to receive UWB radio signals from at least one radio frequency identification, RFID, tag on the hair styling device; at least one user interface for input of a desired hair style; anda computing device in communication with the at least one UWB sensor, the computing device comprising a processor configured to: i) process signals obtained from the at least one UWB sensor to identify a movement of the hair styling device adjacent to at least one UWB sensor; and ii) provide feedback to a user in response to the identified movement.

19. The hair styling system of claim 18, wherein to process signals obtained from the at least one UWB sensor to identify a movement of the hair styling device adjacent to the at least one UWB sensor comprises: comparing the signals obtained from the at least one UWB sensor with a plurality gesture recognition models.

20. The hair styling system of claim 19, wherein comparing the signals obtained from the UWB sensor with a plurality of gesture recognition models comprises: comparing a pattern of the signals obtained from the at least one UWB sensor with each one of the gesture recognition models of the plurality of gesture recognition models, wherein each gesture recognition models comprises one or more pre-stored UWB radio signal patterns corresponding to a movement of the hair styling device.

21. The hair styling system of claim 20, wherein the one or more pre-stored UWB radio signal patterns corresponding to a movement of the hair styling device comprises a distance-time signal graph.

22. The hair styling system of claim 18, wherein to process signals obtained from the at least one UWB sensor to identify a movement of the hair styler device adjacent to the at least one UWB sensor comprises: comparing the signals obtained from the at least one UWB sensor with a plurality of gesture recognition models, wherein each one of the gesture recognition models is a convolutional neural network, CNN.

23. The hair styling system of any preceding claim, wherein to provide feedback to a user in response to the identified movement comprises:comparing the identified movement of the hair styler device with a set of movements of the hair styler device required to achieve the desired hair style input at the at least one user interface; determining, based on the comparing, whether the identified movement of the hair styler device corresponds to at least one movement of the hair styler device required to achieve the desired hair style; and in response to the determining, the processor is configured to transmit a feedback command to the hair styler to provide feedback to a user in response to the identified movement.

24. The hair styling system of any one of claims 18 to 23, wherein the identified movement of the hair styler device comprises at least one of: a rotating movement of the hair styler device; a unidirectional straight movement of the hair styler device; an up-down movement of the hair styler device while arms of the hair styler device are open.

25. The hair styling system of any preceding claim, wherein the feedback comprises at least one of: visual feedback provided via a display of the computing device; visual feedback provided via a display of the hair styler device; audio feedback provided via the computing device; audio feedback provided by the hair styler device; or haptic feedback provided via the hair styler.26 . A hair drying and / or styling device comprising: a first ultra-wide band, UWB, sensor located on the hair drying and / or styling device for transmitting UWB radio pulses and for receiving UWB radio signals reflected by objects in the vicinity of the first UWB sensor; and a processor in communication with the first UWB sensor and configured to: i) process signals obtained from the first UWB sensor to detect when the hair drying and / or styling device is in proximity to a user’s head; andii) perform a control action in response to detecting that the hair drying and / or styling device is in proximity to a user’s head.

27. The hair drying and / or styling device of claim 26, wherein the control action comprises providing feedback to the user.

28. The hair drying and / or styling device of claim 27, wherein the feedback provided to the user comprises at least one of: audio feedback, visual feedback, and / or haptic feedback.

29. The hair drying and / or styling device of any one of claims 26 to 28, wherein the control action comprises controlling a power delivered to at least one heater of the hair drying and / or styling device.

30. The hair drying and / or styling device of any one of claims 26 to 29, wherein the hair drying and / or styling device further comprises: a second UWB sensor, the first and the second UWB sensors being located on either side of the hair drying and / or styling device; and the processor is in communication with the first and second UWB sensors and configured to: process signals obtained from the first and second UWB sensors to detect a side of the hair drying and / or styling device on which a user’s head is located.

31. The hair styling device of claim 30, wherein the processor is configured to: compare the signals obtained by the first and the second UWB sensors to determine which of the signals has the largest amplitude peak; and determine, based on which of the signals has largest amplitude peak, which side of the hair drying and / or styling device on which a user’s head is located.

32. The hair styling device of claim 31 , wherein the user’s head is determined to be on the side of the hair styler device corresponding to the side on which the UWB sensor that received the signal with the largest amplitude peak is located.

33. The hair styling device of claim 31 or claim 32, wherein to compare the signals obtained by the first and the second UWB sensors comprises: generating, for each of the signals obtained by the first and the second UWB sensors, a distance-amplitude graph; and analysing each distance-amplitude graph to identify which of the distanceamplitude graph contains the largest amplitude peak.

34. The hair styling device of any one of claims 26 to 33, wherein the hair styling device further comprises: a pressure sensor located proximal to the first and / or the second UWB sensor; and wherein, the processor is further configured to: determine, based on data obtained from the pressure sensor, whether a user’s hand is positioned proximal to the first and / or second UWB sensor; and in response to determining that the user’s hand is proximal to the first and / or second UWB sensor, applying a correction to the signals obtained from the first and / or UWB sensor to account for UWB radio signals reflected off the user’s hand.

35. The hair drying and / or styling device of any one of claims 26 to 34, wherein the processor is further configured to: determine an orientation of the hair drying and / or styling device with respect to magnetic north.

36. The hair drying and / or styling device of claim 35, wherein the processor is in communication with orientation sensing circuitry configured to sense an orientation of hair drying and / or styling device, and wherein the processor is configured to: process data received from the orientation sensing circuitry to determine an orientation of the hair drying and / or styling device with respect to magnetic north.

37. The hair drying and / or styling device of claim 36, wherein the orientation sensing circuitry comprises at least one of: an accelerometer, a gyrometer, and / or a magnetometer.

38. The hair drying and / or styling device of any one of claims 35 to 37, wherein the processor is configured to: perform a control action in response to determining the orientation of the hair drying and / or styling device and detecting that the hair drying and / or styling device is in proximity to a user’s head.

39. The hair styling device of any one of claims 35 to 38, wherein the computing device further comprises: a user interface for selection of a desired hair style by a user, and wherein the processor is further configured to: determine movement of the hair styling device; compare the determined movement with a set of movements necessary to achieve the desired hair style to determine whether the movement is correct to achieve the desired hair style; and perform a control action based on the determination of whether the movement is correct to achieve the desired hair style.

40. The hair styling device of claim 39, wherein to determine movement of the hair styling device, the processor is configured to: re-determine the orientation of the hair styling device; compare the orientation and the re-determined orientation of the hair styling device; and determine, based on the comparison, a movement of the hair styler device.

41. The hair drying and / or styling device of one of claims 38 to 40, wherein the control action comprises providing feedback to the user.

42. The hair drying and / or styling device of claim 41 , wherein the feedback provided to the user comprises at least one of: audio feedback, visual feedback, and / or haptic feedback.

43. The hair drying and / or styling device of one of claims 38 to 40, wherein the control action comprises controlling a power delivered to at least one heater of the hair drying and / or styling device.