0

RA8875 800x480 display and ESP32 - HELP!
Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.

RA8875 800x480 display and ESP32 - HELP!

by twiereng on Thu Nov 01, 2018 4:15 pm

I'm trying to get a RA8875 driver and 800x480 Adafruit display to work using and ESP32. When I connect to an Arduino Nano everything works fine. I'm using and ESP32 VROOM 32, gotten form Amazon, the HiLetgo ESP-VROOM-32 ESP32. ESP32 tested, connects to Internet and reads weather and time, connected to BME280 and reads temp and humidity - so chip is OK.

MOSI to pin 23
MISO to pin 19
SCK to pin 18
SS to pin 5
CS to pin 10
Reset to pin 9
INT to pin 4, no pin 3 available

Doing:

Serial.println(MOSI);
Serial.println(MISO);
Serial.println(SCK);
Serial.println(SS);

confirms these pins.

Does anyone from Adafruit check these forums? My last two posts went unanswered.

Thanks, Theron

twiereng
 
Posts: 25
Joined: Sun Nov 18, 2012 3:30 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by adafruit2 on Tue Nov 06, 2018 12:16 am

we've never tried the ESP32 w/RA8875 - ESP32 also has all sorts of weirdness that makes it unstable and hard to use. as you saw, it works with an Arduino just fine so its the ESP32 for sure
you could try debugging it step by step through the library to see where it fails. you'd likely need a logic analyzer to do so

adafruit2
Site Admin
 
Posts: 17978
Joined: Fri Mar 11, 2005 7:36 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by twiereng on Wed Nov 07, 2018 10:19 am

Thank you for the reply. With the widespread use of the ESP32 (and considering Adafruit stocks and sells them) it would be helpful if the author(s) of the RA8875 software would determine what the problem is. That way if customers purchase your Espressif ESP32 Development Board - Developer Edition, you could advertise that the RA8875 will work with what you sell.

Regards, Theron

twiereng
 
Posts: 25
Joined: Sun Nov 18, 2012 3:30 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by adafruit2 on Wed Nov 07, 2018 10:21 am

please open an issue on the RA8875 library repo, no ETA on when we'll get to reviewing and fixing it. thanks :)

adafruit2
Site Admin
 
Posts: 17978
Joined: Fri Mar 11, 2005 7:36 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by twiereng on Wed Nov 07, 2018 12:52 pm

OK, I'd be happy to do that. Couldn't find where to on the web site.

My intention is to write an article for Nuts & Volts in the next couple of weeks reviewing the 800x480 display and RA8875. My current work around will be to use an Arduino Nano as a slave between the ESP32 and the display.

Regards, Theron Wierenga

twiereng
 
Posts: 25
Joined: Sun Nov 18, 2012 3:30 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by adafruit2 on Wed Nov 07, 2018 1:09 pm


adafruit2
Site Admin
 
Posts: 17978
Joined: Fri Mar 11, 2005 7:36 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by robertanthony02 on Tue Jan 15, 2019 7:54 am

"ESP32 also has all sorts of weirdness that makes it unstable and hard to use."

Wow. That should be on the item's shop page. I read the part about warning people that this isn't a beginner's board and there are bugs to be worked out, but I also read the part that says "you can expect things like I2C and SPI and analog reads to work". Too bad I took that statement to heart and spent the last three days building a thermostat in a custom enclosure, soldered all the connections, and then found out that in fact we can NOT expect SPI to work...at least not when interfacing the RA8875 which doesn't make any sense to me.

This board has been out for a while now so when can we expect this to get fixed?

robertanthony02
 
Posts: 9
Joined: Fri Apr 04, 2014 2:52 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by twiereng on Tue Jan 15, 2019 10:42 am

Robert,

Both I2C and SPI work fine on the ESP32. I've used BME280 on I2C and the VS 1053 MP3 decoder on SPI. The problem is the Adafruit library. If you dig into their code you'll find the first thing it does on startup is to read a register from the microcontroller and if it doesn't match what an Arduino gives, it just shuts down. The work around I used was to use an Arduino Nano as a slave to the ESP32, the Arduino then drives the RA8875. I have an article coming up shortly on Nuts & Volts that uses this as a work around. You could also use the Arduino MKR 1010 as I found it will work with the RA8875 library.

There is also another RA8875 library out there - https://github.com/sumotoy/RA8875
I haven't tried it but it would be interesting to see if it works with the Adafruit board.

Regards, Theron Wierenga

twiereng
 
Posts: 25
Joined: Sun Nov 18, 2012 3:30 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by adafruit2 on Tue Jan 15, 2019 1:49 pm

not sure when we'll get to testing the RA8875 w/ESP32 - we definitely warn people about the ESP32!

https://www.adafruit.com/product/3405
"Please note: The ESP32 is still targeted to developers. Not all of the peripherals are fully documented with example code, and there are some bugs still being found and fixed."

