Soma Smart Shades 2

I know you don’t personally handle support much any more, but I just wanted to get back to you since the new 2.3.3 update resulted in the exact same issue of the Tilt not charging after new firmware was applied. I’d chalk this up to a random bug if it happened for one Tilt device, but it happened for all 3 (a 4th one is permanently connected to a power source so it remained at 100%).

All devices are the Tilt 2S and were updated from firmware 2.3.1 to 2.3.3. As you can see from the graph below, as soon as the 2.3.3 update was applied, the batteries rapidly discharged over the course of two days. Only once I used the Smart shades app to send a restart command to each shade, the shades started charging again (as indicated by the increase at the very end of the graph). The area where data is missing is due to a problem connecting to Soma Connect after a Home Assistant restart, so, you can disregard that.

The most concerning issue about the bug is the rate of discharge - even if no solar panel were connected, such a rapid discharge wouldn’t be experienced.

That is really weird. But did the restart fix it? If so I think it may be a bug in the DFU process itself as a restart is usually part of booting the new version anyway. Power consumption after DFU is not something we really test for right now but I will add this to our process for the future. We do test each new version for power consumption but we usually do that by just flashing the new version over SWD.

The rapid decrease in voltage is a bit troubling - where would the device dump all that power over such a short amount of time? The only thing I can think of now is maybe the motor drive system gets powered on somehow and not turned off as it should be.

We’ve been very focused on the new hardware version coming out soon so I don’t think there will be firmware updates for the motors any time soon. Connect will likely get more updates in the coming months as we integrate the new motors though. Hopefully that won’t cause this issue again.

Using the Smart Shades app and issuing a restart command for each Tilt 2S (via the troubleshooting section) did indeed fix it - As you can see, they have been charging via Solar since then (Although, I should charge them via mains and then switch back to solar since it’ll take a while to charge them back up to 100% via Solar only):

I am just as perplexed as you as to what the power was being dumped towards. I haven’t taken a look at what is returned by the API, but do the shades report their firmware version that could be added to the device info section of Home Assistant? If anything, if/when a restart command were to be/is added to the API, it would allow for using an automation to send a restart command to any shades that had their firmware bumped.

Is there any info available about the new hardware that is being worked on? Curious to see what new product is in the works!

I just found out that this is not the first time this issue has been brought to our attention. And it was already investigated but seems to be difficult to reproduce. The person who did the investigation is on vacation right now so I can’t ask for specifics but I think we didn’t solve this for now and the workaround is to just restart the device if this happens. We can issue the restart commands from the app after the update automatically so this would be a slightly hacky solution in the future. But seeing that the current version is almost at the limit of what the nrf51 SOC we use can do we don’t plan on adding many new features to that version with updates. We can still add functionality using the Connect but the device itself will likely just receive fixes and security updates.

I can add the device firmware version info to the “/list_devices” resopnse no problem. But really I don’t think an automation for that would be necessary. This should only happen very rarely and if at all possible we will try to find a way to fix this with the next update.

The new version should go up on our web store later this week. This is a major upgrade with all new plastics and a much bigger motor. We went over all the customer feedback we had received in the years with the current motor and tried to fix everything we could. So the new device has a bigger motor that gives us a massive increase in torque and max speed. But it also means that we can now move at a greatly reduced noise when we don’t go for max speed. I have a few of the new motors set up in my own home and moving at roughly the same speed as the current motors they are almost totally silent. We also have a better encoder so we can position shades much more accurately. A new wall mount system to better adjust and remove the motor. Batteries are now 18650 (two cells) that the user can replace if they really want. With these new batteries we can get around 6 months of battery life (calculated with the current prototypes). Battery life will depend a lot on movements and speed though. 6 months is with maximum speed and 2 movements per day with an average weight shade about 1.5 m long. We also have a much better SOC (nrf52840) that gives us more memory and a newer SDK to work with. Matter support is one of the main reasons we moved to that chip. We have tested Matter already on our hardware successfully. Due to certification requirements we may not offer Matter in the first release but it will be possible to upgrade to Matter as soon as we get all the certifications. Both Matter and HomeKit will be built into the motors themselves now and no Connect will be required for that (again - might not be ready for the first release but update should enable that for everyone). The new SOC also has Zigbee support - not tested yet on our own hardware but that is also something that we can possibly offer in the future. Charging will now have a standard USB-C connector and we will still support solar panels as well as plug-in chargers. The USB interface also has USB 2 signaling and currently we have it set up as a MSD with log files when connected to a PC (we still need to see what else we could use the USB for). The new motor also has on-motor control via 4 touch sensitive pads. At first launch we will offer up/down/stop commands via those buttons but in the future we could maybe also add on-device setup for installation without the SOMA app. Behind the scenes I’ve tried to make use of components that are available from multiple sources to avoid shortages better and we’ve also tested other motors that fit the same case for more speed or more torque. We will start presales pretty soon and hope to have the first units in customer hands in about 6 weeks.

