Always On, Low Power Digital Assistant

An always-on digital assistant that fits on a desk/nightstand/mirror/wall/fridge. Weather, alarm, timer, calendar, habit tracker, to-do list

Similar projects worth following
I'm tracking the build of a low power hackable display. The goal is to build an always on display that can be powered for 1 year (with typical use) before replacing batteries or recharging. The display should be able to quickly provide relevant information (weather, timer, alarm, calendar, todo lists, habit tracker, etc). Think of it as a mix of a between a Dak Board, an Adafruit Magtag, an Alexa-enabled display. I've been toying around with the idea for the last 6 months, and decided to post my progress - from ideation to (fingers crossed) manufacture.

(as of 3/19/2021)

I'm in the process of building a low-power, always on smart display. I wanted something that I could easily affix to a wall or mirror, or put on a nightstand (which means it has to be battery powered).

An "always on" display was important because I wanted to get key information (weather, time, remaining time on a timer, upcoming meetings) at a glance, with minimal "clicks".

Finally, I wanted to make sure my project was (a) manufacturable (b) easily hackable and (c) open-source.

I'm just finishing the breadboarding phase, and am moving to a "looks like" and "acts like" prototype: I've got 3 boards from OshPark waiting for assembly, and I've got a GlowForge and Prusa Printer waiting for designs.

So far, the major components in my BOM include:

  • ESP32s2 W-Rover (Espressif)
  • 2.7 in Memory Display (Sharp)
  • RV-3028 Real Time Clock (Micro Crystal)
  • AP3602AKTR Charge Pump (Diodes Inc) - for the Memory Display
  • LDL212PV33R Linear Voltage Regulator (STMicroelectrinics)
  • CMI-1295IC-0385T Surface Mount Buzzer (CUI)

I've yet to test the actual deep sleep current - the goal is to get under 50uA on deep sleep. 

I'm using Arduino code for development. So far, I've coded the following functions:

  • Alarm
  • Timer
  • Weather (Current, Daily, Hourly)
  • Habit Tracker/Calendar

Here's a quick video of the alarm functionality:


Update as of 7/23

