No video
#78 First IOT Appstore: Remote Update of your ESP8266 from Webserver
In this video I show you, how to build an infrastructure to download sketches automatically from a webserver without human interaction.
It consists of three parts: A PHP script for the webserver, an initial loader for your ESP, and a code sniplet which has to be built into your sketches.
If you want to try it, go to: www.iotappstory...
Files for webserver and ESP8266: github.com/Sen...
More videos covering this topic: • Playlist
Supporting Material and Blog Page: www.sensorsiot.org
Github: www.github.com...
If you want to support the channel and buy from Banggood use this link to start your shopping: bit.ly/2jAQEf4 (no additional charges for you)
Official Wemos Store: s.click.aliexpr...
/ sensorsiot
/ spiessa
Пікірлер: 301
Please watch the new video about IOTappstory.com: kzread.info/dash/bejne/l5yEzpaHp83ckdo.html
Excellent incursion into OTA updates. I remember years ago I was trying to do this over bluetooth with an atmega and it was a real pain to get everything working. Today with such ecosystems things like OTA updates are much easier to implement. I also liked the way you implemented the version checking on the webserver, well done!
@AndreasSpiess
8 жыл бұрын
Thanks for your comment. OTA seems tow work ok now for the ESP. The server side implied some discussions here. I got some ideas out of that and maybe add a second version which does not need the MAC address.
Superbly usefull stuff. Perfectly explained. Thanks again master Speiss.
@AndreasSpiess
8 жыл бұрын
Thanks for your nice comment!
I love the basic idea. I can think of extending this where the ESP's are subscribing to an "update" channel of a firmware (eg. a led blynk channel or a thermometer channel) and the server publishes an "update" on that channel whenever an update is available for download.
@AndreasSpiess
8 жыл бұрын
Thanks. I investigate in this direction where the server does not need the MAC address
that's perfect . so many good things can be done easily now. you can possibly use the php to track what esp's have checked in and what ones have not . for a human viewed management page .
@AndreasSpiess
8 жыл бұрын
You are right. But I was already proud when I was able to implement and debug the current version (I had no idea about PHP and how to debug it on a webserver). I think, it will not be the last one...
@XerotoLabs
8 жыл бұрын
the cool thing about this for the house , i could setup a small / local PHP server . as i have used some localhost style servers for testing my other web apps , and the supporting PHP on my local rig before i would upload them to my public servers . I find PHP coding feels much like LUA , but thats just me . I prefer flavors of C . LOL
To circumvent the SSID and PASSWORD singularity in each IoT owner, you can put a file in SPIFFS with all the variables specific to each user. And then the main sketch need to load it in every boot and parse each variable, like SSID or other. The bin update don't need that individual specific info :)
@AndreasSpiess
8 жыл бұрын
My proposal has only information for one SSID/PW combination. All my ESPs connect to the same Wi-Fi. For me, this is sufficient, because it can easily be adapted during initial preparation of the ESP. I used EEPROM because I never used SPIFF. So, I do not know how to do it. And the EEPROM seems to be perfect for two variables. But I am sure, t could be done.
Hi Andreas, I really like your video's. I was searching for info on ESP8266 and got to your channel. Since i've found your channel I am watching all your posts and enjoy each and every one of them. Please keep on sharing and ignore any negative comments! (there are always people who like to share criticism, for various reasons including the need for attention :-)) I am setting up your webserver on my pi and will use this to update my esp's. It works like a charm. I also saw your update with an improved version using MD5 which i will implement as well. Thanks again for sharing your knowledge to the public. I think you are motivating lots of people like me in their (new) hobby.
@AndreasSpiess
8 жыл бұрын
Thank you for your nice words. Be aware, that you need the 2.4 version of the ESP software or you patch your 2.3 version...
@warperone
7 жыл бұрын
apologies what software are you referring to . I checked github.com/esp8266/Arduino/releases/tag/2.3.0 and 2.3.0 is latest. But i assume you are talking about something else ?
@warperone
7 жыл бұрын
Hi - can you pls explain where you get v2.4 of ESP s/w are you talking about the ESP8266 updated from Arduino IDE (as I can only see v2.3.0) here. And specifically what does V2.4 do that V2.3 does not ?
Nicely laid out and described, well done!
@AndreasSpiess
8 жыл бұрын
Thanks!
Great!!!!! You are the best!!!!!! Thanks for sharing your knowledge.
@AndreasSpiess
4 жыл бұрын
You are welcome. There is also a later video about that topic.
Awesome stuff! I've been playing around with AWS Lambda to create some server-less APIs with a node backend. That approach seems like a good candidate to set up this kind of infrastructure. Thanks for creating such thought provoking content.
@AndreasSpiess
8 жыл бұрын
You are welcome! I am not a "server guy" yet. So, I had to use this simple php script. I was already proud that I got this one running... The next step is probably to connect it with github instead of store the bin files on the webserver. And I would also like to avoid the MAC addresses in the process.
absolutely fantastic thank you so much for your series.
@AndreasSpiess
7 жыл бұрын
:-)
Really exciting and In agreement with others, this is the start of something... ! Also about SPIFFS to hold SSID + PWD. A simple regular Arduino IDE sketch could then be used to upload to a new ESP + SPIFFS code. Person can then check Serial output for their MAC address and away it goes. Maybe login to your server to download sketches to their MAC's on file, with whatever the store has from yourself and contributors :)
@AndreasSpiess
8 жыл бұрын
This is exactly my intention!
@Slider2732
8 жыл бұрын
And best wishes for the implementation !
@juergenseekircher5664
8 жыл бұрын
This is already done in the WiFi Lib. Just use WiFi.begin("", ""); and the already stored SSID and Password is used again. For entering SSID and PWD for the first time you can use WPS. This is how I do it. After reboot, WiFi.begin("", ""); is checked to connect. If not WPS will be started. Works great with my WeMos.
Love your videos, Andreas, and your style is really spot on. You do a great job for the Arduino and ESP8266 communities, thank you.
@AndreasSpiess
7 жыл бұрын
You are welcome!
@ReflectingMe2024
7 жыл бұрын
I have a ESP8266 Wemo Pro Mini D1 card arriving Thursday. Need to update drivers and I am off...
@AndreasSpiess
7 жыл бұрын
Maybe you watch the later videos about iotappstory.com
@ReflectingMe2024
7 жыл бұрын
I certainly will, sir! Thanks again.
Lovely idea. Will probably implement following your example. Thank you for sharing!
@AndreasSpiess
8 жыл бұрын
You are welcome. Just follow the instructions and it should work...
Holy Crap Andreas! This is perfect and just in time for me! Thanks again for such an informative tutorial. Your design and architecture probably need more securing but as proof of concept, it is excellent. My home automation set up is likely to have 10+ esps and I was designing the thing as your design same for me. I will will be setting up a raspberry PI as the automation hub, and it will talk to all the devices, and it will securely access out to the web on their behalf (in both directions). Your videos are very very informative - thanks you!
@AndreasSpiess
8 жыл бұрын
I am not a security expert, but I do not see big problems here. It needs some criminal energy and a lot of know-how to fake your ESP communication, especially if you do not leave your own WLAN.
@northshorepx
8 жыл бұрын
+Andreas, yes and no. I don't believe that the home devices are at risk at present. I was more commenting on the fact that there are people out there that like breaking sites for whatever reason, and your public facing site may be attacked and more likely be nuisance than dangerous. What I would say is that when connecting/designing devices that get data/code from a shared external source, one should consider security. As as demonstration however, as I said, your example is fantastic and I commend you on such a great explanation in such a concise way.
@AndreasSpiess
8 жыл бұрын
With an open platform, I completely agree with you. I am sure, this problem has to be solved for such platforms, but, maybe I will not be the right person, because I have no clue about these matters .-(
Thanks for the example. Something I've been looking to add is a mechanism to sign the firmware blobs so that the esp will verify that it's a trusted binary before flashing. I've not had a chance to dig into this very much though. This would require baking a key into the firmware and finding an encryption library able to run within the limited resources an esp provides. I think it's quite doable, but I've yet to make the time to try.
@AndreasSpiess
8 жыл бұрын
I am not so much in security, because I do not see the criminal energy which would try to hurt me...
you have deleted source files, how we can make our own server? can you respond?
there are not enough "Thumb up" icon to thank you for this nice Work...wonderfull!
@AndreasSpiess
7 жыл бұрын
:-)
Wow, it's great. thank you for knowledge sharing.
@AndreasSpiess
8 жыл бұрын
You are welcome!
Thank you for this. I had wanted to understand and implement a http download. And your information is going to make that so much easier. I now know what I will be doing this weekend. :)
@AndreasSpiess
8 жыл бұрын
Enjoy!
Very methodic!! I like your approach
@AndreasSpiess
8 жыл бұрын
Thanks alot!
This is very handy - nicely done, even with the broken accent.
@AndreasSpiess
8 жыл бұрын
Thanks!
amazing videos! Do you plan on making videos on how to set up the server side?
@AndreasSpiess
8 жыл бұрын
Well possible. I plan also to offer a server script without MAC address.
@jonathans1212
8 жыл бұрын
that would be awesome, I want to as im sure others setup my own that can be accessed by an esp8266 from anywhere in the world and im just not familiar with the web specifics and what all needs to be done
@AndreasSpiess
8 жыл бұрын
Your own can be accessed from anywhere if you host it in the cloud. If you host it on your "home" server it might be a little more complicated.
@jonathans1212
8 жыл бұрын
thats what im wondering how to do, set up a cloud based server. Im sure its not free but a couple bucks a month for this feature would be worth it!
Brilliant, Brilliant, Brilliant and so clearly explained as usual. Can't wait to try this out - unfortunately I'm busy tomorrow so I'll have to wait until the weekend:-( Many thanks for bringing this concept to my attention. Best wishes Arthur
@AndreasSpiess
8 жыл бұрын
Thank you for your nice comment. I hope, it will work for you. Otherwise, just come back...
@asiw
8 жыл бұрын
Hi Andreas I am getting an odd error message "HTTP_UPDATE_FAILD Error (-102): File not Found (404)" and I'm not sure how to debug it. I can make a direct connection to my .php file and also the .bin file. Another odd thing is my ESP's MAC it shows as "18:FE:34:E2:F:F5" ie it has a single F as the 5th character, I thought all MAC numbers were two digits. Can you suggest an approach to debugging? Best wishes Arthur
@AndreasSpiess
8 жыл бұрын
1. Debugging is not easy. I used Wireshark, which is a network monitoring tool, to display the message coming back from the server. But for the moment, this is not necessary, because the server does not know your MAC address and does not return a file. I have added your MAC address now. 2. This is not important. It has to do with the formatting of the print command. Just add a leading zero, which is not printed. You can try it again. Maybe it works
@asiw
8 жыл бұрын
Many thanks for getting back to me. I get the following on the Serial Monitor but no blinking LED! Should it have installed the fast flash? Start 35 ...... connected MAC: 18:FE:34:E2:F:F5 start flashing...... iotappstore.org /iotappstorev10.php iotupdater_001 ets Jan 8 2013,rst cause:2, boot mode:(1,6) ets Jan 8 2013,rst cause:4, boot mode:(1,6) wdt reset Best wishes Arthur
@AndreasSpiess
8 жыл бұрын
This is already very good. I think, you forgot to reset your ESP right after the flashing of the initial loader. Here, you have to be quick. Just after the "upload done". This is only necessary once. I might have described it a little fast in my video.
Beautifully explained thanks
@AndreasSpiess
8 жыл бұрын
You're welcome!
GREAT JOB!! Thank you very much for the info.
@AndreasSpiess
8 жыл бұрын
You're welcome!
Very good as always. Thanks.
@AndreasSpiess
8 жыл бұрын
+Thorben Nielsen You are welcome!
FInd it interesting? Andreas, this is fantastic! Do you ever sleep?
@AndreasSpiess
8 жыл бұрын
Just returned from a trip with my Harley through tree countries. No worry ;-)
Andreas, I have succeeded in updating the blink file from my web server. However, when I attempt the automatic update (using the php file) I get a "HTTP_UPDATE_FAILD Error (-1): HTTP error: connection refused" statement in the serial monitor window (after display of the countdown procedure and MAC address). I believe I have properly edited the php file. I'd be grateful if you could give me some advice on where I'm going wrong.
@AndreasSpiess
7 жыл бұрын
It is not easy to debug this one. This is, why we implemented some help in IOTappstory.com. You have to simulate the call of the ESP with your browser to find out, if you reach the right file. Then, you have to insert some "echo" into the php file to understand, what is lacking or wrong... Did you try with IOTappstory.com? There, you get a log file and you do not need to insert these echo commands.
@clemsabarias3191
7 жыл бұрын
Hi Philip Norman, today I tried Andreas Spiess tutorial above and encountered the same error as you. What I noticed is when I used the address "homeserver/folder/blink.bin" surely the error above appears but when I used "192.168.xxx.xxx/folder/blink.bin" it works! without any error
@AndreasSpiess
7 жыл бұрын
:-)
Shouldn't it be easier to make .bin file with sketch->export compiled binary?
@AndreasSpiess
4 жыл бұрын
It depends on what you want to do. But this is an old video which was rewplaced whith videos about IOTappstory.com.
Bad Luck for me watching this video now. I am getting an error while updating my firmware. I have uploaded the bin file on Firebase and GitHub too. Giving the link to ESPhttpUpdate.update(client, "Link") but get an error saying "HTTP_UPDATE_FAILD Error (-5): HTTP error: connection lost". Can you please help. I am using NodeMCU Amica
@AndreasSpiess
5 жыл бұрын
This is an old video. Maybe you watch the newer one about iotappstory?
Sir, Github link is not working -> (Files for webserver and ESP8266)
@AndreasSpiess
5 жыл бұрын
This is an old video. Maybe you watch the new one?
Hi andreas the link to your github page for the php script isn't active can you please make the script available again?
@AndreasSpiess
5 жыл бұрын
This is an old video and we have now IOTappstory.com. So it will not be maintained.
Good video Andreas i was thinking why do we have to use a signle esp to make the process wireless.So my idea is that we can deticate an esp to be the update manager having thus a signle sketch with the remote update code and be connected(Software Serial) to another esp witch will do all the work i get that this might be a lot more expensive but it would make the update and the hole process mutch more seemless and it would allow not only the remote update of esp but other iot devices sutch as arduinos etc.
Is his only http or can https also be used. Additionally I would "sign" my bin files to ensure nothing strange get deployed. I need to check the OTA upload. I'm able to get a signature from MQTT first and then check the download against it. I think there are some additional open topics to solve...
@AndreasSpiess
8 жыл бұрын
I never used https, because I do not understand these protocols enough. Concerning security: Of couse, you can make it secure. For me, this is for the moment a minor problem, because I have still many others open. So, I am glad if somebody else works on that topic.
muy buen video!, excelente descripcion
@AndreasSpiess
6 жыл бұрын
Thank you!
CC:50:E3:E0:3D:FF ,normal blink
I have my blink .bin in "E:\change\ARDUINO\esp8266\blink\Blink". 1)I am confusing where to attach these file to make sure OTA updatation. I fully understand the above concept but still unable to manage the file attachment in the process path. 2) I instlalled the Apache server with PHP and as per the "esp8266.github.io/Arduino/versions/2.1.0/doc/ota_updates/ota_updates.html " I copid the PHP script part in i.php . . .C:\Server\data\htdocs\i.php" what shoud i do after these .cause i tride to put the 3) what is "initial loder ? for initial loader which part is pertaining to up-lode main code .
@AndreasSpiess
5 жыл бұрын
This is an old video. Maybe you watch the new one about IOTappstory.com?
Nice project and a good approach, keep it up! Some notes / hints: Finding / Exporting the *.bin is actually a lot easier than the process you showed: Simply click on "Sketch > Export compiled binary", it is then placed in your project folder. Another thing that you might want to look into: There is a great Bootstrapping / OTA implementation, that is done by the Blynk team (www.blynk.cc/) - example sketch is called "BlynkProvisioning". I adapted it to my appliances and did not have a single problem until now!
@AndreasSpiess
8 жыл бұрын
Thanks for your info. I anyway plan to use blynk for one of my projects. So, there is one reason more to look into it...
@AndreasSpiess
8 жыл бұрын
I looked now at your proposal. But, being a novice in Blynk, did not understand the mechanism. Is there any description on how this works? Where the files are stored and how the decision for an update is made etc?
@McBochi
8 жыл бұрын
Andreas Spiess Are you referring to the "Blynk Provisioning" sketch or the ESP8266 in general? Let me know, happy to try then to shed some light on this approach.
@AndreasSpiess
8 жыл бұрын
I am referring to the Blynkprovisioning. I did not find an example with exactly this name, but it was somehow included in the blynk_ESP8266 file. But I have no clue how this works.
@McBochi
8 жыл бұрын
Andreas Spiess This is the one I am using: github.com/blynkkk/blynk-library/tree/master/examples/Export_Demo/Blynk_ESP8266 Basically it makes use of the SPIFFS filesystem: github.com/esp8266/Arduino/tree/master/libraries/EEPROM I formatted the 32Mbit flash chip of my ESP-12E to the 1MB/3MB layout. This section is then used to store the configuration in a non volatile way and as temporary storage for a new firmware on a remotely triggered update. With the default settings, it then listens to the virtual port 100, where you then can push an URL for the update to. This then triggers ESP8266httpUpdate, which downloads the file, check if it is ment for the current running version. If so, it then flashes the downloaded *.bin to the first partition holding the program and reboots. As the config is also stored in the non volatile SPIFFS, it sees that after the reboot and continues it normal operation. Not sure how well I described it, hope it is not too confusing after all... But feel free to ask and I will try to share my limited knowledge. :P
Hallo Andreas, wieder mal ein sehr interessantes Video, vielen Dank dafür. Ich hoffe es folgen noch einige ;-) Könnte man nicht einfach dem ESP verschiedene Pfade angeben, wo er das jeweilige Update suchen soll? Und im jeweiligen Verzeichnis einfach immer die neuste Version ablegen? Damit könnte man sich doch die PHP abfrage ersparen?
@AndreasSpiess
8 жыл бұрын
Die entscheidende Frage ist: Wer weiss der ESP, dass er die neueste Version hat? Ich habe ebenfalls die vorhandene ESP Firmware verwendet. Aber ein anderer Viewer hat einen Vorschlag gemacht, den ich mir genauer anschauen will. Vielleicht erscheint ja dann ein Update...
I cannot find the .bin file! in the new 1.6.10 it uses elf. to get the .bin I need to use sketch->expoert compiled binary
@AndreasSpiess
7 жыл бұрын
Or ctrl-alt-S
HTTP_UPDATE_FAILD Error (-106) error pls tell me what can i do?
@AndreasSpiess
6 жыл бұрын
This is a very old video. In the next weeks I will do an update.
Sir i get it working. But i don't understand how the system understands it needs an update? When i change the .bin file size or date ?
@AndreasSpiess
7 жыл бұрын
+Burak Karaduman In this version, it compares the version. In version 2 it compares the MD5 hash sum and if it changed, it updates. Watch the update video of the iotappstore
Nice video again! Does the webserver only need http with php or are other services needed to?
@AndreasSpiess
8 жыл бұрын
It only needed PHP (not the newest version, if I remember right.) I just used an available web-server and registered the name.
This is great. Thanks.
@AndreasSpiess
8 жыл бұрын
You're welcome!
ESPhttpUpdate.update("iotappstore.org/blink.bin"); i got HTTP error: connection refused, any APIKEY etc.?
@AndreasSpiess
5 жыл бұрын
Maybe you watch my newer videos concerning IOTappstory.com?
Hello Sir, i really like your videos and i achieved so much thanks to you, but i stuck with something. İ really don't know how to call OTA function every 12 hours. Which library and approximation should i use? Thanks.
@AndreasSpiess
7 жыл бұрын
Look at my video # 71. There, I show you, how you can call a function every day.
hello sir i tried the file provided in your video but the response is always connection refused another question can i just use any free file hosting and use it's direct download link of my uploaded file thank you sir
@AndreasSpiess
6 жыл бұрын
1. There is a new library available directly in the Arduino IDE (I think, I made also an update video) 2. Search for ESO8266 OTA and you will find a PHP file
@ezzatahmedmtc
6 жыл бұрын
thank you sir i've already fixed my problem
@AndreasSpiess
6 жыл бұрын
:-)
Sketches missing from github!
@AndreasSpiess
5 жыл бұрын
There is a newer video about IOTappstory
Hey Swiss guy, have you tried Terbinafine? It worked for me in two courses. Just a thought. I brought something back from indonesian ghettos walking barefoot.
hey friend.. please share a video about controlling gpio pins of esp8266 with own (any) website. please share codes of it.
@AndreasSpiess
8 жыл бұрын
You can find some examples in the internet (e.g. blynk.com)
very interesting. is it planned to add the ESP32 to the IOT appstore?
@AndreasSpiess
6 жыл бұрын
Yes. But for the moment we finalize the new version with https and other new features.
Thank you So much !!! :)
@AndreasSpiess
7 жыл бұрын
You're welcome!
@MPElectronique
7 жыл бұрын
Andreas Spiess do you speak french as Well ? Im french 😮
@AndreasSpiess
7 жыл бұрын
I can order a beer or two in french... But no technical discussions, For your comfort: English is also a foreign language for me. So we are two...
Nice project. Unluckly the github page can't be found. How could I get the files? Wanna build myown server for it. Thanks. Richard
@AndreasSpiess
3 жыл бұрын
There are newer videos about the topic. Search for "IOTAppstory"
@rubenfuchs7261
3 жыл бұрын
@@AndreasSpiess Already saw these videos, but there its more about the appstore, if I'm right. I need this for my own projekts in smarthome and want to make my own server for it.
@AndreasSpiess
3 жыл бұрын
Then you can use the example files in the Arduino IDE
@rubenfuchs7261
3 жыл бұрын
Thx. I'll try.
unfortunately, the link to the appstore is not working!
@legogo29
8 жыл бұрын
iotappstore.org should work
@AndreasSpiess
8 жыл бұрын
Sorry for that. I corrected it now. But legogo29 was right. Just three letters missing and I was on a road trip in the alps.
@kevireilly
5 жыл бұрын
iotappstory.com is what the above link should be. The other URL tries to get you to install a chrome extension. Also, the source code appears to be missing now.
Hi, i could not find the files for the webserver using the link you provided. There is another link where I can find?
@AndreasSpiess
7 жыл бұрын
This is a quit old video. Maybe you watch the videos about IOTappstory.com. There is now even a library available in the Arduino IDE (search for iotappstory).
FYI, "App Store" is an Apple trademark, I doubt it will be long before they complain if this actually becomes popular. I would change it to something else before it gets too popular. I really like the idea, just would hate to see it get destroyed after a lot of work gets put into it.
@AndreasSpiess
8 жыл бұрын
Thanks for the comment. I did not think about that. So, I have to keep it in mind! For the moment, it was more a gag. And iotappstore.com and .net are both not owned by Apple... (also not by me)
Hello Andreas, I have tried this like a million times but it never seems to want to work. Initially, it kept give me the error "Server Not Report Size" when I was using an http server. This was while using the php script that you use in this video. Then I tried using a different http server with the same php script. Then it kept saying "http connection refused." I checked the server logs and the I could see the chip requesting for the .bin file. Any idea why this keeps happening? For your server, did you use any special settings?
@AndreasSpiess
7 жыл бұрын
Maybe you watch the newer videos about IOTappstory.com. There is even a library available now.
Hi Andreas. I was think about, what if we store our wifi SSID and Password in the ESP8266 spiffs. Then your program will then call the variable and use it, without knowing it. Then we don't have to check for a magic byte. We just have to agree on the Variable to use :) Best regards Thanks for all your fantastic videos :)
@AndreasSpiess
7 жыл бұрын
I made a video concerning storing variables in SPIFFS. But I do not like it particularly for small amount of data.
Great idea
@AndreasSpiess
6 жыл бұрын
Thanks!
you deleted the project files?
Nice video. There is any way to automatically reboot the ESP without button press?
@AndreasSpiess
8 жыл бұрын
Yes. ESP.reboot(). And if you use the time() function, you can do that periodically
@SamuelCarreira
8 жыл бұрын
Thank you, so there is a possibility to automatically reboot the ESP after the successful update! I want to do a project where the ESP will be enclosed in a frame, so it will be unpractical to ask user reset the module after OTA update. At most, I can instruct to disconnect the device from the power supply and connect again (a kind of reboot maybe!?)
@AndreasSpiess
8 жыл бұрын
My remark was only the first time, when you flash the initial code with Serial. If you do the OTA, the ESP reboots automatically (as you see in the video)
@SamuelCarreira
8 жыл бұрын
Andreas Spiess Thank you again
Excelent. is it possible to do this with hard wired ethernet. my ideal would be, connect to hard wire, press a button whilst powering up the device and then it will check for updates. more of en end user bug fix update for friends i have given equipment to un order to make the update easy without sending back to me.
@AndreasSpiess
8 жыл бұрын
I do not know what you mean with "hard wired". But if you use an ESP8266, this is exactly the scenario. If you schedule an automatic check every day (as suggested at the end of the video), no end user interaction is needed at all.
Hi, thanks for the video. Where can I download the ESP and server files?
@AndreasSpiess
7 жыл бұрын
This is an old video and we changed many things. Maybe you watch the newer videos about iotAppstory.com. And there is even a library in the Arduino IDE (just search for iotappstory). I will also do a video about the new stuff in the next weeks.
@jaimeesg
7 жыл бұрын
Thanks, I will take a look and a new video would be very helpful!
hey Andreas great video and project! when i try to compile the project i get this error "fatal error: credentials.h: No such file or directory"
@AndreasSpiess
8 жыл бұрын
It just contains the two definitions of mySSID and myPASSWORD. 3 possibilities exist: 1. Create such a file with the two defines 2. Add the definitions in your main sketch and delete the include credentials.h 3. Replace the two constants mySSID and myPASSWORD with your real credentials (and delete the include)
@piux
8 жыл бұрын
sounds like your using this one then github.com/thisandagain/arduino-wifly-thingspeak/blob/master/Credentials.h. thanks for the response!
@AndreasSpiess
8 жыл бұрын
Simpler: github.com/SensorsIot/ESPDailyTaskNTP/tree/master/credentials
Hi Andreas, Thank you for share your ideas and spend time helping other people, i like your videos Did you have a ideia to write the spiffs ? because may i change the firmware or only change a logo/bitmap saved on spiffs thanks in advance
@FragaWill
7 жыл бұрын
ps: i'm getting: HTTP_UPDATE_FAILED Error(-101): Server not Report Size do you know why ?
@AndreasSpiess
7 жыл бұрын
1. I never used SPIFFS 2. Did you include the MAC address of your device in the PHP file?
@FragaWill
7 жыл бұрын
yes. i did
@AndreasSpiess
7 жыл бұрын
Then it is strange behavior. Is the .bin file in the bin directory? and is the filename in the PHP file without the extension?
@FragaWill
7 жыл бұрын
yes
HTTP_UPDATE_FAILD Error (-104): Wrong HTTP Code I am getting this error on serial monitor. What I have to do (when I used mine) ? HTTP_UPDATE_FAILD Error (-1): HTTP error: connection refused When I used : iotappstore.org/Blink.bin
@AndreasSpiess
5 жыл бұрын
This is an old video. Maybe you watch the new one?
@dhrumilmakadia1267
5 жыл бұрын
@@AndreasSpiess can share link here for new one ? Thank you.
Hello Andreas, this link is not working: Files for webserver and ESP8266: github.com/SensorsIot/IOT-App... Are you still able to provide those files? Thanks!
@AndreasSpiess
7 жыл бұрын
Maybe you wait for about 2 weeks. Then I will introduce a new library for IOTappstory. It is already available in the Arduino IDE if you search for IOTappstory.
@Imaculada27
7 жыл бұрын
Thanks for your repply! I am trying to develop OTA Web Server for ESP 32 IDF, not using Arduino. Meanwhile, I am connected to your channel to see your latest publications. Grüße aus Köln! Bin eigentlich aus Brasilien... :D
@AndreasSpiess
7 жыл бұрын
We use the Arduino IDE because it is well known. Concerning OTA, maybe you are also interested in our IOTappstory.com. There are a few videos and I will make a new one in the near future.
As usual a very nice way of explaining the things. Thanks for sharing Andreas. However I am facing following problem. HTTP_UPDATE_FAILD Error (-106): Verify bin header failed can you tell me the reason.?
@AndreasSpiess
7 жыл бұрын
What do you want to do? if you try the iotappstore.org, then I first have to enter the MAC address of your device.
@skjha2k
7 жыл бұрын
5C:CF:7F:0:15:BC I will now try with your server, pl. do the needful
@AndreasSpiess
7 жыл бұрын
You can try it. Call iotappstoreV10.php and your device should be known.
@skjha2k
7 жыл бұрын
I am getting this error HTTP_UPDATE_FAILD Error (-101): Server not Report Size
@skjha2k
7 жыл бұрын
here is the main lines of software.. #define firmware "iotupdater" #define firmware_version firmware"_001" #define update_server "iotappstore.org" #define update_uri "/iotappstorev10.php" t_httpUpdate_return ret = ESPhttpUpdate.update(update_server, 80, update_uri, firmware_version);
Is it possible to self host this? I really like to have as much control as possible so i know its secure
@AndreasSpiess
6 жыл бұрын
You can do a very simple OTA from a website. Goggle knows it
@R2053
6 жыл бұрын
okay thanks :)
Hi Andreas, wo findet man denn das Initial Update File (Open Point 1)?
@AndreasSpiess
6 жыл бұрын
Das Projekt hat sich weiter entwickelt. Vielleicht schaust du dir das neuere Video an oder wartest bis Ende Main wenn die Version 2 released wird.
I think it's too late ? i can't find php example file
@AndreasSpiess
6 жыл бұрын
You should find it somewhere on the internet. This project developed since then. Maybe you also watch the newer videos. And at the end of this month, we will release version 2.0 which also works with the ESP32.
Sir do you know why " HTTP_UPDATE_FAILD Error (-1): HTTP error: connection refused" occurs? I have seen this error in your videos too.
@AndreasSpiess
7 жыл бұрын
What do you want to achieve? What is your setup?
@KDM-Reloaded
7 жыл бұрын
Andreas Spiess i aim on update my esp-12 by raspi local network. Raspi is php server and esp asks for updates but each time it says " http error refused"
@AndreasSpiess
7 жыл бұрын
Did you add the MAC address into the PHP script?
@KDM-Reloaded
7 жыл бұрын
Yes
@AndreasSpiess
7 жыл бұрын
Can you start a get request from a browser? GET /iotappstore/iotappstorev20.php HTTP/1.0Host: 192.168.0.200User-Agent: ESP8266-http-UpdateConnection: closex-ESP8266-STA-MAC: 18:FE:34:D6:03:F7x-ESP8266-AP-MAC: 1A:FE:34:D6:03:F7x-ESP8266-free-space: 2859008x-ESP8266-sketch-size: 284000x-ESP8266-chip-size: 4194304 x-ESP8266-sdk-version: 1.5.3(aec24ac9) x-ESP8266-mode: sketchx-ESP8266-version: xyz Then you should get the anwer of your php file for debugging.
The github link does not exist!!
@AndreasSpiess
4 жыл бұрын
Maybe you watch the newer video about IOTappstory. Com?
The Github repository does not exist anymore :(
@AndreasSpiess
4 жыл бұрын
Maybe you watch the newer videos about IOTappstory.com?
@markusstaden
4 жыл бұрын
@@AndreasSpiess Already at it.. Currently bingewatching all your videos. You are awesome!
I'm just catching up with this and it's a great idea. I have a web site (some form of Apache) which comes free with my domain account. However, I have no idea how to implement the server bit. I'm a Brit living in Germany with a 1und1.de account and this level of tech German is still, unfortunately, outside my skill set. If there was a source of scripts I could upload to make it work that would be great..........no offer refused :-)
@AndreasSpiess
7 жыл бұрын
Watch my video #105. There is no need anymore...
@alanpowell328
7 жыл бұрын
Yes - just seen it, great. However, will it allow me to store simple data, such as from a data logger?
@AndreasSpiess
7 жыл бұрын
No, that is not the plan. For this, you still can use your Webserver... I just thought, you wanted to store your sketches (because of where the comment appeared).
@alanpowell328
7 жыл бұрын
Andreas, I've already signed up for IOT Appstore, because its a brilliant idea with a sound implementation. But this takes me back to my original question, which I will re-phrase - where can I find information, tutorials and/or helpful scripts that will help me enhance my basic website to store some simple data as it relates to Arduino and ESP8266? Thank you for your patience :-)
@AndreasSpiess
7 жыл бұрын
I plan to cover this topic in the future. So far, I always used publicly available services. You see, I do not know much more htan you...
Dear Andreas, Thanks for the nice video tutorial. At this moment I am engaged in developing the ESP8266 module which measures temperature and humidity. Concerning Over The Air (OTA) update , I need to do it using HTTP Server and is based on continuous automated deployment of firmware on ESP8266. But I cannot be able to find much resources in detailed on the internet. Could you help me regarding this?
@AndreasSpiess
8 жыл бұрын
If you watch this video and video #82 you know everything you need.
@vamsi2230
8 жыл бұрын
Thank you very much I came to know how to setup and how to run the client(ESP8266) side. But I cannot be able to find the resources related to the setup of webserver and run php script and to establish the wireless interface. Could you please help me?
@AndreasSpiess
8 жыл бұрын
I am not a webserver guy and also was able to set it up. I just googled. Every web hoster is different. The php scripts are in my github repository.
@vamsi2230
8 жыл бұрын
Ok. Thank you. Moreover, what is the purpose of "credentials" here? when we change the location of esp8266 device, do we need to enter the new credentials? If so we need to do it manually. Then its a drawback and not autonomous.
@AndreasSpiess
8 жыл бұрын
They are needed to access your access point. If you leve your Wlans unprotected, you do not need them
Danke für dieses, wie für Ihre anderen Spitzenvideos. Auto-hacking klar erklärt. Aber wie wird man Trojaner wieder los?
@AndreasSpiess
8 жыл бұрын
Habe ich Trojaner erwähnt?
your link for IOTappstore is wrong
@AndreasSpiess
8 жыл бұрын
Corrected
please provide me php script for testing purpose
@AndreasSpiess
4 жыл бұрын
This is an old video. Maybe you watch the newer ones about IOTstory.com
Hi there, I have tried to put this on my Rasp Pi server, pointing all right but getting this: HTTP_UPDATE_FAILD Error (-102): File not Found (404) The structure is @ root: bin/filename_001.bin iotappstorev10.php Put the MAC inside the php file, pointing to filename, tried both same and different version number. No change :(
@AndreasSpiess
7 жыл бұрын
File not found points to the fact, that the ESP does not find the PHP file. Try the same string with your browser and you should bet an answer. Do not put the HTTP inside the call in the ESP, only in the browser call.
@AndreasSpiess
7 жыл бұрын
This error points to the fact, that the ESP does not find the php file. Try the string with your browser and you should get an answer. Make sure, you include the only in your browser, not in the ESP call.
@FredrikOhlsson70
7 жыл бұрын
Ahh, ok. I have pointed it to server mypi.net and "filename" is same v10.php file. Only subfolder is bin. Containing The new build. Will try to access via bromsar when my work ends at 21:30 😊
@FredrikOhlsson70
7 жыл бұрын
mypi.net/iotappstorev10.php in webbrowser => only for ESP8266 updater! In sketch: #define update_server "192.168.1.100" #define update_uri "/iotappstorev10.php" Serial debugging: Start 35 .. connected MAC: 18:FE:34:CE:13:D3 start flashing...... Update server: 192.168.1.100 Update page: /iotappstorev10.php Update version: iotupdater_001 HTTP_UPDATE_FAILD Error (-104): Wrong HTTP code
@AndreasSpiess
7 жыл бұрын
Strange. Can you change the name of the file in the call that it is deliberately wrong and check, if the error message changes? If it changes, it is obvious, that the ESP finds the php file. If the message is the same, then we know, that it does not find the file, even if it is written correctly. Then, we can go on.
Great Tutorial I have done this with my Own PHP Server and it works well for Blink Sketch and i don't need to restart manually it automatically gets Restart . But when i uploaded the Firmware WiFi scan throught OTA server update wifiscan.bin file loaded sucessfully but it wouldnt runing in esp even if i Rest manually it gives below error for me. load 0x4010f000, len 1384, room 16 tail 8 chksum 0x2d csum 0x2d v614f7c32 @cp:0 ld e: ets Jan 8 2013,rst cause:3, boot mode:(3,6) ets_main.c
@AndreasSpiess
6 жыл бұрын
Remote debugging of such problems is not possible
@tejeetmagar2846
6 жыл бұрын
Andreas Spiess I solved it just . This error came due to bin file of program i did not saved bin file correctly. Now it working fine i don't need to press reset button after new firmware install. Great tutorial Thanks
I think its time to hook up an esp and try it out
@AndreasSpiess
8 жыл бұрын
Yes, we can!
is the server still up and running? im afraid not...
@AndreasSpiess
7 жыл бұрын
+cmcravo www.iotappstory.com. Just tested
@cmcravo
7 жыл бұрын
i tried whit my own web server and it worked, i will try again whit your but its tested and its great thanks!
Grüezi Herr Spiess, erstal vielen Dank für die super Videos. Alles sehr strukturiert wie es man es von eimem Schweizer erwartet ;) Habe das ESPhttpupdate beispiel mal versucht zu starten. Leider bekomme ich eine -1 Connection refused Fehlmeldung. Haben Sie da eine .bin Datei wo ich probieren kann, vieleicht habe ich ein Problem mit meinem Webserver?
@AndreasSpiess
7 жыл бұрын
Das ist ein sehr alte video und ich verwende dieses Verfahren nicht mehr. Sie sollten ein Beispielsketch in der Arduino IDE finden. Ich verwende jetzt die IOTappstory.com Infrastruktur. Sie basiert auf diesem Verfahren, aber wir haben sie weiter entwickelt (es gibt einige Videos dazu)
Hi Andreas, great job! very interesting. I'd like to build up my own repositories for my ESP devices to update automatically, but github.com/SensorsIot/IOT-Appstore is no longer available. Where can I find the server side php script, compatible with your latest framework? Or It could be your simpler md5 implementation as I use only Wemos d1 mini lineup. Thank you very much
@AndreasSpiess
6 жыл бұрын
The library is now part of the Arduino IDE. I think I did a later video about that. For the moment it does not work with ESP32. There you have to wait for a few weeks...
@AleOnNet
6 жыл бұрын
Andreas Spiess I’m using ESP8266. Is it possible to have access to server side php script, /ota/esp8266_v1 I think?
@AndreasSpiess
6 жыл бұрын
The server side of IOTappstory is not open. if you just want to do OTA from your webserver you find example PHP files in the net
@tantchenrenate
6 жыл бұрын
Hallo Andreas, gibt es die library mittlerweile für den ESP32? Falls nein, gibt es für den ESP32 die gleiche Möglichkeit für ein OTA Update via http?
Hi Andreas, Thanks for your videos , they are amazing , and congrats for the 10k. I have my own web server , and i'm trying to update using the iotupdater , but I get the following error: start flashing...... 192.168.1.139 /iotappstorev10.php HTTP_UPDATE_FAILD Error (-104): Wrong HTTP code Any idea what could be the problem? I uploaded without modyfing anything the files from Github to the webserver , and in my ino file this is the data I have: #define update_server "192.168.1.139" #define update_uri "/iotappstorev10.php" #define firmware "MetaAPP_IOT" #define firmware_version firmware"_002" Any help would be great! Thanks!
@AndreasSpiess
7 жыл бұрын
You're welcome! Concerning the error: did you adapt the PHP file with the MAC address and the file name?
@albertcaba8844
7 жыл бұрын
aaa that must be, i will give it a try tomorrow! Thank you for your answer!!
Is the iotappstory.com/blink.bin server still running?
@AndreasSpiess
7 жыл бұрын
The server should run. I just tried it ( www.iotappstory.com)
Vielen Dank für das super Video ! Hier noch eine Idee für den nächsten Entwicklungsschritt. Kann man nicht einen MD5 summe über das BIN file machen und speichern ? Damit spart man sich einen call zum Webserver. Der wiederum könnte (und sollte) im Header the Response einfach einen eTag = MD5 summe des aktuellen sketch schicken. Wenn sich seid der letzten Version nichts geändert hat ist die quersumme des BIN files immer noch gleich. ... Liebe Grüße aus San Francisco !
@AndreasSpiess
8 жыл бұрын
Zwei Dinge sind dazu zu sagen: 1. habe ich meine Arbeit auf dem Example der ESP8266 Entwickler basiert. Das hat mich mal wenigstens soweit gebracht. Bei Interesse kann man da sicher noch viel optimieren. Meine PHP Kenntnisse beschränken sich allerdings auf genau diesen Script. Und das auch erst seit ungefähr einer Woche... 2. Das mit dem MD5 ist sicher machbar, aber nicht grundsätzlich unterschiedlich zum im Moment verwendeten Verfahren (ausser der ESP könnte den MD5 selbst berechnen. Das ist aber nicht trivial, da das Binary vermutlich noch Metadaten enthält. Sonst müsste der MD5 manuell erfasst werden (wobei der sich vermutlich nochmals ändert, wenn man ihn ins Binary kopiert...). Oder habe ich etwas noch nicht verstanden? Ich habe in den Kommentaren zwei Vorschläge bekommen, die ich nächste Woche mal analysieren werde. Vielleicht gibt's ja dann ein Update. Grüsse nach San Francisco. Geniess es!
@AndreasSpiess
8 жыл бұрын
Du kannst das neue Video anschauen (wenn es online ist). Das läuft jetzt mit MD5. Ich konnte diese Funktion vorab installieren. Sie kommt offiziell mit Release 2.4. Läuft super!
@clemensqueiner849
8 жыл бұрын
Freut' mich das ich auf diesem Wege "etwas" zurück geben konnte ! Ich bin gespannt auf das neue Video !
.. And having own web server is not expensive nowadays.. From www.time4vps.eu/pricing/ you can have 20GB backuped web (or what ever you want) server from 0,99Eur/month.. And all servers are in Europe.. (At least I want to keep my data here and not at USA)
@AndreasSpiess
8 жыл бұрын
Thanks for the link. This is really incredibly cheap!
Files for webserver and ESP8266: github.com/SensorsIot/IOT-App... link down error 404
@AndreasSpiess
7 жыл бұрын
Thanks. Maybe you try the library we created in the meantime. You find it in the Arduino IDE when you search for "iotappstory". It should be much easier...
@SunilSudevan
7 жыл бұрын
github.com/SensorsIot/IOTappStory.com pls chk if this link is correct for Files for webserver and ESP8266
@AndreasSpiess
7 жыл бұрын
As I wrote. These are old files.
Hello Andreas, as always great video. Please have a look on following repository github.com/erkobg/esp8266-dht22-ci-ota It is the same idea but with simpler approach, also you can find PHP file to serve the file. Also you will find trick how ESP knowns which versions is currently installed on the device
@AndreasSpiess
8 жыл бұрын
Thanks for the link. I got a few suggestions and will look into them. Maybe I will do an update. This was only version 1...
hello sir i tried the file provided in your video but the response is always connection refused another question can i just use any free file hosting and use it's direct download link of my uploaded file thank you sir
@AndreasSpiess
6 жыл бұрын
Maybe you use the library provided in the Arduino IDE. It also has example files. You also have to activate your devices now to make sure your device is really yours.