Adafruit Featherwing 3.5 LCD & Argon Rebooting

Good Evening! I stripped out a library for the 8357 lcd and am trying to get it to work with the Argon. I went back to native pin out and spi commands, removing fast pin writes and bitbanging. The idea is to get the Adafruit 3.5 inch featherwing lcd up and running with the Mesh devices.

Code: https://www.dropbox.com/s/xnlz30k8uew0t75/touchpaint.zip?dl=0

I’ve been poking at it for a few days with no results, the argon ends up rebooting on it’s own, not sure why. Would be interested in someone taking a look at it, it reboots event if their is no lcd attached. It looks like simple spi send commands now, not sure what’s going wrong…

1 Like

Without having to open your dropbox - did you start with the community library? https://build.particle.io/libs/Adafruit_HX8357/0.9.7

This should build for the Argon or at least you should get compiler feedback as to why not. If it is using hardware SPI then there should be no need to get into removing fast pin writes and bitbanging!

@armor have you looked the the source for that library? It has no chance of working with the mesh devices as done. I’ve refashioned it to do so but the spirit is causing the device to reboot.

I have had a quick look at the dropbox files - your versions of Adafruit_HX8357.h and .cpp : observations (with no warranty!!!)

  1. Assume you are using hardware SPI, code is setup for Photon whereas Argon uses different Pins for SPI.
  2. If you using hardware SPI then you can simplify the code somewhat to remove the reference to the SPI class and just make the SPI.beginTransmission(); SPI.endTransmission(); etc. BTW - I haven’t checked whether SPI implemented for the Argon yet.
  3. I have been advised by others to use Adafruit_GFX_RK instead of the Adafruit_GFX as your #include. You will need to look through this to ensure that it is compatible with mesh devices.
1 Like

I used Adafruit_GFX_RK with the Adafruit 128x32 OLED FeatherWing and the Boron so that port of GFX definitely works on mesh.

4 Likes

@armor and @rickkas7 Thanks BOTH!!! Good direction, I’ll alter the code and keep going.

Honestly, the feather wing idea is BRILLIANT!!! Can’t wait to be able to slap a mesh device on an LCD and away I go!!!

I ported the libraries for the Adafruit 3.2" touch screen featherwing and it appears to work. Tested with an Argon.

The AdafruitTouchscreenFeatherWingRK library will include the necessary libraries and includes the graphicstest_featherwing and touchpaint_featherwing example projects.

Right now it includes these dependencies:

Once the SdFat library is updated for mesh I’ll include that and some examples as well.

4 Likes

@rickkas7 have you actually tested this library? It does not work on the 3.5" feather wing, the screen shows up and colors, but it doesn't fill the entire screen and the touch points are wrong but they work, It does seem to work for the 2.4" lcd though, so looks like there is some work to be done. Also graphicstest_featherwing doesn't compile in the examples, only the touch screen example. The 3.5 and 2.4 are both different.

I really appriciate you bringing it this far, I'm going to try to dive in when I get a chance, but this does seem to work for the 2.4, just not the bigger (and frankly for me, the nicer) 3.5.

I ported the library for the wrong device. I did test it, but on the 2.4". I can port the library for the 3.5 but I don’t have the 3.5" display so I can’t test it right now.

Which example didn’t compile and for what mesh device? I tested both of the graphicstest_featherwing examples on the Argon.

1 Like

graphicstest_featherwing.ino:16:26: Adafruit_GFX.h: No such file or directory

Sorry, my week has been slightly overwhelming. Here is what the 3.5" LCD looks like, so I was going to see about changing the resolution in the driver? The touch screen works, but you have to click on the edge of the color to choose it - but like I said, it kinda works - which is, a great direction!

I ordered the 3.5" touchscreen FeatherWing and will port the driver shortly.

There is now support for both the 2.4" TFT FeatherWing:

And also the 3.5" TFT FeatherWing:

You should use the libraries above, the previous library has been deprecated, as it doesn’t scale to multiple display sizes.

1 Like