The Lounge is rated Safe For Work. If you're about to post something inappropriate for a shared office environment, then don't post it. No ads, no abuse, and no programming questions. Trolling, (political, climate, religious or whatever) will result in your account being removed.
1. The lounge is for the CodeProject community to discuss things of interest to the community, and as a place for the whole community to participate. It is, first and foremost, a respectful meeting and discussion area for those wishing to discuss the life of a Software developer.
The #1 rule is: Be respectful of others, of the site, and of the community as a whole.
2. Technical discussions are welcome, but if you need specific programming question answered please use Quick Answers[^], or to discussion your programming problem in depth use the programming forums[^]. We encourage technical discussion, but this is a general discussion forum, not a programming Q&A forum. Posts will be moved or deleted if they fit better elsewhere.
4. No politics (including enviro-politics[^]), no sex, no religion. This is a community for software development. There are plenty of other sites that are far more appropriate for these discussions.
5. Nothing Not Safe For Work, nothing you would not want your wife/husband, your girlfriend/boyfriend, your mother or your kid sister seeing on your screen.
6. Any personal attacks, any spam, any advertising, any trolling, or any abuse of the rules will result in your account being removed.
7. Not everyone's first language is English. Be understanding.
Please respect the community and respect each other. We are of many cultures so remember that. Don't assume others understand you are joking, don't belittle anyone for taking offense or being thin skinned.
We are a community for software developers. Leave the egos at the door.
"I have no idea what I did, but I'm taking full credit for it." - ThisOldTony
"Common sense is so rare these days, it should be classified as a super power" - Random T-shirt
AntiTwitter: @DalekDave is now a follower!
Okay let me start by saying how much I love the ESP32. It's a 32-bit dual core SoC with wifi and bluetooth for less than $10, what's not to love?
But... Espressif, come on. You made a great piece of hardware, and I want to unlock all of its fancy features.
I ditched the Arduino framework and started coding directly against the ESP-IDF (the dev framework Espressif made specifically for the ESP32)
All is good, woo! I have access to the full STL, to filesystem mount points, to the humble printf() - all the things I couldn't get under Arduino.
The SPI bus drivers for the ESP-IDF seem to be absolute *garbage*. I've written ESP32 based drivers for an ILI9341 display adapter for both ESP-IDF and the Arduino framework, and the Arduino one runs at 40MHz and I can only top the other one out at 26MHz! Furthermore, with the ESP32 SPI drivers there seem to be timing issues. Until my good logic analyzer gets here I can't know for sure, but it looks like the SCLK line is lagging behind the data lines by half a tick. For this or some other reason I cannot get the ESP-IDF to talk to e-paper/e-ink displays at all.
Why go through all this effort to make a framework for your hardware, and then botch the SPI implementation for it, all the while making a *good* implementation of it for someone else's (Arduino) framework?!