I've made quite a bit of progress over the last month, and finally have an assembled and working PCB. There are still problems.... but it's close to being ready for "primetime"!

  • Next iteration of the Display with Touch Pads

    Darian Johnson4 days ago 0 comments

    I got a great suggestion about switching the physical buttons to touchpad, and finally got the PCBs a few weeks ago... they look beautiful. Now to assemble them!

  • Habit Calendar

    Darian Johnson06/08/2021 at 04:37 0 comments

    Slow but steady progress... wrote some code for a Habit Calendar. I'm still not happy with the number of clicks needed to navigate. I might need to consider capacitive touch (for a better user experience).

  • Choosing a Microcontroller

    Darian Johnson05/19/2021 at 02:38 0 comments

    Using an ESP device was a no-brainer for my design, as the ESP family of microcontrollers come with wifi (without a secondary chip). 

    An ESP8266 wasn't an option, given the lack of pins and the security gaps. So, that left me with the ESP32 and the ESP32-S2. Both have plenty of IO and operate at low power. Cost is roughly the same as well.

    I ultimately decided on the ESP32-S2 for a few reasons:

    1. Native USB - which means no USB to Serial chip is needed for programing
    2. Ability to run Circuit Python (checking another box in the "hacker friendly" category)
    3. Lower power consumption during wake and wifi usage
    4. Slightly lower cost

    Running BOM (@250 units)

    ComponentFunctionDeep Sleep (uA)Costs (USD)
    Sharp Memory Display (LS027B7DH01A)Display10-35$20.00
    ESP32-S2 WROVERuC20$2.40

  • Trade offs to get to low power: The Display

    Darian Johnson03/20/2021 at 05:19 0 comments

    The largest power draws on an always on smart display are:

    1. the display
    2. the microcontroller 
    3. the internet connection method

    This Log entry focuses on the display

    Adafruit's breakout for the Sharp 2.7 in Memory Display

    Given the desire for low power, TFT displays were out. The backlights would drain any battery in a matter of days.

    OLED displays are better (from a power consumption perspective), but they still require 20 mA of power.... fine for a periodic display, but no good for what I wanted.

    After looking around, there were really only two viable options

    1. a eINK display
    2. a Sharp Memory Display

    E-Ink is all the rage these days. They can retain their screen image without any power (ultimate low power) and they aren't too expensive... but, there's one big drawback: the process of updating the screen - which can take 1-3 seconds and is somewhat jarring (here's a great video on the process). The sequence wouldn't allow a user to quickly toggle between screens, so eInk was a no-go.

    That left the Sharp Memory Display as my only option. Sharp Displays are low power (the 2.7in version only requires 10-35 uA). They look as sharp as an OLED (without the current burden). They are relatively easy to use (SPI).

    The drawback: they are  just plain ol' expensive... $20/each to purchase 250 (per Digikey).

    Running BOM (@250 units)

    ComponentFunctionDeep Sleep (uA)Costs (USD)
    Sharp Memory Display (LS027B7DH01A)Display10-35$20.00

  • Initial List of Required Functions

    Darian Johnson03/20/2021 at 01:12 0 comments

    In software systems design, we typically split requirements into two camps:

    • Functional requirements - what a system should do ("display the current weather")
    • Non-Functional requirements - how a system should perform ("data should be encrypted on transmit")

    There is sometimes debate on what is Functional vs Non-Functional.... so I didn't bother categorizing my requirements. That being said, I want to be sure that my requirements were true requirements and not design decisions. For example, I need to be able to connect to the internet to get periodic weather updates, but that doesn't automatically mean that Wifi is a requirement.

    Anyway, here's my initial list of requirements

    Must Haves Functions

    • Alarm
    • Timer
    • Calendar
    • Habit Tracker
    • Weather
    • To Do List

    Nice to Have Functions:

    • Heath tracking
    • To Do List
    • Shopping List
    • News

    Stretch Goals

    • Alexa integration
    • Multi-user
    • Music control

    In addition, there were a few non functional requirements that I captured:

    • Easily hackable
    • Open Source
    • Low Power (go 9-12 months between replacement or recharge of batteries)

  • Why Build a Smart Display When There Are So Many...

    Darian Johnson03/20/2021 at 00:48 0 comments

    I'll admit it: I'm lazy. I appreciate hard work... but I don't want to work hard when I don't have to (which is why I don't like eating crawfish... but that's another story). 

    More simply put, I want information as quickly as possible with as little effort as possible. Let me explain:

    When I wake-up, I usually like to understand the weather before I get dressed. To find the end of day temperature, I have to

    1. Find my phone
    2. Unlock it (either with facial recognition or a passcode)
    3. Find the "weather" button in a sea of icons
    4. Click the button
    5. Scroll to find the weather at the end of the day

    That's 15 seconds of work for 2 seconds of reading.

    And through I love my Alexa devices (I have 10+ on my home), they aren't much better; it's a 20 second exchange to ask for the weather and have Alexa respond.

    What I wanted was a device, centrally located, where I could, with a simple click, get key information (weather, calendar, etc.). 

    So, I started looking into existing devices and found that nothing fit exactly what I was looking for.

    The DakBoard is a great device, but it's not battery powered... which would restrict it's locations (I couldn't attach it to a bathroom mirror or a fridge door).

    Adafruit's MagTag is another great alternative... and was the inspiration for my own design. My only issue with MagTag was the refresh cycle for the eInk display... which would limit the ability to quickly toggle between screens.

    Finally, I looked at standard displays on Amazon... and I felt that they weren't as extensible as I wanted. 

    So, that lead me to building my own... but before I could start, I needed to understand what the display would do.

  • Yes, it's another ESP32 Display....

    Darian Johnson03/20/2021 at 00:19 0 comments

    "Not another display!!!!"

    Wait - just hear me out.

    I've been a practicing "maker" for the last 5 years. I don't make a lot of projects - however, the ones I make are pretty feature-rich. I've built some cool things like an automated cat feedera smart candle, and a compost making assistant.

    However, the items that always get the most comments/likes/views are my displays. I made an Alexa-enabled smart display in 2015. Last year (2020), I made a Star Trek display. So, when I decided to make something that could possibly be manufactured and sold, a display made sense.

    I'm not a hardware manufacturer, but I've worked as a technology consultant for the last 20+ years, so I decided to tackle this project like I would handle a large software implementation, which means:

    • Understand the market (for price comparison, market gaps, and saturation)
    • Start first with functional and non-functional requirements
    • K.I.S.S. Design ("Keep It Simple, Stupid")
    • Understand your buyer to keep manufacture price in line with expectations 
    • Fail fast (learn as much as you can, with as little cost as possible, as fast as you can)
    • Get real feedback from potential customers/end-users
    • And finally - tell people about it ("If you built it, they will come" only works in the movies).

    So, we'll see how things go!

View all 7 project logs

Enjoy this project?



Dan Maloney wrote 03/22/2021 at 18:23 point

Funny, I was in Kohl's last night with my wife looking at all the LCD price tags they have on the shelves and thinking that they'd probably be handy for just this sort of thing.

  Are you sure? yes | no

marazm wrote 03/21/2021 at 16:00 point


lora communicator

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates