Coder Social home page Coder Social logo

deye-firmware's Introduction

Deye Microinverter Firmware

This repository has been started because the Firmware prior to MW3_16U_5406_1.53 had some significant security issues - See also Thread on Photovoltaikforum (German) or Article on Heise (German)

Additionally to that there is a pretty steady pace on firmware releases but sadly no public changelog is available. As the Server was also down for a few days earlier in 2023 I've decided to start this repository to keep the firmware versions somehow online even if the server would face issues.

I don't take any responsibility for any damage caused by this firmware. Use at your own risk. It worked on my inverter, but I can't guarantee it will work on yours.

If you brick your device that's your problem. ;)

Installed on a Deye SUN600G3-EU-230 and it worked fine (5406 in the filename).

My feeling is that the firmware files and IP info can be released out into the wild as it's not hidden and the fact that there is specifically no HTTPS connection used would suggest that the manufacturer does not care about securing those files.

Firmware Update Server

The IP of the firmware update server is 47.254.36.66. It looks like behind this IP is the firmware update Server of Deye. At least I got greeted with an Nginx default page via HTTP.

Firmware Update Process

Based on a few forum entries and the answer from Deyes support the Inverters should auto-update to the latest version when being up and running for 30 minutes.

Filenames

Subdirectory Filename Brand
0_D0002_18 0501 Solis Ginglong
0_D0002_18 5406 Deye
0_5407_1 Deye Hybrid Inverters

URL Structure

# Deye
http://47.254.36.66/0_D0002_18/MW3_15U_5406_1.471.bin
http://47.254.36.66/0_D0002_18/MW3_15U_5406_1.49R.bin
http://47.254.36.66/0_D0002_18/MW3_16U_5406_1.53.bin
http://47.254.36.66/0_D0002_18/MW3_16U_5406_1.56.bin
http://47.254.36.66/0_D0002_18/MW3_16U_5406_1.57.bin
http://47.254.36.66/0_D0002_18/MW3_16U_5406_2.04.bin
http://47.254.36.66/0_D0002_18/MW3_16U_5406_2.06.bin
http://47.254.36.66/0_D0002_18/MW3_16U_5406_2.30.bin
http://47.254.36.66/0_D0002_18/MW3_16U_5406_2.31.bin

# Solis Ginglong
http://47.254.36.66/0_D0002_18/MW3_15_0501_1.21.bin
http://47.254.36.66/0_D0002_18/MW3_15_0501_1.23.bin

# Deye Hybrid Inverters
http://47.254.36.66/0_5407_18/MCU1-SG-Ver0000-C362-CK.bin

You can use the DIGEST files to verify that those files here are the same as the ones on the server.

shasum -c MW3_15U_5406_1.471.bin.DIGEST
shasum -c MW3_16U_5406_1.53.bin.DIGEST

or verify all DIGEST files

for filename in *.bin.DIGEST; do
    shasum -a 256 -c $filename
done

Create your own DIGEST files

for filename in *.bin; do
    # create a file called $filename.DIGEST
    shasum -a 256 $filename > $filename.DIGEST
done

Other notable Projects

Call for help

If you have more information or insights into the firmware update process, alternative URLs or other information let me know.

deye-firmware's People

Contributors

aitseitz avatar dasrecht avatar hypfer avatar palto42 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deye-firmware's Issues

Compile changelog from publicly known information

As Deye seems not to be willing to publish changelogs of their Logger Firmware updates, we could start to compile with the information that's known, e.g. the password change or Wi-Fi bands changes that came in lately.

Still wondering if Bosswerk has real changelogs because based on their FAQ for the MW3_16U_5406_1.53 it does not look like it

Ein offizielles Change-Log haben wir aktuell noch nicht. Die hauptsächliche Neuerung ist das
Abwenden der Zugriffsmöglichkeiten durch Dritte. Hierzu ist das Passwort des Access Point
neu einzurichten.

Most likely I'll get in touch with them - A Distributor might be able to have a bit more influence over the decisions made at Deye

Incorrect digest

I downloaded the files today and got different digests.

shasum *.bin
ec17ee0a15d1931b0475ab1192506d2584127c82  MW3_15U_5406_1.471.bin
576eaf8d6d7ffee53812d59dda839fc832c37fc6  MW3_16U_5406_1.53.bin
LC_ALL=C stat *.bin
  File: MW3_15U_5406_1.471.bin
  Size: 438282    	Blocks: 0          IO Block: 4096   regular file
Device: 3ch/60d	Inode: 1362        Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/     user)   Gid: ( 1000/     user)
Access: 1970-01-01 01:00:00.000000000 +0100
Modify: 2023-01-24 13:36:43.000000000 +0100
Change: 1970-01-01 01:00:00.000000000 +0100
 Birth: -
  File: MW3_16U_5406_1.53.bin
  Size: 446429    	Blocks: 0          IO Block: 4096   regular file
Device: 3ch/60d	Inode: 1363        Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/     user)   Gid: ( 1000/     user)
Access: 1970-01-01 01:00:00.000000000 +0100
Modify: 2023-01-24 13:37:40.000000000 +0100
Change: 1970-01-01 01:00:00.000000000 +0100
 Birth: -

File for 800w Version

hi,
do you also have the Files for the Deye SUN800G3-EU-230?

Currently i have this version.

image

Version in between

hi

maybe you can add MW3_16U_5406_2.27 as Informativ
it was on my m80g3 as default one but dont have a bin file

vielleicht kannst du MW3_16U_5406_2.27 als Information mit einpflegen
dieser stand war die grundversion auf meinem m80g3 leider habe ich keine bin datei

MW3_16U_5406_1.62

Diese Firmware existiert seit ein paar Tagen, ich kenne aber den Downloadlink nicht

add warning for firmware =<2.27

these firmware version only work if you have the new relay attached to the device. Otherwise the inverter just stops working. Downgrading the device is possible but doesn't fix the problem.

Add some documentation on how the firmware in this repo were found?

Could you add some additional description to this repo to understand how you found the firmware on the server? The nginx doesn't do directory listings, right?

Is there any config file the router is checking? Could you also add some information on when you last checked for new firmware? (or is the process of uploading firmware to this repo in any way automated?)

Thanks,
Christopher

Tag version with release number

Hello,
would it be possible to label new versions (and maybe existing ones) with the release number?
This is how we can query the Github API for new versions.

Background:

My Deye inverter is completely disconnected from the internet so I would check for new firmware versions through Icinga or similar.
I'm ok with the delay between the official release and your release here on github.

Best regards

Diffirence 1.57 vs 1.57PT

any information about diffirence between this both
1.57 and 1.57PT

yes i know no changelog avalible but maybe some other information maybe

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.