rstrouse / ESPSomfy-RTS

A controller for Somfy RTS shades and blinds
The Unlicense
429 stars 32 forks source link

Kudos and some newcomer comments and questions #331

Closed alka79 closed 2 months ago

alka79 commented 2 months ago

Hello, First let me give you KUDOS on the job done. What a project ! You set the bar very high :) I recently moved to HomeAssistant and found your project that way. I wish I found it earlier. It is polished in every aspect and fully documented. What a pleasure.

I had it all setup in a few hours and it just works. I use v2.4.1 with a Wemos ESP32 S2 mini board and E07-M1101D transceiver board with it's small duck antenna. The struggling part was the tuning of the radio. I never had any issue with any motor receiving from my remotes. The E07 transceiver at first did not receive properly one of my remotes, I could not figure out why this one. I tweaked the radio settings until it worked. I had to increase Rx bandwidth up to 117k. (no rational approach here, just try and test until it worked)

Here are a few comments/questions in no particular order while it is still fresh in my memory:

Did I mention how great your project is ? thank you again for sharing such an awesome work with us Al

rstrouse commented 2 months ago

The doc mentions a few times EPS32S, but you really mean ESP32 S2. You had me questioning about the ESP32 chip range ;) The .bin to download is doubtless.

The original ESP32 devkit boards were labeled ESP32S for the D0WD chip series with dual core. It appears that designation has been dropped with the advent of the C and S series chips. I believe the original intent was to refer to it as S1,S2, and S3 but that requires truth serum and the guy in charge of the name to be tied to a chair. I will edit the docs to reflect what the cool kids are calling it nowadays.

This ESP32 board has usable pins nicely aligned, I was hoping for a simple cabling between the two boards and use two 4pin headers cables. Unfortunately, when trying to assign the Tx pin, the radio-buttons to select GPIOs 15 and 16 were missing. I can understand for pin15 as it is attached to the embedded led on this board, but why forbid the usage of 16 ? It is not a big deal as it is pretty easy to wire differently.

I took the pin assignment list from the reference for the S2 I had in front of me and its reference tagged 15 and 16 to PSRAM implementations. I will remove that restriction for the next release.

It seems that ESPSomfyRTS does not use the embedded led. Traditionally, the led blinks during setup and if wifi is lost. It gives visual feedback in case of trouble.

Unfortunately the IO reference differs between chip series and manufacturers. There is no standard which made that original feature to be dropped. The initial releases used this for when the device dropped back into AP mode in that it would flash slowly. It would also flash wen transmitting.

I sometimes open two web UIs, one on a pc and one on a smartphone. I noticed that the radio log was only updated in one of them, on the pc. Browser refresh did not help. Is that a limitation of the web server used ?

No limitation but I'll bet you were in the home tab when not receiving RX logs. ESPSomfy RTS only sends these logs over the socket if the endpoint asks for them. This limits the traffic to external systems that are subscribing to the socket and do not need that extra information. On the web app if you are in the gears menu it subscribes to the log requests and when you leave it unsubscribes on the socket.

On the System>Firmware tab, there is Firmware v2.4.1 and Application v2.4.1. What is the Application ?

ESPSomfy RTS is created in two parts. These include the server portions embedded in the firmware and a filesystem to manage the files related to the application and the configuration. These must be updated separately as they represent two different partitions of the same device. Among the reasons for the two versions is to ensure that both partitions get updated after a software update.

By curiosity, in the suggested radio settings, is there a reason why you use weired numbers : 99.97 or 47.6. Why not round numbers?

These are the default numbers for the CC1101 chip series when transmitting over 433mhz. If you are using a tuner and an SDR you can get very precise with these numbers. If you don't have enough rabbit holes to explore do a google of the Ti Smart RF. The register and gain settings get pretty deep. I have boiled these down to the applicable settings for the chip for tuning. These settings can vary depending on the antenna and environment.

HA integration works eventhough I did not set anything in the MQTT tab. That seems strange to me. Did I miss something ?

Yes the HA integration does not use MQTT. MQTT, while it is great for some things is very inefficient. If you have no need for MQTT do not enable it. ESPSomfy RTS communicates over sockets to HA and does need not bear the pub/sub weight associated with MQTT. Other integration platforms do not have a socket interface so MQTT is their only option.

I can get into the MQTT benefits and warts of MQTT but that layer only exists for non-native comms.

I own plenty of old Somfy shutters that do not have the My function. I see the opportunity to bring that feature to them with ESPSomfy. I'll add my support to request MY simulation #290 with some additional thinking.

This is on the todo list.

I also miss voice control by Alexa. For this I will open a new topic to discuss what I have tried so far.

I don't use Alexa but this should be as simply as enabling the Alexa skill in HA and exposing the entity.

alka79 commented 2 months ago

Thanks a lot. That clarifies.

I'll look into HA Alexa integration and provide feedback, and will keep an eye on the 'virtual My" implementation :) Thanks again.

alka79 commented 2 months ago

Hi again, About groups. The doc says:

Groups do not have a defined position and cannot be controlled by setting the position. This is because the timings of each member can and will likely be different.

I created my first group today and noticed that when using the group commands, the position of each individual shutter in the group is properly updated. This came as a nice surprise as I did not expect it from reading the doc text. Does it mean you are close to allow setting a percentage target position to a Group ?

rstrouse commented 2 months ago

Does it mean you are close to allow setting a percentage target position to a Group ?

Yes at some point I plan on implementing a positioner on groups. There are a few other things that need to be done first though.