Turn off certain modules not wanted in custom builds#3337
Conversation
|
Good idear! Very Radiolib-esque. Would it make sense to eventually use these in the different architecture base platformio build flags to control the module injections there instead of directly in the modules with the arch macros? |
|
Turns out i forgot the inputbroker in the 'nuke all' macro... will revisit tomorrow. It's not a real saving, gives you 2% flash on a t-beam. I'd like to keep both options available, arch and module macros. this way the tuning is more granular, and you can make 'feature firmwares' for memory restraint devices. Apollo-Router, Apollo-Tracker, Apollo-Sensor and so on. Also i'd like to propose this as a kind of standard to exclude functionality from builds, even outside the modules. Implementation may be a bit more complicated for other things though. Xmodem comes to mind, or an ESP32 build without webserver (hint, hint) |
I've done most of the work for this in my project already and would be happy to contribute it. Question: with no webserver, is there still a use case for enabling wifi? My code currently assumes there is not and disables both. |
Technically there is still the TCP API, usable through the CLI and a couple apps. |
|
OK, thx. My initial work started with disabling wifi and then anything that depended on that, but now that I know it makes sense to have the TCP/wifi and webserver independently enabled, I can re-write to support that. |
|
This is likely to crash when connected to a client app. |
|
@garthvh Can you elaborate? I've been testing and haven't found any crash scenario, just that CLI and web apps fail to connect when webserver is disabled. BT connection with iOS app still works fine. |
No description provided.