people think the ESP is "an arduino with WiFi" and don't realize its a completely different chipset and toolchain - with totally different ways of using the peripherals! its not "an arduino" at all, its an ESP32 that has some compatibility software :)

you can open up an issue on the RA8875 repo - that way you'll be notified when its addressed (no ETA) https://github.com/adafruit/Adafruit_RA8875/issues

adafruit2
Site Admin
 
Posts: 17978
Joined: Fri Mar 11, 2005 7:36 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by robertanthony02 on Tue Jan 15, 2019 6:25 pm

You guys, c'mon, you're killin' me!

adafruit2: I appreciate you taking the time to respond but, respectfully, nothing you said furthered the conversation. You had already suggested to another customer that they submit an issue on Github and that there is no ETA for a resolution, so repeating that didn't add value to the thread. You also quoted a line from the item's shop page, which was unnecessary since I had already stated that I read the part about bugs still being found and fixed. Then you really wasted time by mentioning people think the ESP is an Arduino with WiFi...what gave you the impression that was the issue here? I'm not going to bother mentioning my professional expertise in this arena, but let's just say that I'm acutely aware of the differences between architectures like ARM and Xtensa and brands like Arduino and Feather. At least I think that's the case, lemme see... This is Arduino with WiFi: https://store.arduino.cc/usa/arduino-uno-wifi-rev2 ... and ESP32 is a SoC that includes a WiFi module...and a much faster proc and greater RAM capacity, which is why I decided to purchase it instead of Arduino with WiFi!

All that aside, perhaps the greatest offense is that you didn't directly address the point I raised, which was that Adafruit says "you can expect things like I2C and SPI and analog reads to work." I did that. I expected SPI to work. My mistake was assuming that the more specific, quite explicit, statement saying that SPI works would supersede the vague, blanket statement warning customers of potential issues with this product. If I sold you a car, for example, and said "The car needs work, it has issues, but the tires are OK," then wouldn't you assume that while you may need to spend money fixing the engine you won't have to buy new tires?

Anyway, I'll leave you with one last thought. If Adafruit thinks "that as the ESP32 gets traction, we'll see more people move to this chip exclusively, as it is so full-featured" then they should act in a way that supports this chip to the greatest extent possible. In this case, that would mean devoting resources to ensuring their product lives up to the features touted on the site.

Theron: thank you for the suggestions, but I don't consider using other products to do what the HUZZAH32 is supposed to do to be a "workaround." That's simply going with another solution altogether. Using another car analogy, that would be like buying another car to use for driving because the engine broke down, but I still use that demobilized car for it's ability to store things in the trunk and cabin. It's also kinda stating the obvious...one can always add more hardware to do more things, except when you can't add more hardware for one of many reasons. In my case, I'm limited to working within a small enclosure but it can perhaps be done. I'm on the verge of going a completely different route with my thermostat and putting all the electronics inside the wall, minus the touchscreen, of course. That would allow me to buy the actual Arduino with WiFi solution and not be confined to a small space.

The suggestion for the other library was a good one but I had already tried that one and another one as well. I found another post (https://forums.adafruit.com/viewtopic.php?f=47&t=96819) where someone seems to have found success with this combination of hardware and he references RA8875.h (and .cpp) but it's not clear if he's referring to the Adafruit version or the original version. I asked for clarification on that thread. Either way, I tried both versions. I tried making several modifications to no avail.

What doesn't make sense about your first suggestion is that if the issue is as simple as the Adafruit library is expecting a certain value but is receiving another, then why didn't you just modify the code so that it accepts the value it's given? I may not be understanding the situation fully or I may be underestimating the level of effort to make the fix, so I'm curious to hear your response.

Thanks again, guys.

Cheers

robertanthony02
 
Posts: 9
Joined: Fri Apr 04, 2014 2:52 pm

Re: RA8875 800x480 display and ESP32 - HELP!

by adafruit2 on Tue Jan 15, 2019 6:47 pm

it coudl be the fix is simple - and the RA8875 is using SPI only - so it should work. but then again, ESP32 I2C should work too, but only a few days ago repeated-start was fixed on the ESP32 - a bug which took 6 months for ESP32 to merge into mainline. simple can be deceptive :)
we just dont know what the fix is, the RA8875 library was written many many years ago, it works for sure on Arduino - we have not tested it on ESP32! their core is significantly different than arduino and many 'simple' devices dont work or work oddly.

we haven't tried our RA8875 drive with the ESP32 and don't want to promise any timeline when we will, there's 1000 repos on github and not every one is tested against every devboard and BSP :)

if you can't use the ESP32 dev board, email support@adafruit for a refund

if someone can open an issue on github, with details, that will help us when we do get to looking at it!

adafruit2
Site Admin
 
Posts: 17978
Joined: Fri Mar 11, 2005 7:36 pm

Please be positive and constructive with your questions and comments.