4 ms·
Not having to deal with the monstrosity that is ESP-IDF is a huge benefit.
by q3k 2y ago
Not having to deal with the monstrosity that is ESP-IDF is a huge benefit.
- grmnygrmny2 2y agoI find this so confusing - I’m working on a fairly large project using ESP-IDF and find it an absolute joy to use. Far better than any other microcontroller framework.
- q3k 2y agoThat's the main problem with it - it's a framework. I don't want a framework that takes over an entire project and mandates the use of a given build system, configuration system, source code structure, etc. This tends to break apart when you want to have more complex build steps; eg. matrix builds, subsequent build actions on artifacts, integration with codegen like string interning, multiple target platforms which are likely not an ESP32 (like a simulation target running on the host), integration with linters/checkers, integration with test frameworks, etc. And the technology choices ESP-IDF made are also... controversial (CMake and Kconfig! Plus a whole bunch of Python glue to actually make it work together). Just give me libraries that I can build/link against and let me bring my own build system - or pick a build system that is actually extensible and will scale to more complex scenarios.
- roger_ 2y agoWhy monstrosity? I've not had any issues and their docker container is quite convenient.
- q3k 2y agoIf you find it acceptable to use Docker to develop/build projects then you probably have different standards than I do. But see my reply on another subthread for some of my issues with ESP-IDF.
- tredre3 2y agoI've been using esp-idf (both professionally and as a hobby) for almost a decade by now and I have not once used Docker. They even provide you with a fully offline SDK. Extract it and open a terminal and build things. No dependencies, no docker, no nothing. Your criticism regarding their usage of cmake and the kconfig language hold a bit more water. I've never had any issue with the kconfig system (at least not since they've reimplemented the menu system in python instead of whatever it was) but I have hit CMake limitations a few times.
- baq 2y agoHow else do you ensure somewhat consistent CI...? VM images?
- q3k 2y agoA good, hermetic build system. Nix or Bazel or ...
- asadm 2y agoOn the contrary, I LOVE using esp-idf via vscode in my hobby project. I was a lifelong Arduino IDE person but I find it clunky after this.