Low power ULP C6 PCB

This was a great idea from my friend Larry Bank. But what is the ULP and how can we benefit from it?
In Espressif own words:

The Ultra Low Power coprocessor is a RISC-V 32-bit CPU which is designed to perform measurements using the ADC, temperature sensor, and external I2C sensors, while the main processors are in Deep-sleep mode.

And what are the possibilities to use this small ULP processor while the rest of main CPU sleeps using the smallest possible power consumption?

  • The ULP of the ESP32-C6 has 16K of RTC RAM to hold the code and data. It cannot access the rest of the ESP32. (In ESP32-S3 ULP has only 8 Kb of RTC RAM)
  • With compressed fonts and compressed graphics, the ULP can draw nice looking images without needing a local framebuffer
  • The ULP can wake up and sleep independently from the main CPU (held in deep sleep) and has also the power to wake up the main ESP32 CPU
  • The ULP of the C6 can access GPIO 0-7, so it must bit bang SPI on those pins

With this points in mind the challenge was to design a hardware PCB that can be fabricated using JLCPCB assembly service

Like most of my other projects this PCB is hosted in open-source basis on Github letting other people see it, modify it and give feedback or propose changes. If you are interested to check it out the repository is in this address:
https://github.com/martinberlin/H-C6-ulp

A small preview before sending it to fabrication:

The idea is to provide:

  • Access for SPI main display IOs and RTC on the low pins: 0 – 7
  • A super low consumption boost converter: SGM6029CYG (Schematics below)
    Sadly this part is possible to get assembled in JLCPCB only using Standard placement that increases the costs (But is the only way to solder this)
  • 3 optional buttons IO 18,19 and 20 (pulled high, connecting to GND on press)
  • Low consumption and super precise RTC: RV-3032 (from Micro Crystal AG)
  • ESP32-C6 with a small 3D Antenna, proved to work in another PCBs
  • 24 pin connector for all those SPI displays sold by many providers
  • QWIIC I2C connector so you can add optional sensors
  • Programming and battery charging using USB-C
  • Many months of epaper updates and reading sensors using a very small LiPo battery. Ideal for small gadgets that need to be very low power.

We are really thankful to Larry Bank and our hardware partners JLCPCB to help us pushing this idea. Ending up this post with some references and links:

https://github.com/bitbank2/bb_epaper The library to use with this PCB. Check the Wiki for more information

We kindly ask you to give feedback or comment in this blog post if you find any errors or you have a cool idea to use this PCB in one of your projects.

If you like our work and publications there is a chance you like our PCB products. Please visit our Tindie store and check if there is something that can inspire you for your next projects.