ftrias / TeensyThreads

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

missing file IntervalTimer.h ?

dsyleixa opened this issue · comments

a test compilation of Blink.ino targeting adafruit Feather M4 issues a compile error, appearently the file
IntervalTimer.h
is missing:

D:\arduino\portable\sketchbook\libraries\TeensyThreads-master\TeensyThreads.cpp:28:27: fatal error: IntervalTimer.h: No such file or directory

 #include <IntervalTimer.h>

                           ^

compilation terminated.

Bibliothek TeensyThreads-master in Version 1.0 im Ordner: D:\arduino\portable\sketchbook\libraries\TeensyThreads-master  wird verwendet
exit status 1

how can that be fixed?

The TeensyThreads library is designed to work only with the Teensy boards from PJRC. They are tightly tied to the software. They won't work with other boards.

that is a pity!
as the Teensy company claims that it's boards are compatible with the Arduino IDE, why can this lib not be made compatible to Arduino standards?

Libraries are developed off the arduino platform, but not necessarily tailored for every board on the market. The authors can’t write every specific code for everyboard based on different registers, hardware timers, and core compatibilities as every board is differently accessed and has different core to support their hardware.

In an alternate way of thinking, why doesn’t your board support libraries intended and written for the Teensy playform?

Arduino libraries who don’t access specifics of the chips are compatible cross platform, but don’t expect libraries to access specific hardware dependancies to be cross-platform.

I see your point, but at my (limited) level of understanding your lib uses std::threads which is a standard (general) C++ lib, so a gcc (g++) compiler is supposed to compile that code to either target platform.
So what is so specific at the Teensys that std::threads (used by your lib) can be compiled just to M4 Teensys, and not to M4 Adafruits?

commented

Maybe you can read the datasheets yourself and port it to your board?
M4 is not M4 - the only identical part is the ARM-core. Atmel decided to use other periphals than NXP.

Maybe, just buying a Teensy is the easyest way to get it running.

for using my Adafruit Featherwing accessories, I would need a perfectly matching Feather Adapter for the Teensy 3.5 (or 3.6) which is not available yet (just for 3.1-3.2)
But back to topic, IIUC:
where is IntervalTimer.h?
is that a proprietary Teensy system file located anywhere else?