Open gigawatts opened 1 year ago
I asked the Soldered Electronics Inkplate support folks about the hardware differences, here is their reply:
yes, there is a difference in the hardware and pin connections. See this link for some useful info - the main difference is the GPIO expanders: https://inkplate.readthedocs.io/en/latest/arduino.html?highlight=mcp#io-expander-functions
There would have to be some modifications in the code for it to run on 'Soldered' variants of the product. They have to do with the GPIO expander and how the driver communicates with the ePaper via the GPIO expander - this is also one of the reasons used a different board definition.
I just had a look at that repository expecting our official version of the Inkplate library to be included somewhere (searched for #include "inkplate.h") but I can't seem to find that, so this user wrote their own driver for the ePaper and just used our hardware. So, it seems to me you're gonna have to see with them is this a feature which they can implement.
I have done this adaptation from MCP to PCAL for a few boards in Arduino within our native drivers and in micropython and didn't have too many problems. My best advice would be to find any place where the GPIO expander is used to drive the screen and change the functions accordingly. Also, check the schematics for Soldered Inkplate 6PLUS in the hardware repository: https://github.com/SolderedElectronics/Soldered-Inkplate-6PLUS-hardware-design You can also use our arduino driver as a reference.
I may take a crack at porting this, but figured I would post their reply here, as you can likely adapt the changes much more efficiently than I can.
Edit: I see now after looking a bit closer that you use the ESP-IDF framework, and that their docs point to your Inkplate ESP-IDF library, but it looks like your library does not yet support the Soldered Electronics variant of Inkplates using the PCAL GPIO expander. Is that something that can be added to your library? I'll open up an Issue/Request over on that repo.
@turgu1 I'm attempting to port support for this PCAL GPIO expander in myself, but I can't find a combination of versions between any ESP-IDF-InkPlate library branches/versions, this repo's branches, and platformio/framework-espidf versions that compiles as is without a massive list of errors.
What combinations are supposed to work as is?
Hello, sorry for the delay to look at this issue as I’m very busy under contract.
I will look at your issue in the next days. I may generate a new version of the code, replacing de MCP with the PCAL. This is for the Inkplate 6Plus?
As I don’t have rhe hardware, you may have to be my tester!
Yeah, 6 Plus, from Soldered. Happy to test anything!
I bought my Inkplate specifically to use with your firmware, then was disappointed when I learned their hardware had changed and it was no longer compatible. I'm pretty comfortable with the Arduino framework, but have not worked with the Esp-Idf before.
@turgu1 any progress and anything I can help test?
Hello! Not yet I'm afraid. I'm porting it to the last version of the ESP-IDF and got some issues. Hope to have something soon. You will be the first to ear about it.
@gigawatts @turgu1 Has there been any update on this issue? I'm having the same issue and also bought this device just for this use case...
Hello, I’m still working under contract so the time I can take on this is very limited. As I didn’t touch this software for the last 2 years is also requesting more time to regain the insights of how things were done.
I found my issue with the last esp-idf release. I have a portion of the new PCAL driver completed (30%). Some changes in the use of the i/o port request some other changes to the code (enabling the SD card at boot time) and maybe other things as I need to check the changes between 6PLUS v1 and v2 schematics. Hope to complete a first cut in the next 2 or 3 weeks.
Sounds good, my offer still stands on any beta testing you need performed on hardware!
I'm also willing to beta test if you need another! I look forward to any progress.
I'm almost there. In both ESP-IDF-INKPLATE and EPUB-INKPLATE projects you will find a branch named 6plusv2-integration that contain the current updates done, required to support the PCAL6416 and the creation of the Inkplate 6Plusv2 app.
THIS IS NOT READY YET! Still remains some adjustments to the code on both side. Can't work on it for the next 2-3 days, but we are close to be able to compile and do some testing.
Before integrating these branches to the main one, I will have to test with the other MCP23017-based devices as the changes may have an impact on their stability.
So stay tuned!
Awesome! Looking forward to testing!
Great, I look forward to more updates and also hopefully some testing.
Some news: modifications completed at 99%, will update github tonight. Here are the issues I still have to resolve:
Thank you for the update! Is there anywhere I can kick you a donation / buy you a coffee for an awesome project and keeping it maintained?
Thanks for the offer. I never asked any money for this project and all other projects available in my account on GitHub. This is my way of returning to the developers’ community for everything that is made freely available on the net, that I was able to access for the last 40 years.
Some other news:
As always, thanks for the update!
Interesting, is the Flick the replacement for the battery powered 6 Plus? They seem to have similar specifications.
I don't know enough about the Flick yet. I understand that it is very close to the 6PLUS V2. It uses a different touch layer on top of the display and used the PCAL chip instead of the MCP as per the V2. I've seen some added filtration capacitors in the schematic. Still a lot of analysis to do...
BTW the PCAL driver is able to be compiled now. Remains to do a double check comparing my code with the Solderer's Arduino library.
Some news…
Any updates?
I can't get either the 2.0.0 or 2.0.1 release for the Inkplate 6 Plus to start. This is using the "Soldered" variant of the device (https://soldered.com/product/soldered-inkplate-6plus-with-enclosure-e-paper-display-with-touchscreen-copy/), I am not sure if that makes a difference.
Here is the boot sequence I get, followed by a reboot, over and over, with or without an SD card inserted.
I have tested that the SD card can be read from, with the MicroPython firmware and this example: https://github.com/SolderedElectronics/Inkplate-micropython/blob/master/Examples/Soldered_Inkplate6PLUS/exampleSd.py