Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sonoff basic 1.6.0 firmware OTA update not working #70

Closed
xyleth opened this issue Dec 5, 2017 · 19 comments
Closed

Sonoff basic 1.6.0 firmware OTA update not working #70

xyleth opened this issue Dec 5, 2017 · 19 comments

Comments

@xyleth
Copy link

xyleth commented Dec 5, 2017

Hello,

I recently got a pair of Sonoff Basic devices (having previously used this to flash fw to TH16 and 4ch devices). With the first unit I mistakenly upgraded it to the latest 1.6.0 firmware via the Sonoff app and now it won't complete the provisioning. It just skips from the ITEAD-1000001xxxxx SSID provisioning step straight to the final download step without performing the main download in the middle sequence.

The other device, which I left on 1.5.5, flashed fine.

I've attached the debug log. Is there anything else I can do to help troubleshoot this with you?

@ConfusedTA
Copy link

This must be a firmware related issue - as I have just made the same mistake as you in updating one to 1.6.0 which I have incorrectly attributed to being a Windows issue - I've just fired up a Linux box and am experiencing similar issues which I recorded in #69 - as these are seemingly related to the same issue, hopefully someone can combine the two.

@sillyfrog
Copy link
Collaborator

sillyfrog commented Dec 5, 2017

@xyleth That's... weird... To clarify, are you seeing the "FinalStage" SSID? (I don't see that happening in the logs).

It can take a minute or two for the Sonoff to retry after your PC connects back to the normal WiFi, so maybe worth leaving it there a bit longer.

PS: I recently purchased a Sonoff Basic to test some stuff - and it won't update for me beyond v1.5.2 - so I can't replicate at this stage.

@xyleth
Copy link
Author

xyleth commented Dec 5, 2017

Hi - thanks for the quick response.

I never see the "FinalStage" SSID with this unit. I tried again and left it for 10 minutes to no avail - the script just cycles through its final stage warning and the device never seems to connect for firmware upgrade.

If there's anything else you'd like me to do / check let me know. I don't have an immediate need for this second Basic so I'm happy to use it for testing.

@ConfusedTA
Copy link

Same result here - and likewise am in no immediate need for it, so can do some testing on Windows too.

@sillyfrog
Copy link
Collaborator

I think the first thing to check is that it's getting a DHCP lease.

But (more likely), it could be #58 - I have a Basic that is not updating via the app for me (and I'm away this week). But I'll try again next week and see if I can get it to update, and replicate this issue.

@ConfusedTA
Copy link

Yes mine was connecting to the internal network and was pingable.

It would suck if they're clamping down on the SSL certificate - they make some reasonable hardware, and the fact we could do this to it probably did boost their sales quite a bit!!

@agidlund
Copy link

agidlund commented Dec 7, 2017

  • Operating System: Windows 10
  • Python Version: 3.6.3
  • Sonoff model: S20
  • Sonoff factory firmware version: 1.5.5

I don't want to open a new issue, as I have the exact same behavior as described here. I upgraded two S20 to firmware version 1.6.0 and can't flash any of them. The process stops when the device is to download the new firmware in step 2. The other S20 I didn't upgrade are all able to flash with sonota.

If it is the case that they are now verifying the ssl certificate, isn't it possible to use something like http://docs.mitmproxy.org/en/latest/mitmproxy.html and tamper the response?

@andyjenkinson
Copy link

Another report here, stupidly allowed it to update to 1.6. tcp dump attached.

dump.pacp.zip

@andyjenkinson
Copy link

@agidlund I don't see how one would get the sonoff to trust the CA certificate to do a man in the middle attack, if that is indeed the problem.

@agidlund
Copy link

agidlund commented Dec 8, 2017

@andyjenkinson True, I didn't realize that aspect. That would require a change of its firmware and that's what we are trying to do in the first place...

@jebo01
Copy link

jebo01 commented Dec 9, 2017

I did the same mistake to upgrade to 1.6 version and getting the same problem. Would be great if anyone could come up with a solution. I take it that its not possible to restore the device to original FW version?

@krasatos
Copy link

krasatos commented Dec 9, 2017

So, is this confirmed that there is no option to flash v1.6.0 yet?
Should i try it or, will I brick it?

@sillyfrog
Copy link
Collaborator

@krasatos If it's the same as #58, then it won't brick it, just reset the configuration worst case, and you'll need to reconfigure for your LAN.

I'm closing this issue, and going to put all related comments on #58.

@mirko
Copy link
Owner

mirko commented Dec 11, 2017

@andyjenkinson @agidlund just for the record: neither the Arduino TLS nor the Espressif Update stack implement functionality for either certificate pinning nor CA cert checking. Happy MITM'ing!

EDIT: I obviously have to take that back - at least to some degree - after having read #58

@NiekN
Copy link

NiekN commented Feb 26, 2018

Are there any updates regarding to firmware 1.6

@Gramps
Copy link

Gramps commented Jun 16, 2018

Anyone know if the 1.8.1 update makes this functional again?

@jgyoldi
Copy link

jgyoldi commented Jun 18, 2018

I have the same question, I have two new modules that came wit 1.6 version and I don´t know if it is a good idea to upgrade them to 1.8.1 version.
Another question, is there any possibility to downgrade this sonoff modules to 1.55 firmware?

@Gramps
Copy link

Gramps commented Jun 18, 2018

I'm going to upgrade one to 1.8.1 and try it out. I also have a 1.5.5 but can't get that to work. Nor can I find patch notes for 1.8.1.

I believe to downgrade you have to use the USB method.

@jgyoldi
Copy link

jgyoldi commented Jun 18, 2018

Ok. Let us now what you get.

About downgrading: to use USB I have to solder pines and if I solder them I can flash it no matter what FW I have...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests