Yes, it should be very possible to do. As you say, with the Waveform API you should be able to write a file into the Bangle's storage and then play it back reasonably easily. I could help with some code examples for this.
However the speaker really isn't very loud at all - there's a thread on this but most Bangles don't have one in and use the vibration motor (which could still play back waveforms). There's not actually much difference in volume between the two options though.
It'd be good enough that if the runner held it to their ear they could hear (you may even be able to detect this motion and start the playback), or potentially you could open it up and try and add a better speaker to it.
In terms of mixing C and JS, you can compile in code to the firmware, but it's not that easy and there won't be the same Arduino APIs you might expect. For short functions you could use Inline C though: http://www.espruino.com/InlineC
Sounds like a great idea though - especially as with GPS it might even be able to provide some kind of basic navigation?
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Yes, it should be very possible to do. As you say, with the Waveform API you should be able to write a file into the Bangle's storage and then play it back reasonably easily. I could help with some code examples for this.
However the speaker really isn't very loud at all - there's a thread on this but most Bangles don't have one in and use the vibration motor (which could still play back waveforms). There's not actually much difference in volume between the two options though.
It'd be good enough that if the runner held it to their ear they could hear (you may even be able to detect this motion and start the playback), or potentially you could open it up and try and add a better speaker to it.
In terms of mixing C and JS, you can compile in code to the firmware, but it's not that easy and there won't be the same Arduino APIs you might expect. For short functions you could use Inline C though: http://www.espruino.com/InlineC
Sounds like a great idea though - especially as with GPS it might even be able to provide some kind of basic navigation?