anchor.diff:      get_module_config(list_to_atom(Name));
   get_module_config(Name) ->
       gen_server:call(Name, {get_module_config}).
  +get_model(Name) when is_list(Name) ->
  +    get_model(list_to_atom(Name));
  +get_model(Name) ->
  +    gen_server:call(Name, {get_model}).
  +
   stop(Name) when is_list(Name) ->
       stop(list_to_atom(Name));
   stop(Name) ->
  
positive.code:     Config_1 = Module:Func({gpio_interrupt, 0, Pin, Status}, Config, Module_config),
      {noreply, State#state{config = Config_1}};
  
  handle_info({external_event, Application,  Body}, State=#state{config = Config}) ->   
      lager:info("external_event from Application : ~p with Body : ~p",[Application, Body]),
      {driver, {Module, Func}, Module_config} = lists:keyfind(driver, 1, Config),
      Config_1 = Module:Func({external_event, Application,  Body}, Config, Module_config),
  
negative.code:                 {reply, ets:tab2list(Table_Id) , State};
          false -> {driver, {_Module, _Func}, Module_config} = lists:keyfind(driver, 1, Config),
                   {reply, Module_config, State}
      end;
  handle_call({get_model}, From, State=#state{config = Config}) ->    
      Reply = case proplists:get_value(model_fun, Config, []) of
          [] -> [];
          {Model, Function} -> F=list_to_atom(Function), 
                               Fun = fun Model:F/0,
                               Fun()
      end,
      {reply, Reply, State};   
  handle_call(Request, From, State) ->
      Reply = ok,
      {reply, Reply, State}.
  