код на си, писать можно хоть в блокноте, но лучше юзать что-то заточенное под это, типа VS Code. можно не париться с голым esp-idf, а юзать удобную связку VS Code + platformio, в котором как раз есть поддержка фреймворка esp-idf (не всегда самые последние версии, но достаточно актуальные)