Interrupt Capabilities on SL808x: Debounce Mode


#1

We use SL8082T for an application with (among other peripherals) an SPI port expander. SL8082T lacks of available ports. The port expander reports changing input values via interrupt to the SL8082T. So we use an external interrupt to control things that happen on the inputs of the port expander. On Q2687 (may god rest his soul!) debouncing of the interrupt worked well. But with SL8082T there seems not to be a debounce function on external interrupts at all. adl_extintGetCapabilities() shows (not only!) at DebounceMode NULL. Question to the Sierra Wireless guys: Are You for real?
Our problem: The high level interrupt handler for the external interrupt gets triggerd several times when the port expander sets its interrupt active. There is no evidence for more than one falling edge of the interrupt signal (measured with a LeCroy 10GS/s scope). Due to an extensive error handling in the interrupt handler that does no harm. But there are handler calls that are not neccessary and perhaps may however disturb the system. To avoid bouncing at this level of knowledge is hardware (a lowpass filter, which doesn’t really be neccessary according to the measurements). But can this really be true?
Asks

Harald Wehner


#2

Harald,

The SL8 design is significantly different to the Q26 one, the 2G units had their firmware/hardware tightly integrated and as a result there was not a lot between the OS/API and the hardware. On the HL8 Open AT had to be integrated on the Qualcomm platform in a similar way to Android is in that it is a ‘guest OS’, there is/was no other way to do it hence there is a lot of firmware/process between the application/API and the actual hardware so while the processor is far higher spec the overall performance is about the same but things like debounce cannot be handled/catered for, we are also limited by the platform capabilities.

Regards

Matt