Skip to main content
Device Type:relay
Electrical Standard:ukuseu
Board:esp32
Difficulty:Soldering required (4/5)

Shelly 1PM Mini Gen3

Generation 3 of Shelly Mini. With Powermeter, and Relay

Serial Pinout

PinColour
ResetBrown
3v3Red
RXBlue
TXYellow
BootSELPurple
GNDBlack

The UART Pinout is the same as other Shelly Plus Mini.

Shelly 1 Mini Gen3

GPIO Pinout

PinFunction
GPIO0LED
GPIO1Button
GPIO3NTC
GPIO5Relay
GPIO6BL0942 TX
GPIO7BL0942 RX
GPIO10Switch

Basic Configuration

esphome:
name: "sehlly-1pm-mini-gen3"
friendly_name: "Shelly 1PM Mini Gen3"

esp32:
board: esp32-c3-devkitm-1
flash_size: 8MB
framework:
type: esp-idf
version: recommended
sdkconfig_options:
COMPILER_OPTIMIZATION_SIZE: y

wifi:
ap:

logger:

api:

ota:

time:
- platform: homeassistant

captive_portal:

sensor:
- platform: ntc
sensor: temp_resistance_reading
name: "Temperature"
unit_of_measurement: "°C"
accuracy_decimals: 1
icon: "mdi:thermometer"
calibration:
b_constant: 3350
reference_resistance: 10kOhm
reference_temperature: 298.15K
- platform: resistance
id: temp_resistance_reading
sensor: temp_analog_reading
configuration: DOWNSTREAM
resistor: 10kOhm
- platform: adc
id: temp_analog_reading
pin: GPIO3
attenuation: 12db

- platform: bl0942
uart_id: uart_0
voltage:
name: "Voltage"
id: bvoltage
icon: mdi:alpha-v-circle-outline
device_class: voltage
current:
name: "Current"
id: bcurrent
icon: mdi:alpha-a-circle-outline
device_class: current
power:
name: "Power"
id: bpower
icon: mdi:transmission-tower
device_class: power
energy:
name: "Energy"
id: benergy
icon: mdi:lightning-bolt
device_class: energy
frequency:
name: "Frequency"
id: bfreq
accuracy_decimals: 2
icon: mdi:cosine-wave
device_class: frequency
update_interval: 5s

uart:
id: uart_0
tx_pin: GPIO6
rx_pin: GPIO7
baud_rate: 9600
stop_bits: 1

status_led:
pin:
number: 0
inverted: true

output:
- platform: gpio
id: "relay_output"
pin: 5

switch:
- platform: output
id: "relay"
name: "Relay"
output: "relay_output"

binary_sensor:
- platform: gpio
name: "Switch"
pin: 10
on_press:
then:
- switch.toggle: "relay"
filters:
- delayed_on_off: 50ms

- platform: gpio
name: "Button"
pin:
number: 1
inverted: yes
mode:
input: true
pullup: true