'Pulling BUSY line high allows SCK, CS, DC & MOSI signals to work
' BUT display still does NOT work.
wait 100 ms
'Main program
GLCDForeground=TFT_BLACKGLCDBackground=TFT_WHITEDo_Again:GLCD_Open_PageTransactionGLCDPrintStringLN("Great Cow BASIC")GLCDPrintStringLN("")GLCDPrintStringLN("Test of the e-Paper")GLCDPrintStringLN("")GLCDPrintStringLN("Aug. 2023")GLCD_Close_PageTransactionGLCDDisplayOffwait2sGLCDDisplayOnGLCDCLSGLCDDisplayoffGotoDo_AgainIcanseetheSPIsignalsonmyO'Scope BUT the display remains blank.AnyideaswhatI'm doing wrong?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Let us assume that the library works. I know it does.
Looking at GitHub there are four different displays. And, I have scanned the different versions of the GitHub code and the 2019 GCBASIC library is version 1 of the hardware. The initialisation is very different across the four different displays.
So, figure out which one you have. And, then, using the CPP file ( appropiate to your display ) change Init_EPD2in13D() and LoadLUTS_EPD2in13D() to suit. The LUTS data ( not need for version 4 of the display) is simply tables in GCBASIC.
Makes sense?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
I have this e-paper display:
https://www.seeedstudio.com/Grove-Triple-Color-E-Ink-Display-2-13-p-2889.html?queryID=7ea48faba49bb43929b744ee897a794d&objectID=2889&indexName=bazaar_retailer_products
This display uses a UART interface.
GCB supports a SPI interface.
Did I buy the wrong display or is there a way to make this work with GCB?
I think this board is total solution with a specific mcu controlling the display. So, yes, this is the wrong type.
Thanks for the fast response.
Does anyone have a link to an e-paper display that will work with GCB?
These are the part I have used - check with them if this part number includes the HAT and the e-Paper display
Small Display
212x104, 2.13inch flexible E-Ink display HAT for Raspberry Pi
SKU: 15084
Part Number: 2.13inch e-Paper HAT (D)
https://www.waveshare.com/2.13inch-e-paper-hat-d.htm
Thanks!
I now have the display Anobium mentioned above.
I'm using Great Cow BASIC (1.00.00 2023-05-31 (Windows 64 bit) : Build 1249) with an 18F4550.
I copied the below program from GCB Help:
;Chip Settings
#chip 18F4550,48
#config PLLDIV=1, CPUDIV=OSC1_PLL2, OSC=HSPLL_HS, LVP=OFF, MCLRE=ON
'Pin mappings for SPI - this GLCD driver supports Hardware SPI and Software SPI
#define GLCD_SCK portB.1
#define GLCD_CS portB.2
#define GLCD_DC portB.3
#define GLCD_RESET portB.4 .
#define GLCD_Busy portD.2
#define GLCD_DO portC.7
'Pulling BUSY line high allows SCK, CS, DC & MOSI signals to work
' BUT display still does NOT work.
wait 100 ms
'Main program
No idea. If the program is a demo program. Then, that is a good start.
Try using software SPI. comment out
#define EPD_HardwareSPI
Looking at your code are you not missing a GLCDDisplay On
After the Do_Again Label?
Also, slow that clock speed down for the purpose of testing.
Also, when using the hardwareSPI, slow the SPI frequency. Add
#define HWSPIMode MASTERSLOW
( this is shown in the Help :-) )Thanks!
I tried the above suggestions but the display still remains blank.
Any other suggestions?
This is probably a product version issue.
Let us assume that the library works. I know it does.
Looking at GitHub there are four different displays. And, I have scanned the different versions of the GitHub code and the 2019 GCBASIC library is version 1 of the hardware. The initialisation is very different across the four different displays.
So, figure out which one you have. And, then, using the CPP file ( appropiate to your display ) change Init_EPD2in13D() and LoadLUTS_EPD2in13D() to suit. The LUTS data ( not need for version 4 of the display) is simply tables in GCBASIC.
Makes sense?
Thanks!
I'll try this.