@Beta_Ravener
Many thanks for all your adjustments (so fast!!!)... I did some tests on W10 and Linux Mint... I had some troubles with installation to Linux but all is OK now. This tool is "solving of dreams" for my work and I warmly recommend it to everyone else.

I will stick to webrepl_cli.py as I made a fully automation script but it is definitely worth a try. Thanks for sharing

Thanks for trying out. As for my current vision, I don't plan to create a full blown IDE like ESPlorer is trying to do with all the fancy stuff (well maybe syntax highlighting would be nice). I see it as a tool for transferring scripts and running commands directly but the development should be done in some neat IDE, Vi, or whatever you like to use (personally, I use PyCharm). In fact, one of my next goals would be adding MicroPython autocompletion to my IDE (don't know if anyone done that already). But I have some other features for the uPyLoader on my mind that would make it more comfortable to use for its purpose.

Hi, I just wanted to notify everyone that new version with some major changes was committed. The changes are also reflected and described in README file, but I would like to stress to UART users that communication protocol has changed and you need to update the transfer scripts. This was required to support transfer of binary files (such as cross-compiled .mpy files).

Due to larger changes to code, there may be new bugs and crash situations that I didn't discover during brief testing. Please, use Issues in the GitHub repository to report these and I will be fixing them ASAP so you can enjoy the new version.

Great suggestion, I'll see what I can do about it. The problem is that when I tried to `pip install esptool` in my python3 environment, I got `RuntimeError("esptool.py only supports Python 2.x")`. On the other hand, the uPyLoader requires python3, so I think it won't be possible to just call esptool. One option (dirty but easiest) would be to just take the code from esptool and make it part of uPyLoader. Unfortunately, this is not possible due to esptool's GPL license. But there might be other workarounds..

Well, it's for a long discussion which one should be used. I like to develop new applications in Python3 if there are no dependency issues because it exists for a reason. Python2 should be considered legacy but the reality as you can see is different. I don't know why esptool is running on Python2, I have even found an attempt to bring it to Python3 here: https://github.com/themadinventor/espto ... hon2_and_3 . From the difference shown there, I can't see any libraries removed, so it probably wasn't a dependency decision. So the only thing that needs to be ported is esptool's code itself. Maybe it was because most distros still come with Python2 but for me, on Windows and using Anaconda, it doesn't really matter which environment I need to activate.

Anyway I have probably found a way to overcome this issue, it's little cumbersome but better than nothing. I won't have much time these days to implement it but I'll keep you posted here once it's ready.

Ok I had some spare time to test the idea and got it working, so there is new version on GitHub that supports flashing via esptool.
You can get check it out by going `File->Flash firmware` and there is more detailed description in Readme on how to use it. After successful flashing, you can directly connect to the ESP via UART on main screen. Hope it makes life a bit easier and in case of any issues let me know.