Přeskočit na obsah

First connection

The powered device will automatically create a WiFi Access Point at 2.4GHz (LED on), which you connect to with your mobile phone (LED off). In the mobile WiFi settings in the network list you will see the device „pyramidak“.

Once connected, open a website with the address

In the WIFI menu, set your 2.4GHz WiFi SSID and PASSWORD. RETURN back and select RESTART. The device will reboot and connect to your WiFi network. If the connection is not successful till 10 seconds, press the physical button on logic unit WeMos D1 Mini and the WiFi Access Point will be available again.

A successful connection deactivates the WiFi Access Point after a reboot. If the Access Point is needed, set NEXT START 0-Access Point.

WIFI SWITCH can be used to force an Access Point if you lose the ability to get into the settings. Also, the switch can be used to turn off WiFi if the device is operating autonomously and you don’t want to broadcast.

Device connected

Once connected to your WiFi network, you need to find the IP address of the device assigned by your router. So use router web service to get the IP address from the list of wireless clients.

Enter the address in your web browser and you can conveniently continue with the DEVICE setup.


In the DEVICE NAME setting, choose a device name without special characters and use dashes instead of spaces.

In the DEVICE PURPOSE setting, set the device to behave as his purpose. Options 1-4 will always display two buttons for the switches.

1-switch and 3-light option will ensure the switches acts like toggle switch, only one switch is always on and the other off.

2-switches and 4-lights option sets the operation of the switches separately.

Use 3-light and 4-lights if the device can support dimming.

If the device is not used for switching, choose 5-digit potentiometer, where the switching pins serve the potentiometer, or 6-traffic lights to control three coloured LEDs.

1-switch, 2-two switches, 3-light, 4-two lights, 5-digital potentiometer, 6-traffic lights, 7-sensors only, 8-six switches, 9-motor

The newly configured device will behave differently in communication after Restart. Now go to the MQTT settings.

MQTT communication

In BROKER enter the IP address of the device on which the broker is running.

Login USER and PASSWORD to the broker.

Return back to the main menu and it’s time to Restart the device to activate communication according to the device purpose.

Manual how to connect the device to the central System.


Firmware can support up to three sensors. A device with two sensor ports has one port for ANALOG SENSOR and the other port for DIGITAL SENSOR. DIGITAL SENSOR switches the first switch and DIGITAL2 SENSOR switches the second switch.

ANALOG CONTROL determines the switch that switches the analog sensor: 0-none, 1-first switch, 2-second switch, 3-both switches

NO = normally open with voltage logic state HIGH and NC = normally closed without voltage logic state LOW. NO/NC indicates the voltage state of the conductor when the sensor is inactivated.

ON switch turns ON when the sensor is ON, ON/OFF switch turns ON or OFF according to the sensor state, TOGGLE switches the switch state when the sensor is ON.

ANALOG SENSOR options: 0-none, switch 1-NO ON, 2-NO ON/OFF, 3-NO TOGGLE, 4-NC ON, 5-NC ON/OFF, 6-NC TOGGLE, 7-potentiometer 1K, lightmeter 8-low, 9-high, 10-soundmeter KY-037, 11-current ACS712-5A

DIGITAL SENSOR options: 0-none, switch 1-NO ON, 2-NO ON/OFF, 3-NO TOGGLE, 4-NC ON, 5-NC ON/OFF, 6-NC TOGGLE, thermometer 7-DHT11, 8-DHT22, 9-DS18B20

DIGITAL2 SENSOR options: 0-none, switch 1-NO ON, 2-NO ON/OFF, 3-NO TOGGLE, 4-NC ON, 5-NC ON/OFF, 6-NC TOGGLE


START STATE 0-on/1-off switch state after device restart.

AUTO OFF counts down the time after which the switch turns off. The values of the time units are added together. 0 and 255 is an inactive countdown.

IGNORE SENSORS you can select the time 1-sun above horizon or 2-sun below horizon, when the switching sensor will be ignored, i.e. for example it will not light up during the day.

LIGHT EFFECT 1-light on/off gradually, 2-more slowly, 3-like dawn/dusk, 4-blinker

Extra LED lights

If the device has extra LED lights or extra LED lights can be connected to the device, you can determine their brightness and operation based on the status of switches or sensors.

LED STATE 0-on when switch on, 1-on when switch off, 2-on when sensor on, 3-on when sensor off like external switch as sensor.

LED BRIGHTNESS value is limited to 1.8V (177) so that even the red LED light survives.

Matrix Display

For MAX7219 + PAROLA  I finally made the firmware stand-alone. In the device settings, you choose either 2-mini display = 1x max7219 or device 1-parola, and then in display setting you choose number of rows and the number of columns (the number of individual pieces of display squares).

The firmware supports ambient light sensors, i.e. automatic display brightness adjustment, as well as reading thermistors and displaying the temperature on the display.

The main thing is MQTT support topic: „devicename/text/command“ payload: „text|LEFT“ (effects: LEFT/MESH/BLINDS/WIPE/SLICE).


You will be asked if you really want to reset all settings. CONFIRM will clear the memory.

Flash firmware

