diff --git a/esp8266/modmachine.c b/esp8266/modmachine.c
index 5cf6f589b2c9113c54157ca2281554ab261e1ed2..89cf4fbb9075967f6f853d376a7046b24dd41de1 100644
--- a/esp8266/modmachine.c
+++ b/esp8266/modmachine.c
@@ -57,6 +57,12 @@ STATIC mp_obj_t machine_freq(mp_uint_t n_args, const mp_obj_t *args) {
 }
 STATIC MP_DEFINE_CONST_FUN_OBJ_VAR_BETWEEN(machine_freq_obj, 0, 1, machine_freq);
 
+STATIC mp_obj_t machine_reset(void) {
+    system_restart();
+    return mp_const_none;
+}
+STATIC MP_DEFINE_CONST_FUN_OBJ_0(machine_reset_obj, machine_reset);
+
 typedef struct _esp_timer_obj_t {
     mp_obj_base_t base;
     os_timer_t timer;
@@ -139,6 +145,7 @@ STATIC const mp_rom_map_elem_t machine_module_globals_table[] = {
     { MP_ROM_QSTR(MP_QSTR_mem32), MP_ROM_PTR(&machine_mem32_obj) },
 
     { MP_ROM_QSTR(MP_QSTR_freq), MP_ROM_PTR(&machine_freq_obj) },
+    { MP_ROM_QSTR(MP_QSTR_reset), MP_ROM_PTR(&machine_reset_obj) },
 
     { MP_ROM_QSTR(MP_QSTR_Timer), MP_ROM_PTR(&esp_timer_type) },
     { MP_ROM_QSTR(MP_QSTR_Pin), MP_ROM_PTR(&pyb_pin_type) },
diff --git a/esp8266/modpyb.c b/esp8266/modpyb.c
index be64c1909fa96816ea0afdd87380a76a7c6e4468..ab9e97ad869fcb9ebd770a7d6e68e1ea650a6801 100644
--- a/esp8266/modpyb.c
+++ b/esp8266/modpyb.c
@@ -125,12 +125,6 @@ STATIC mp_obj_t pyb_udelay(mp_obj_t usec_in) {
 }
 STATIC MP_DEFINE_CONST_FUN_OBJ_1(pyb_udelay_obj, pyb_udelay);
 
-STATIC mp_obj_t pyb_hard_reset(void) {
-    system_restart();
-    return mp_const_none;
-}
-STATIC MP_DEFINE_CONST_FUN_OBJ_0(pyb_hard_reset_obj, pyb_hard_reset);
-
 STATIC mp_obj_t pyb_unique_id(void) {
     uint32_t id = system_get_chip_id();
     return mp_obj_new_bytes((byte *)&id, sizeof(id));
@@ -149,7 +143,6 @@ STATIC const mp_map_elem_t pyb_module_globals_table[] = {
     { MP_OBJ_NEW_QSTR(MP_QSTR_delay), (mp_obj_t)&pyb_delay_obj },
     { MP_OBJ_NEW_QSTR(MP_QSTR_udelay), (mp_obj_t)&pyb_udelay_obj },
     { MP_OBJ_NEW_QSTR(MP_QSTR_sync), (mp_obj_t)&pyb_sync_obj },
-    { MP_OBJ_NEW_QSTR(MP_QSTR_hard_reset), (mp_obj_t)&pyb_hard_reset_obj },
 
     { MP_OBJ_NEW_QSTR(MP_QSTR_Pin), (mp_obj_t)&pyb_pin_type },
     { MP_OBJ_NEW_QSTR(MP_QSTR_ADC), (mp_obj_t)&pyb_adc_type },
diff --git a/esp8266/qstrdefsport.h b/esp8266/qstrdefsport.h
index f82e0d1a535213b596c136f4bdd3e04c2e48c444..36e34e85aae8d2f291b87a14e4592e1ef587dab7 100644
--- a/esp8266/qstrdefsport.h
+++ b/esp8266/qstrdefsport.h
@@ -39,7 +39,6 @@ Q(elapsed_micros)
 Q(delay)
 Q(udelay)
 Q(sync)
-Q(hard_reset)
 Q(unique_id)
 
 // uos module
@@ -191,6 +190,7 @@ Q(ticks_diff)
 Q(time)
 
 // machine
+Q(reset)
 Q(Timer)
 Q(callback)
 Q(deinit)