fast interrupt crashing port
Closed this issue · 1 comments
mobileoverlord commented
I am experiencing random crashes when the pin interrupt is hit at a high rate ~ 50hz.
=CRASH REPORT==== 1-Jan-1970::00:00:44 ===
crasher:
initial call: Elixir.Gpio:init/1
pid: <0.409.0>
registered_name: []
exception exit: {function_clause,
[{'Elixir.Gpio',handle_port,
[0,
#{'__struct__' => 'Elixir.Gpio.State',
callbacks => [<0.408.0>],
direction => input,
pin => <<"67">>,
port => #Port<0.5263>}],
[{file,"lib/gpio.ex"},{line,107}]},
{gen_server,try_dispatch,4,
[{file,"gen_server.erl"},{line,615}]},
{gen_server,handle_msg,5,
[{file,"gen_server.erl"},{line,681}]},
{proc_lib,init_p_do_apply,3,
[{file,"proc_lib.erl"},{line,240}]}]}
in function gen_server:terminate/7 (gen_server.erl, line 826)
ancestors: ['Pin67',<0.273.0>,'Elixir.ElementIo.Supervisor',<0.265.0>]
messages: []
links: [<0.408.0>,#Port<0.5263>]
dictionary: []
trap_exit: false
status: running
heap_size: 987
stack_size: 27
reductions: 2697
neighbours:
neighbour: [{pid,<0.408.0>},
{registered_name,'Pin67'},
{initial_call,
{'Elixir.ElementIo.GPIO',init,['Argument__1']}},
{current_function,{gen,do_call,4}},
{ancestors,
[<0.273.0>,'Elixir.ElementIo.Supervisor',<0.265.0>]},
{messages,
[{gpio_interrupt,<<"67">>,rising},
{#Ref<0.0.1.3449>,{gpio_interrupt,falling}}]},
{links,[<0.273.0>,<0.409.0>]},
{dictionary,[]},
{trap_exit,false},
{status,runnable},
{heap_size,2586},
{stack_size,28},
{reductions,53279}]