An electric machine comprising: an electric motor, said electric motor being configured to receive a power supply from a power source; a motor control unit, said motor control unit being configured to control said power supply from said power source to said electric motor; a commutation device, said commutation device being configured to receive a high frequency sinusoidal current from a microcontroller, said microcontroller being configured to generate a sinusoidal current to enable excitation of said commutation device; a plurality of first sensors (105,106), said plurality of first sensors (105,106) being adapted to sense a direct current (Idc) from said power source and a direct voltage (Vdc) across said power source; and a plurality of second sensors (110,111,112), said plurality of second sensors (110,111,112) being connected to one or more phase lines (Lr, Ly, Lb) of said electric motor, said plurality of second sensors (110,111,112) being adapted to sense one or more phase currents (Ir, Iy, Ib) characterised in that said microcontroller determines a direct current power through an input received from said plurality of first sensors (105,106), said microcontroller determines root mean square current (Irms) values for said one or more phase lines (Lr, Ly, Lb) after receiving said one or more phase currents (Ir, Iy, Ib) from said plurality of second sensors (110,111,112), wherein, said microcontroller being configured to determine a current temperature based on said direct current power and said root mean square current (Irms) values, said microcontroller being configured to disconnect a power supply to said electric motor, when said current temperature being greater than a predetermined temperature (To). an electric motor, said electric motor being configured to receive a power supply from a power source; a motor control unit, said motor control unit being configured to control said power supply from said power source to said electric motor; a commutation device, said commutation device being configured to receive a high frequency sinusoidal current from a microcontroller, said microcontroller being configured to generate a sinusoidal current to enable excitation of said commutation device; a plurality of first sensors (105,106), said plurality of first sensors (105,106) being adapted to sense a direct current (Idc) from said power source and a direct voltage (Vdc) across said power source; and a plurality of second sensors (110,111,112), said plurality of second sensors (110,111,112) being connected to one or more phase lines (Lr, Ly, Lb) of said electric motor, said plurality of second sensors (110,111,112) being adapted to sense one or more phase currents (Ir, Iy, Ib) characterised in that said microcontroller determines a direct current power through an input received from said plurality of first sensors (105,106), said microcontroller determines root mean square current (Irms) values for said one or more phase lines (Lr, Ly, Lb) after receiving said one or more phase currents (Ir, Iy, Ib) from said plurality of second sensors (110,111,112), wherein, said microcontroller being configured to determine a current temperature based on said direct current power and said root mean square current (Irms) values, said microcontroller being configured to disconnect a power supply to said electric motor, when said current temperature being greater than a predetermined temperature (To). said microcontroller determines a direct current power through an input received from said plurality of first sensors (105,106), said microcontroller determines root mean square current (Irms) values for said one or more phase lines (Lr, Ly, Lb) after receiving said one or more phase currents (Ir, Iy, Ib) from said plurality of second sensors (110,111,112), wherein, said microcontroller being configured to determine a current temperature based on said direct current power and said root mean square current (Irms) values, said microcontroller being configured to disconnect a power supply to said electric motor, when said current temperature being greater than a predetermined temperature (To). said microcontroller being configured to determine a current temperature based on said direct current power and said root mean square current (Irms) values, said microcontroller being configured to disconnect a power supply to said electric motor, when said current temperature being greater than a predetermined temperature (To).