victor_pv wrote:What's the TimerOne library for? I haven't used it before.
A note of advice, when working on my port of the TMRPCM library I found HardwareTimer provides only the most basic features of the timers, but there are some core functions that can do more, and then all registers and bits are defined in the core, so for anything advanced other than generate PWM output and trigger an interrupt, you should go and have a good read on the stm32f1 reference manual and learn how the timer peripherals work, then you can go setting registers as you need.
BTW, there is a thread called something like "My maple mini just let go of the magic smoke" that shows some issues with the hardware, and some could be corrected. I started it when I thought I had burnt the MCU, and found out it was just the voltage regulator and a diode and was able to replace them.
Timer one is similar to HardwareTimer for the Maple Mini.
Best example of what it does can be found here http://playground.arduino.cc/Code/Timer1 Although we use Paul Stoffregen's modified TimerOne library which is faster and works on more boards.
We use it to help generate the sound pulses required to convert TZX/TAP/CAS files into noise that the computers can detect.