Using avr/interupt.h with the dash pro

I’ve been trying to use an IR send/receive example I found here and here.

After some compilation failures, I realized that the dash pro doesn’t support the avr library. So my questions are:
Generally speaking - what is the dash pro processor and board family and why does it not support the avr library?
Particularly - how to use the avr library or it’s equivalent with the dash pro, especially the avr/interupt.h and other timing modules?



The Dash/Dash Pro uses an ARM Cortex-M chip instead of an AVR. Most Arduino boards use AVR, so you will sometimes see AVR-specific code show up in Arduino libraries. The Dash processor is 32-bit vs 8-bit for the AVR and runs at 120MHz instead of 8 or 16 MHz. So it is a much more powerful chip. The downside is that not all libraries will work out-of-the box with the Dash. We try to support as much Arduino functionality as possible.

For this IR library, in IRremoteInt.h you can see there is a lot of processor-specific code, even for differing AVR chips. To use this library the Dash/Pro specific code would need to be created. Here is the processor data sheet if you are interested in trying to make the modifications yourself.

1 Like

@igal I’ve ran into this wall from time to time. Luckily this is where our agnostic platform shines as you can get the hardware needed to run your peripherals and use almost any modem for transmitting to the cloud. Or the other option would be to fork the IR library, add ARM Cortex-M support and submit a pull request. Doing that would benefit all ARM users.

Got it. Thanks for the information!