Extra IO - ProMini Extender¶
.
Plugin details¶
Type: Extra IO
Name: ProMini Extender
Status: NORMAL
GitHub: P011_PME.ino
Maintainer: .
Used libraries: .
Supported hardware¶
.
This plugin supports the Pro Mini Extender, that’s a software solution installed on an Arduino Nano, providing 5 available analog input/output pins and 14 digital input/output pins.
The Pro Mini Extender software has to be manually installed on the Arduino Nano (or a Chinese clone), using the MiniProExtender
software project from this ESPEasySlaves repository via the Arduino IDE.
After installing the software on the Arduino Nano, the simplest solution is to power the PME with 3.3V, even if it’s specified for 5V, so no level converter is needed for the I2C connection with the ESP, that only allows for 3.3V signal levels. The 3.3V power has to be connected to the 5V pin on the Arduino Nano, not on the 3.3V pin, as that’s a low-power output-only pin!
NB: This software can also be installed on other Arduino models, that support I2C, Analog and Digital pins, but this hasn’t been actively tested. Depending on the available IO pins, some of the features may not match with the Arduino Nano.
2024-08-13: This plugin is excluded from ESP8266 1M builds for size reasons. It can still be used for Custom builds and is normally available in other builds.
Device Configuration¶

Name A unique name should be entered here.
Enabled The device can be disabled or enabled. When not enabled the device should not use any resources.
Sensor¶
Port Select the port (pin) of the Pro Mini Extender that is addressed by this task. For a Digital or Input (Switch) the range is 0..13, for an Analog input, the available pins are 0..3 and 6..7, as A4 and A5 are the (fixed) I2C pins of the Arduino Nano.
I2C Options¶
The available settings here depend on the build used. At least the Force Slow I2C speed option is available, but selections for the I2C Multiplexer can also be shown. For details see the Hardware page
Device Settings¶
Port Type:

Digital: An On/Off Input/Output type of port, every Interval the pin is read and the state is made available in the Value field.
Analog: Read the current analog value of the port.
Input (switch): Act like an input switch, the pin is read every 20 msec, and if the state changes, the new state is reported as an event, with the new value. The Interval is ignored when this Port Type is selected.
Data Acquisition¶
This group of settings are standard available configuration items.
Single event with all values: When this setting is enabled, all available values will be sent in a single event
<TaskName>#All
, with all values in order as arguments to the event.Show derived values: When checked, the Devices overview page, and the
/json
endpoint (used for updating the Devices overview page) will include any Derived values as defined. See theTaskValueSetDerived
andTaskValueSetPresentation
commands.Event & Log derived values: When checked, the Derived values will be generated as Events, to be handled in Rules, and sent to logging devices like the Syslog server and/or SD-card logging.
Send derived values: When checked, the Derived values will be sent to any enabled Controllers that support extra values like MQTT and HTTP/string value controllers.
(The derived values options are only available if String variables feature is included in the build.)
Send to Controller: Select the Controller(s) to send the Values to, either on a
TaskRun
command applied to the task, or on an Interval time action.
Send to Controller is only visible when one or more Controllers are configured.
Interval By default, Interval will be set to 60 sec. It is the frequency used to read sensor values and send these to any Controllers configured for this device.
Values¶
The single Value available holds the last digital, analog or input (switch) state value.
Commands available¶
Command |
Extra information |
---|---|
|
Switch the pin to either low or high level output. |
|
Set the Analog pin (0..7) to the PWM level, where 0 = 0% and 255 = 100% of the VCC voltage the PME is running at. |
|
Switch the pin to either low or high level output, and after the duration has passed, return to the previous state. |
|
Switch the pin to either low or high level output, and after the duration (seconds!) has passed, return to the previous state. |
|
Report the current state/value for the pin selected. |
Get Config Values¶
Get Config Values retrieves values or settings from the sensor or plugin, and can be used in Rules, Display plugins, Formula’s etc. The square brackets are part of the variable. Replace <taskname>
by the Name of the task.
Config value |
Information |
---|---|
|
Returns the current status (0/1) from the requested Digital port (pin) of the Pro Mini Extender. |
|
Returns the current value (0..1023) at the requested Analog port (pin) of the Pro Mini Extender. Port A4 and A5 should be avoided, as that’s occupied by the I2C connection at the PME. There is no check in the code to block those pins! |
Change log¶
Changed in version 2.0: …
added 2024-03: Add Input (switch) option.
added Major overhaul for 2.0 release.
Added in version 1.0: …
added Initial release version.