Install the USB driver CH34x for Windows. Connect the WeMos D1 Mini logical drive to USB. Download the program ESP8266Flasher.exe. Start and on the Config tab select the path to the firmware file pyramidak_firmware.bin

On the Operation tab, click Flash.

After writing, restart the WeMos D1 Mini with the physical button. A WiFi Access Point is automatically created – further procedure on the WIFI tab.

Update firmware

By setting the local UPDATE SERVER address, the server is then automatically contacted to see if it has a new version.

If a different version is found, the UPDATE button is made available. You can update the device, but also start updating all devices at once using MQTT via the central System.

Create Update Server

You can easily create an update server at home on your computer.

(If you already have it, download the new UpdateServer2 for the new firmware file name. If you have an older firmware that does not find the pyramidak_switch.bin file, rename the pyramidak_switch.bin file to pyramidak_firmware.bin, so that the update can take place. Further updates will now look for the pyramidak_switch.bin file.)

  1. Download and install the free program Node.js
  2. Download the prepared code UpdateServer2.zip for Node.js. Extract the zip file to an easily accessible local folder, e.g. C:\Users\“user“\Documents
  3. After unpacking, there will be a folder C:Users\“user\“Documents\UpdateServer\firmware, where you unpack the firmware files.
  4. In the UpdateServer folder run start_x64.bat or start_x86.bat that will open a command prompt with Node. Install the server libraries with the command: npm install express –save-dev
  5. After that, you just always start the UpdateServer with the command: node index.js

In square brackets you have the address of your update server, which you set in each pyramidak device to Firmware/UPDATE SERVER.

You can collaborate or continue developing this firmware using GitHub. You can find the links below for each firmware version.

How to get firmware

If you do the hardware yourself, here is the latest firmware. Please don’t forget to donate to its development.

VersionDateWhat is new
3.0.411.11.2023motor speed multiplier
3.0.328.10.2023option keep motor powered when stopped
3.0.2AC712 update temperature correction setting improvement
2.9.9wifi sleep mode fixed
2.9.8motor speed and control improvement
2.9.724.09.2023switch on by current sensor
2.9.618.09.2023light sensor improved
2.9.5moister sensor support
2.9.414.09.2023option ignore sensor always
2.9.312.09.2023own name of AP ssid short (ms) digital logic sensor state change
2.9.1mqtt topics updated display removed
2.8.912.06.2023mqtt command update on/off option
2.8.8mqtt for motor device
2.8.7web lock security
2.8.6mqtt improvement
2.8.5own class WiFi
2.8.4update class semafor
2.8.3update class termistor
2.8.2switch state trigger fix
2.8.1semafor fix, web with ampere fix
2.8.0class memory, class traffic lights
2.7.9update change pyramidak_switch.bin
2.7.8class relays, class lighteffect
2.7.7class potentiomter, class soundmeter
2.7.6class termistors, class memory
2.7.5class motor, class ampere
2.7.4motor sensor support
2.7.3device motor temperature and humidity correction WiFi AP first log in
2.6.917.04.2023new device: 6 switches
2.6.815.04.2023sensor thermometer auto shown on matrix display
2.6.705.04.2023added mass update via web server
VersionDateWhat is new
1.1.618.10.2023float temperature correction
1.1.511.10.2023stop flickering under dim light
1.1.4wifi sleep mode fixed
1.1.330.09.2023restart update fix update fix
1.1.1mqtt topics updated brightness fixed
1.0.918.06.2023one time text effect
1.0.8display+thermistor fixed
1.0.7thermistors suppport
1.0.6ambient light support
1.0.5device mini display
1.0.4text effects
1.0.3two rows display
1.0.2one row display
1.0.1ready to start
VersionDateWhat is new
1.3.818.10.2023float temperature correction
1.3.708.10.2023fixed termistor with logic sensor
1.3.6wifi sleep mode fixed
1.3.502.10.2023Smoggie-PM device support
1.3.4TEMT6000 output adjusted
1.3.3raindrops support
1.3.2MICS5524 tvoc adjusted
1.3.1anemometer support update fix
1.2.9ambient light sensor adjusted
1.2.813.08.2023external thermistor via mqtt as other sensor
1.2.701.08.2023thermistor in digital sensor port as exra device
1.2.617.07.2023extra index setting
1.2.515.07.2023quality index fixed
1.2.410.07.2023TVOC index changed
1.2.3thermistors asssesment changed
1.2.2air quality assessment adjustments quality sensor
1.2.0sea level pressure
1.1.9BME680 combined sensor
1.1.8BMx280 temperature, pressure, humidity sensor
1.1.7light sensor activation fix
1.1.618.06.2023MICS5524 tvoc sensor
1.1.5TEMT6000 lightmeter
1.1.412.06.2023mqtt command update on/off option
1.1.3VEML7700 ambient light sensor
1.1.2SHT40 temperature and humidity sensor
1.1.1access lock to firmware setting
1.1.0own wifi class
1.0.9own mqtt class
1.0.8logic level digital sensor
1.0.7external termistor support
1.0.6temp and humid corrections
1.0.5SGP30 tvoc sensor
1.0.4quality sensor
1.0.3SCD30 co2, temperature and humidity sensor
1.0.2SPS30 particles sensor
1.0.1ready to start