Inkplate 6 Motion STM-board schematic and battery reading pins

Customer:

I’ve examined the schematics in your GIT repository, but I cannot find the schematic for the small board that holds the microcontroller and memory. I need this schematic to know which signals connect to which microcontroller pins. Specifically, I need to read the battery voltage, so I must know the pin name where the voltage is fed and the pin name for the MOS gate that controls the measurement circuit.

I also see there is a “charging” LED on the board. Does the microcontroller receive information about whether the battery is charging? I want to be able to wake the system periodically to check this status and recall the user to connect the charger when needed.

Originally submitted via the contact form on soldered.com on 20 January 2026. Migrated to the forum for community visibility.

Soldered Support:

The STM-board which holds the STM32 and memory is available in a different repository: GitHub - SolderedElectronics/Soldered-Inkplate-MOTION-STM-board-hardware-design: Hardware design, BOM, gerbers and 3D files for Soldered-Inkplate-MOTION-STM-board designed by Soldered Electronics. · GitHub

For measuring battery voltage, there is already a built-in function that returns the voltage value as a double data type, available here: Inkplate_Motion_Arduino_Library/src/boards/Inkplate6Motion/IP6MotionDriver.cpp at 50d877a286ddc45c02fb3fe00de979b9d84aa4c5 · SolderedElectronics/Inkplate_Motion_Arduino_Library · GitHub

Customer:

Can you explain the behavior of partialUpdate() when using setFullUpdateTreshold(70)?

If I keep drawing the same pattern repeatedly and call partialUpdate each time, there is no need to perform an update at all. Will the internal mechanism perform a full update every 70 partialUpdate calls? Or will it count one update if at least one pixel is different from the previous partialUpdate?

I intend to make a dashboard that in standby will only display the battery level to ensure it is being recharged. The battery level will change rarely, and I do not want to reduce the e-paper lifetime with unnecessary full updates.

Soldered Support:

partialUpdate will trigger every time it is called (unless it is blocked by the user or the fullUpdateTreshold was reached), regardless of whether the state of the framebuffer was changed.

The functionality you are looking for can be implemented by creating a boolean value inside the class called “hasFramebufferChanged”, which you can set to true in the drawPixel function (available here). This serves as a flag to see if anything has changed in the framebuffer. Then, in the partialUpdate function (available here), you can check if hasFramebufferChanged has been set to true; if it hasn’t, skip the partial update. At the end of the function, reset the flag to false.

Customer:

I’ve read your advice and it is quite straightforward, thank you.

The two functions you suggest altering are not virtual, so I cannot define a new class derived from Inkplate. The only way is to make my own version of Inkplate. Could you consider adding this feature to the genuine Inkplate class in the future?

Another question: the overview of the Inkplate 6 Motion states that the ESP32 handles wifi and bluetooth, but I cannot find any library functions for bluetooth. Where can I find this information? I would like to extend my dashboard project with music and/or voice messages in case of errors or action required.

Soldered Support:

I’ve considered adding the partial update check into the next library version, as it can definitely extend the panel lifetime. Unfortunately, you currently have to create your own version of the library with these changes.

Regarding Bluetooth, there appears to have been a mistake in the documentation. The Inkplate 6 MOTION device currently does not have Bluetooth support over the ESP32. It is technically possible to add this feature since the onboard ESP32 has the Bluetooth commands available, however I cannot guarantee when this will be implemented.

Customer:

Regarding the partial update feature, it may be available before the end of my project, or I can update the firmware later with the new library version.

Questions about the 3D printed case:

  1. I have downloaded the .dwg files and imported them into SketchUp. There appears to be a flaw in the upper left area of the bottom part. Is this a file corruption problem?
  2. I am considering ordering the case along with the board, but I need to run 10 wires out of the case for digital and analog I/O. Does the case have provisions for wires to pass through the walls?
  3. If I modify the drawing to make an opening for these wires, which material should I select for 3D printing to ensure tolerances are met, particularly regarding the clipping of the top and bottom together?

Attachment omitted in migration: DefautCAO.jpg

Soldered Support:

The original 3D files were tested by opening the provided .step files from the GitHub repository in Autodesk Fusion, and no issues or geometry flaws were detected. The problem may be related to the import or interpretation in SketchUp rather than file corruption.

The standard case design does not include dedicated openings for external wiring. However, such openings can be added upon request. Please provide a sketch or description indicating the preferred location and size of the required openings.

If you choose to modify the design yourself, both PLA and PETG are suitable materials for 3D printing and should provide sufficient dimensional accuracy. As long as proper tolerances are maintained in the modified design, the clipping mechanism between the top and bottom parts should function correctly.

Customer:

  1. I am considering gluing a 3D printed part to your standard case. Which material do you use so I can ensure it can be glued (for example, polypropylene cannot be glued)?
  2. Can you tell me the weight of the board, the case, and the battery?
  3. I am trying to determine the power drawn by the board during operation. You published the sleep mode quiescent power, but I would like to know how long the board can operate on the battery. The software I am developing uses wifi with 2 frames per second both ways and 2 partial screen updates per second.

Soldered Support:

  1. We use PLA for printing our enclosures.
  2. An Inkplate device with a battery and enclosure weighs around 230g.
  3. Could you write an Arduino sketch we can use to measure the current draw for your specific application?

Customer:

I am preparing to test my Inkplate 6 Motion module. Following the quick-start guide at Welcome | Soldered Documentation, I have STM32Cube already installed and I am now trying to install the CH340 driver. When I click on the link https://soldered.com/productdata/2023/02/CH34x_Install_Windows_v3_4.zip, I get an Error 404 Not found page. Can you please fix this link or send me the required zip file?

Soldered Support:

The CH34x driver is attached. Some links were broken when we migrated to the new website.

Attachment omitted in migration: CH34x_Install_Windows_v3_4.zip