At this point we are still integrating all the functionality the current motor has and it seems that the new motor will do all the same things just better. We will have more sensors and more room for better onboard automations. One of the new things is also a new BLE based control protocol that should make direct BLE integrations much simpler. I think HA now supports sending BLE commands directly and that should make for a really nice integration for these motors for those who want to avoid hubs.

3 Likes

First of all, thank you for providing technical insights about the new product. Sounds like those extra features (i.e., touch sensitive pads to control the motor) will be of great use for those that have shorter windows - I personally have very tall windows so I’d have to climb to reach the device :grimacing:.

I’m not sure how others feel about it, but enabling zigbee support would be a killer feature. I currently have a pi zero acting as the connect device with the first two Tilt devices right next to it and the other two tilt devices directly one floor above - The issue that I run into sending commands via the local API is that sometimes the commands fail to execute, but I get around that by using catch nodes in node-red to keep trying until the command sticks. I’d imagine using zigbee to control the devices would decrease or even eliminate the problem.

Do you expect the existing solar panels to be reusable via a female DC to USB-C connector?

The on-motor controls are actually one of the most requested features. But I agree that in some cases they won’t be of much use. They don’t really add much cost or power consumption to the device so they are fine if just left unused. We may add a configuration value to disable the controls completely if anyone should run into issues with them (or to save a bit of power). With Matter you can use pretty much any Matter enabled button/switch to control the motors from wherever you want.

Zigbee would be awesome but I don’t have much experience with that yet. I feel like it may be necessary to make separate firmware images for Zigbee and the BLE/Thread versions. But I will do my best to fit everything into one image first. If we need to make different images for Zigbee and BLE I will do my best to make the update process smooth in both directions. I’ve played around with some devices that had these sparate images and they only allowed you to update to Zigbee but never back. I will also have to look into certification costs with Zigbee - just the BLE/Matter thing will be very expensive already. Adding Zigbee will likely add even more certification costs. There are already some pretty cheap Zigbee motors on the market so we have to calculate if it would make financial sense for us.

Thread/Matter will likely solve the range issue just as well as Zigbee. Both would run at 2.4 GHz on this SOC anyway and the difference is just the protocol itself. BLE also has a long range mode available in this chip. In our tests long range BLE easily covered even the largest concrete houses. The problem is long range BLE is not really supported on phones and the current Connect versions don’t seem to support it either. The newer ESP32 based Connect could probably be ported to to the C3 or S3 variants that should support BLE5 and maybe we could then do better range for Connect<->motor communications. But that is something I will have to look into. ESP32 should also get a Thread enabled version at some point and then it may make sense to just move all of our hub communications over to Thread. Especially since that will make use of the mesh capabilities in Thread and expand range through any standard Thread device.

We use the same solar panel (just new plastics and a new cable) so it should work if you find such an adapter. It would be super simple to just replace the cable for the panel as well. If you have any experience with soldering you can do it in like 2 minutes.

1 Like

We, I mean SOMA, have now started shipping the Smart Shades 3. I have tested Matter, HomeKit and Zigbee and they all work on this new platform. Certifications and testing for each of these will take some time and as far as I can see right now there is no way to support a combination of protocols concurrently. But my idea is to use the secure bootloader and DFU features to let the user select which system they need and an update will bring the correct radio drivers and software. We will have to iron out details on how this would work safely and provide users with a way back if they happen to update into a protocol version they can’t really use. But I’m sure we’ll find a way.
The new motors have been running non-stop in testing for months now and have had no issues so far. Battery life is up to 6 months and with the solar panel it should easily get through the darkest winters.
I still have to update the HA integration as that seems to have a weird way to rad the battery level at the moment. But that should not take more than a few days.
I wish HA (and all the other home automation system including Matter) would have better support for window covers though. For example there seems to be no way of specifying the speed a motor should use to open the shades right now. In our own app we can set a different speed for each movement. So you can have a slow and silent opening in the morning but you can also manually command the motor to move at full speed if you want to just look out the window. I’m sure there are way to work around this but this seems like something that people other than me would use if it were easy to use.
Since I’m still very actively working on this version any feature requests from the community here are more than welcome.

3 Likes

Hi there, I wondered if you have any idea when the Soma Smart Shades 3 will be available in Australia? I contact one of the companies who supplied the Smart Shades 2 but they weren’t able to tell me.

Thanks :blush:

Hi, we are currently ramping up production and trying to catch up with all the preorders. We have an order from an Australian reseller but we do not have a solid date for when we ship that yet. Unofficially we now have all the materials stocked and I’m spending every day building motors at full speed. I hope to have enough stock to send out the Australian order in two to three weeks. Sorry about this taking so long but it will be worth the wait.

2 Likes

