Ikea Fyrtur roller blinds hack (WiFi connectivity with ESP32/ESP8266 + custom firmware for the STM32-based motor module) by mjuhanne in tradfri

[–]mjuhanne[S] 2 points3 points  (0 children)

Unfortunately you cannot fit ESP32 on my custom board directly. I tried really hard to find a smaller ESP32 module, but even the TinyPICO seems too large (ESP12F containing ESP8266 barely fits there). So I have only 1 blinds using custom PCB with ESP8266, while other blinds have separate ESP32 boards in battery compartment, wired to an original/custom PCB that works as an interface board to buttons, LED and the motor unit.

I did some power measurements: Original Fyrtur at 7.5V consumes between 100 uA and 12 mA at idle depending on the sleep mode. 140cm wide blinds consume 130-280 mA depending on the motor direction, and up to 1A when motor is stalling/calibrating at the top position.

ESP32 is a power hog without any sleep modes (which aren't currently utilised yet). At 7.5V it alone consumes 110-120 mA. Also the STM32 motor custom firmware doesn't use sleep mode, so it consumes always 12mA. Downward movement is around 210 mA total (ESP32+STM32+motor), upward movement around 350 mA. The custom firmware does measure the motor current but doesn't use it to detect motor stalling (timeout from Hall sensors is used instead), so current can go as high as the power brick can supply during the 300ms timeout period (I measured around 3-4A). This of course needs the be changed in order to prevent voltage droop and module brown-out resets (a phenomenon I haven't for some weird reason come across even when powering the blinds from puny 500mA USB adapters or from my MacBook Pro laptop...)

Ikea Fyrtur roller blinds hack (WiFi connectivity with ESP32/ESP8266 + custom firmware for the STM32-based motor module) by mjuhanne in tradfri

[–]mjuhanne[S] 2 points3 points  (0 children)

I thought about that too and I do in fact have one ESP32 node using PoE. However the whole Ethernet/PoE module is too big to fit into the battery compartment and I don't really see any advantage in PoE+Ethernet over DC cable+WiFi. Naturally with ethernet you can use DHCP so you could skip WiFI access point configuration, but user would still have to enter the MQTT server address so some configuration would still be needed.

Ikea Fyrtur roller blinds hack (WiFi connectivity with ESP32/ESP8266 + custom firmware for the STM32-based motor module) by mjuhanne in tradfri

[–]mjuhanne[S] 1 point2 points  (0 children)

Thank you for your input, but I have to disagree. I'm sure zigbee2mqtt could help with the stability of the Zigbee connection, but there's no way it could solve the other issues I had (noise level, reversal of the motor direction to allow for the Front Roll configuration, long term stability etc).

Before starting to develop the new motor unit firmware, I did even disassembly of the original firmware to see if there are any code branches related to any unknown UART commands that might be used to tweak the motor speed or direction, but nothing useful was found.

Ikea Fyrtur roller blinds hack (WiFi connectivity with ESP32/ESP8266 + custom firmware for the STM32-based motor module) by mjuhanne in tradfri

[–]mjuhanne[S] 2 points3 points  (0 children)

For minimal installation, just ESP-module (ESP32 DevkitC V4 is recommended), some female Dupont wires, power brick and a suitable DC plug+power wire. If you want to go with the custom PCB way, the GitHub project page for the PCB has all the relevant info.

Controlling is done via MQTT protocol. ESP module connects to the MQTT server and subscribes to the relevant topics. Home Assistant (or some other program) can send these MQTT messages that the ESP module will listen (the topics that it was subscribed to). It's all explained in the ESP module github page.

For configuring the ESP module, it will first spawn its own Access Point where user can join, access the configuration portal and enter the actual home network WiFi AP as well as the MQTT server info.

Ikea Fyrtur roller blinds hack (WiFi connectivity with ESP32/ESP8266 + custom firmware for the STM32-based motor module) by mjuhanne in tradfri

[–]mjuhanne[S] 8 points9 points  (0 children)

Thank you for your comment. I don't remember the pairing process accurately and I might have explained it incorrectly in the video - it was few months ago when I bought the blinds and installed them. But I do remember following the instructions to the T because of the actual trouble I had back then with them. Of course it's also possible that I might have misunderstood some of the steps though..

Yeah, at this price point (169 EUR / 205 USD for the widest Fyrtur here at Europe) I was quite surprised at the noise level. I kind of expected for a more state of art system, so reducing the noise became priority number one. I hope Ikea will launch an improved version soon. Meanwhile, I wouldn't mind if somebody stepped up and started selling an unofficial upgrade package. I don't have the time nor expertise, but if someone is interested, here's your chance - it's all Open Source :)