First of all, big thanks to you guys for participating in the discussion related to the controller management.
My thoughts on your suggestions will follow in another post.
Let's get to the juicy stuff.
Update No. "I don't remember which one
"
I've been a bit slow as I got a really bad flue and could not do anything over the weekend.
Today however we've hit another big milestone: We are logging stuff! (and we do it properly now
)
I have updated the Log class and now we support the following features:
1.The Logger has targets now
For now we plan to support 3 logging targets: "Serial Monitor", "WebSockets" and "SPIFFS Files".
The thing I consider really cool is that we can log to multiple targets at the same time. For now I have limited the concurrent target count to 3.
Note: I did not write the implementation for SPIFFS as there's no real application for it yet.
We have limited flash space and need to choose wisely what king of things we want to log there.
2.The Log has Levels of Severity now.
Now when logging we are able to flag/categorize logs according to the following specs:
DEBUG
INFO
NOTICE
WARNING
ERR
A user/developer can choose what log levels should be printed/sent/written to all the targets.
3.Add/Remove Log Targets via Websockets & Set the Log Levels
In one of the previous updates I have wrote a simple web app that can send commands to PACER.
With that in place we can now interact with the Log class.
- Enable/Disable Logger
- Add/Remove a Log Target
- Change the level of the logger.
This is pretty much it. I expect this to be very helpful for developers/users when trying to debug issues.
Thanks for reading! Feel free to ask questions or suggest things 
If you feel like contributing just ping me 
P.S. I've setup a small project board on github so that you guys can see what I am working on 
https://github.com/faraday-motion/pacer/projects
Cheers!