No worries, thanks for getting back to me. Do you mind telling me who the supplier is? I might contact them directly to get to the front of the line :slightly_smiling_face:

Me too. :slight_smile:

1 Like

We have been working with this site (https://www.ozsmartthings.com.au/) for years now. But like I said we have not given them a specific date of delivery yet so they may be hesitant to take orders at the moment. I really hope we can solve all our issues in the next few weeks and start delivering to resellers including to Australia.
On this new version of the motor we are also publishing the BLE protocol (which we have simplified a lot) and with the HA BLE capabilities now this should allow direct integration of the motors without any hubs in the future. I haven’t had any time to look into implementing this yet but using any apps on phones that can do just basic BLE read/write transactions I’ve been able to easily control the motors now. So if the HA BLE thing allows for basic read/write and connections this should be very straightforward to build now.

3 Likes

I bought (almost) all my existing SOMA motors from OZsmartthings, so I’m happy to wait for them to get stock.

@ratsept Since you are directly working on building the devices, I just wanted to check in to see if there are any other reports of a bug I’ve experienced - Within the past 2 weeks, I was woken up twice by the sound of one of my blinds making a continuous snapping noise. The culprit was the Tilt 2S not stopping as it continued to rotate on and on. As it was continuing to rotate, I checked the Smart Shades app, which showed the blind tilt position as not having changed at all. In addition, the only way I could get the tilt to stop rotating was by selecting, in the Smart Shades app, the identify button (it ignored all else including the reboot command).

As a side note, the shade was closed and was supposed to be opened to 50% at that moment via my Node-Red automation (haven’t had any issues with the automation for over a year).


Well, as I was typing this out, I was just informed (I am away from home) that the same Tilt device is doing the same thing again this evening (supposed to close from 50% to 0% in Home Assistant). I checked the automation and the service call executed without a problem and without needing to be retried (I have catch nodes that will wait to execute the service call again 3 seconds after an exception is raised due to the service call failing to execute as is the case sometimes with the REST API). While this is going on, Home Assistant reported that the state of the shade is 0% (closed) as it would be after a successful service call to the shade at sunset. However, as you can see from the video, the Tilt 2S just continues to spin (disregard it not being hooked up to the blind - I did this as I didn’t have time to redo the setpoints and didn’t want the shade to be making a snapping noise as the Tilt continued to rotate while I’m away). Since I wasn’t there to utilize the “Identify” method within the app to stop it from spinning, I was informed that it eventually stopped - 24 minutes from when the service call was made to be exact, so, it spun around and around for 24 minutes.
Of note, all my Tilt 2S devices are on the most recent firmware.

@RobertD502 This is really not the place to solve these types of issues. You should contact SOMA support as they have much more experience with these issues. But I have heard of this thing happening before. This is almost certainly an issue with the position feedback system we use. In the Tilt 2 there are 3D printed gears attached to the motor. On one of the gears we have glued a small magnet. Inside the motor we have 2 GMR sensors that see this magnet as it goes past and this is used to infer the location of the shade for the internal model controller. So the issue you are describing would happen if the sensors for whatever reason can no longer see the magnet. This can happen because the magnet came loose or the sensors got bent away from their correct position. This whole thing is pretty close to the edge of the sensitivity of the sensors and we’ve seen this happen before. You should contact support to see if they have any instructions for you to try and fix this or if not they will replace your motor.
It stopped after 24 minutes because we have multiple internal sanity timers and most likely at least one of those was triggered after such a long movement. Earlier version of Tilt could also work on just timing the motor movements but that is not as accurate and over time as battery levels and temperatures change it will slowly drift out of calibration.

Thanks for the response and the insight! I wasn’t looking for support here. Just curiosity as to how prominent the problem is / if from your experience it has been reported before.

It’s not a huge problem but I know of at least 3 others who have had similar issues. At least one of those was a case where either in shipping or during installation the motor was dropped a significant distance and that caused the magnet to come loose. Even when not glued the magnet usually stays in place but eventually it found its way into a position where it was no longer detected.

In our newer v3 motors we have completely changed the way we detect motor position. This is partly due to the difficulties we had with the Tilt and older motors. Magnetic sensing is so good in that is not affected by dirt or plastic and it usually doesn’t require precise alignment. But we were really pushing the sensing distance in the older motors. In the new motor we place the magnet in a special holder on the back of the motor shaft. So we get much more resolution (we count motor turns before the gear reduction) and we can also get the sensor a lot closer to the magnet.

I remember you mentioning the V3, but once it released I saw it wasn’t the tilt. Is that planned for the future?

At the moment we do not plan on doing a Tilt conversion on the v3 hardware like we did on the last Tilt. We have talked about making a completely new Tilt version but no concrete plans or dates as of now.

1 Like

Does the version 3 support direct Zigbee control? Or will I still need Soma Connect to make them work?

1 Like