// it is called by the init task before scheduling is enabled and before we activate the CFG-RUN-ERR state machine
extern void eom_emsappl_hid_userdef_initialise(EOMtheEMSappl* p)
{   
    // pulse led3 forever at 20 hz.
    eo_ledpulser_Start(eo_ledpulser_GetHandle(), eo_ledpulser_led_three, EOK_reltime1sec/20, 0); 
    
    // init 5v
    hal_5v_init(NULL);
    hal_5v_on();
    
    // do whatever is needed to start services.
    s_overridden_appl_initialise_services();    
}
    static hal_result_t s_hal_cantransceiver_simple_init(hal_cantransceiver_t id, void* initpar)
    {
        initpar = initpar;
//        const hal_gpio_map_t* map = &s_hal_cantransceiver__gpiomapof_enable[(uint8_t)id];        
//        const hal_gpio_cfg_t* cfg = &s_hal_cantransceiver__gpiocfgof_enable[(uint8_t)id];   
//        hal_gpio_init(map->gpio, cfg);        
//        s_hal_cantransceiver_simple_disable(id);     

//        s_hal_brdcfg_mc4plus_vaux_5v0_init();
//        s_hal_brdcfg_mc4plus_vaux_5v0_on();

        hal_5v_init(NULL);
        hal_5v_on();
        
        return(hal_res_OK);
    }