@ -73,7 +73,7 @@ This class is implementing a generic MCP23017 driver. It is instanciated in the
- as mcp_int (for all Inkplate devices)
- as mcp_ext (for the Inkplate-10, and Inkplate-6Plus).
Each class that uses the MCPs are independant from each other in terms of initialzing and accessing the MCP. This is the case for EInk, Battery, TouchKeys, Backlight. They all uses `Wire::enter()` and `Wire::leave()` to reserve access to the I2C bus.
Each class that uses the MCPs are independant from each other in terms of initialzing and accessing the MCP. This is the case for EInk, Battery, TouchKeys, TouchScreen, Frontlight. They all uses `Wire::enter()` and `Wire::leave()` to reserve access to the I2C bus.
## battery, touch_keys (.hpp, .cpp)
@ -81,7 +81,7 @@ Those classes implement basic access to the battery and touch keys state.
## system class renamed InkplatePlatform
This name reflect more what it is. This class will is currently under eavy changes.
This name reflect more what it is: the integration of all physical drivers for an Inkplate device.
## FrameBuffer classes
@ -89,4 +89,8 @@ A hierarchy of frame buffer classes has been added. These allow for flexible ada
## press_keys (.hpp, .cpp)
This class implements the Buttons Extension: 6 mechanical press buttons that replace the touch keys. To be used, at compile time, EXTENDED_CASE must be #defined. The `TouchKeys` class will then **not** be included.
This class implements the Buttons Extension: 6 mechanical press buttons that replace the touch keys. To be used, at compile time, EXTENDED_CASE must be #defined. The `TouchKeys` class will then **not** be included.
## Screen Rotation
All drivers implement physical screen coordinates. The rotation is the property of the graphical environment that sit on top of the drivers. As such, all rotation related methods have been moved outside of the driver classes.
Added support for `idf.py` development, as provided by tajnymag.
(April 27th, 2022)
Version 0.9.6:
- Added MCP presence detection. With chips shortage issues, some Inkplate devices (Inkplate-10, Inkplate-6PLUS) may have their second MCP chip missing. The `mcp_ext.is_present()` method can be used to check its availability. Log information messages are produced indicating if MCPs are detected as present or not.
Version 0.9.5:
- Corrected issue with PlatformIO Espressif32 version 3.3.0 (wifi_interface_t vs esp_interface_t)
- Added InkPlate-6PLUS support: Screen, Touch Screen, Front Light. `INKPLATE_6PLUS` must be defined to compile for this device. For the TouchScreen class, TouchPositions has been defined as an array of 2 entries to minimize the potential of bad methods parameters.
- Some code refactoring in drivers.
- I2C speed lowered to 100Khz instead of 1Mhz (Wire class). This to respect I2C hardware limitation related to the PullUp resistors in used with Inkplate devices.
- Added Inkplate::lightSleep() and Inkplate::deepSleep() methods, calling the InkplatePlatform class methods
- InkplatePlatform::light_sleep() and InkplatePlatform::deep_sleep() methods modified to get gpio number and level as parameters
- Inkplate::begin() method now allows for one parameter to enable/disable the SDCard initialization. Disabled by default.
- For the InkPlate-6PLUS, the Inkplate::begin() method takes a second paremeter: a handler function pointer to process touch_screen interrupts.
- Added RTC PCF85063 support.
(March 4, 2021)
@ -55,4 +77,4 @@ An InkPlate application requires some functionalities to be properly set up with
- Select `Prefer external RAM when allocating FATFS buffer`
- **Flash memory partitioning (optional)**: the file `partitions.csv` contains the table of partitions definition for the 4MB flash memory, required to support the largest applications size in an OTA context. The partitions OTA_0 and OTA_1 have been set to be 1.3MB in size. In the `platformio.ini` file, the line `board_build.partitions=...` is directing the use of these partitions configuration.