Skip to content

SH1107 Featherwing consuming more power than expected when asleep #5799

@chrlie

Description

@chrlie

CircuitPython version

Adafruit CircuitPython 7.0.0 on 2021-09-20; Adafruit Feather nRF52840 Express with nRF52840

Code/REPL

import alarm
from alarm import exit_and_deep_sleep_until_alarms
from alarm.time import TimeAlarm
from board import I2C
from time import sleep, monotonic
from displayio import release_displays, I2CDisplay

# You'll need this lbirary
from adafruit_displayio_sh1107 import SH1107


# Board on + OLED on
release_displays()
display = I2CDisplay(I2C(), device_address=0x3C)
sh1107 = SH1107(display, width=128, height=64, rotation=0)

# Board on + OLED off
sh1107.sleep()

# Board off + OLED off
exit_and_deep_sleep_until_alarms(TimeAlarm(monotonic_time=monotonic() + 1_000_000))

Behavior

Expected behavior:
SH1107 sleep/low-power draws ~5μA.

Actual behavior:
Low-power draws ~5mA.

Description

No response

Additional information

This is my hardware setup:

  • Connect SCL SDA and GND from the Feather to the SH1107
  • Put a multimeter between 3V on the Feather and 3V on the SH1107
  • Put a bench power supply (or LiPo battery) into GND and BAT on the Feather
  • Put the multimeter in mA mode

The SH1107 featherwing supports a low-power (~5μA) mode, which can be enabled in the adafruit_displayio_sh1107 circuitpython library by calling SH1107.sleep. However running the code above, the SH1107 specifically is drawing around ~5mA after calling SH1107.sleep.

I've tried this with two different SH1107s and Feathers too.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions