@volker, I believe the short answer is yes, you need to rename .c to .cpp. Are you developing using Particle Workbench? I assume you are targeting DeviceOS 5.01 for the new P2, correct?
I’m not sure where you include “Particle.h” in the code. Also, make sure to follow the correct library folder/file structure.
For local compilation you can use .c files, but beware of functions exported by C files and used from C++ files as you probably will need some extern "C" to get around name mangling issues.
It’s usually easier to just use .cpp files everywhere.
Any .cpp file that uses Arduino/Particle functions will need
#include "Particle.h"
If you use any structures or classes from the .h file it would need to be there, so it’s usually easiest to just include it from the .h files always. Internally it guards against multiple inclusion so it’s fine to include it from all of the .h files if you’re not sure the order they will be included.