Create a field (defined within same module) during module installation? Having this code:

function mymybase_update_7200(){
    if(!field_info_field('field_timer_exam')){
        $field = [
            'field_name'  =&gt; 'field_timer_exam',
            'label'       =&gt; 'Countdown timer',
            'type'        =&gt; 'mymy_field_countdown',
        ];
        field_create_field($field);

        $instance = [
            'field_name'  =&gt; 'field_timer_exam',
            'entity_type' =&gt; 'user',
            'bundle'      =&gt; 'user',
            'label'       =&gt; 'Countdown timer',
            'settings'    =&gt; [
                'user_register_form' =&gt; 0,
            ],
            'widget'      =&gt; [
                'type'      =&gt; 'mymy_field_countdown_widget',
                'settings'  =&gt; [
                    'display_label' =&gt; TRUE,
                ],
            ],
        ];
        field_create_instance($instance);
    }

    if(!field_info_field('field_timer_final_exam')){
        $field = [
            'field_name'  =&gt; 'field_timer_final_exam',
            'label'       =&gt; 'Countdown timer',
            'type'        =&gt; 'mymy_field_countdown',
        ];
        field_create_field($field);

        $instance = [
            'field_name'  =&gt; 'field_timer_final_exam',
            'entity_type' =&gt; 'user',
            'bundle'      =&gt; 'user',
            'label'       =&gt; 'Countdown timer',
            'settings'    =&gt; [
                'user_register_form' =&gt; 0,
            ],
            'widget'      =&gt; [
                'type'      =&gt; 'mymy_field_countdown_widget',
                'settings'  =&gt; [
                    'display_label' =&gt; TRUE,
                ],
            ],
        ];
        field_create_instance($instance);
    }
}


Which i think it is ok, field get created when running in the hook_menu page callback for example, but during installation the fields does not get created. 

There is no error in the watchdog nor in apache logs, the field does not exist in the user entity nor tables like field_data_field_timer_exam

The update get fired, at system table i can see the schema_version columna get updated for my module

What could be happening?
The function hook_update_N() only gets called by running update.php. You also need to implement a hook_install(), for example like this:

function mymybase_install() {
  mymybase_update_7200();
}


Do note that this only runs when you enable the module for the first time. So if you already enabled the module, you can test this by first disabling it and then uninstalling it. If you want to run the function each time the module is enabled, you should use hook_enable().