0

NeoTrellis INT line Bug Report
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

NeoTrellis INT line Bug Report

by LuLu100 on Sun Jul 03, 2022 7:19 am

Hi,

Bug Report:
==========
The NeoTrellis INT line occasionally getting stuck low issue.


Reproduce Case:
===============
I created a very simple reproduce case that is documented below:


Setup (pictures attached):
=========================================================
- (1) ItsyBitsy M4
- (1) NeoTrellis Keypad
- (1) Adafruit example code: interrupt.ino from the Adafruit seesaw Library\examples\NeoTrellis\interrupt\interrupt.ino
(this Adafruit example code polls the neotrellis INT line (there are no interrupts being used on the M4...the file name interrupt.ino is a bit confusing)
(this reproduce case is 100% Adafruit example code)


Test:
====
- press a kypd button a few times with the loop() delay set to 2ms.
- press a kypd button a few times with the loop() delay set to 50ms.


Results:
=========================================================
1) when the delay() in loop() is 2 ms the INT line does Not get stuck low
2) when the delay() in loop() is 50 ms the INT line Does get stuck low occasionally (anything >= a 7 ms delay() will cause the INT line to occasionally get stuck low)


Conclusions:
=========================================================
1) the length of the delay() in loop() appears to adversely affect the neotrellis INT pin's behavior
2) any code in loop() that takes longer then 7 ms to run will cause this issue to appear
3) this seems like a bug in the neotrellis firmware (ATSAMD09D14A see saw firmware)
4) this is a very straight forward way to reproduce the issue for testing and debugging

Let me know what you make of this reproduce case,
Louie

p.s. i have 13 of these neotrellis boards.
p.s. there is a workaround...detect when the INT line is stuck low and call NeoTrellis.SWReset()
p.s. i think Adafruit is awesome. I am very happy Adafruit customer. Your sw libraries make building so easy.
Attachments
neoTrellis_issue_1.jpg
neoTrellis_issue_1.jpg (937.12 KiB) Viewed 104 times
neoTrellis_issue_2.jpg
neoTrellis_issue_2.jpg (892.64 KiB) Viewed 104 times
neoTrellis_issue_3.jpg
neoTrellis_issue_3.jpg (858.29 KiB) Viewed 104 times

LuLu100
 
Posts: 18
Joined: Fri Aug 10, 2018 3:34 pm

Re: NeoTrellis INT line Bug Report

by mikeysklar on Sun Jul 03, 2022 6:31 pm

Nice bug report. Thank you for narrowing down the timing and the hard work.

Would you mind filing it with the Adafruit Seesaw github repo?

https://github.com/adafruit/Adafruit_Seesaw/issues

mikeysklar
 
Posts: 8060
Joined: Mon Aug 01, 2016 8:10 pm

Re: NeoTrellis INT line Bug Report

by LuLu100 on Tue Jul 05, 2022 10:44 am

Hi Mike,

I created a github issue per your request:
https://github.com/adafruit/Adafruit_Seesaw/issues/76

Louie

LuLu100
 
Posts: 18
Joined: Fri Aug 10, 2018 3:34 pm

Re: NeoTrellis INT line Bug Report

by mikeysklar on Tue Jul 05, 2022 2:26 pm

Louie,

Thank you for all your work here. Good stuff.

mikeysklar
 
Posts: 8060
Joined: Mon Aug 01, 2016 8:10 pm

Re: NeoTrellis INT line Bug Report

by adafruit2 on Wed Jul 06, 2022 9:04 am

we're aware o the bug but have not had the time to sit down and figure out whats up!

adafruit2
Site Admin
 
Posts: 21064
Joined: Fri Mar 11, 2005 7:36 pm

Please be positive and constructive with your questions and comments.