Timer Conflicts between different Libraries. Document? Solutions?

I agree that libraries (as well as the Core functions) need to advertise what timers they are using. (One of my other pet peeves is libraries that don't say how much flash they use.) I think documenting them as you are is probably best short-term solution.

Long term, we need to get the Arduino guys to adopt something like Simon Monk's timer API right into the Core. That would be awesome in two ways:

  1. Fewer libraries would need to control the timers directly, and
  2. We could stop teaching newbies to use delay() as much

Now, to be sure, some libraries will still need to take over a timer just because they need more speed/precision, but having a timed event API in the Core will surely help the situation.

As an aside, having a single central repository like Apple's iTunes / Androids App Store for all Arduino libraries would also be awesome. Yes, there's the Playground, but it's not organized really well and a lot of libraries never make it there. Having a link in the IDE to "Get more libraries" which takes you to a web page that has a good searchable/browseable database will make it easy to find libraries. And the database can also tell you what timers each library uses (and how much flash it takes!).