Andreas Watterott
Andreas Watterott
Sure, that is possible and we are open for improvements. Its also the same on the Wire library.
I had a short look on the functions, but I also see no problem. The timers are initialized in init() from wiring.c and the OC outputs are activated with analogWrite()....
There seems to be a hardware bug on timer 3+4 and the port register has to be written to 1 in order to get the output compare working: http://www.avrfreaks.net/comment/1717946#comment-1717946 So...
I have tested it with one of our boards and I have to check the date code, but I think it is newer. In the datasheet (errata) is also nothing...
Because it is used in the Arduino source code and the chance that a pull-request is accepted is better, when the coding style/formatting is the same.
The date code of my mega328PB where the issue also exists is 1619.