Esp32 port

All ESP32 boards running MicroPython.
Target audience: MicroPython users with an ESP32 board.
User avatar
Roberthh
Posts: 3667
Joined: Sat May 09, 2015 4:13 pm
Location: Rhineland, Europe

Re: Esp32 port

Post by Roberthh » Wed Mar 08, 2017 12:00 pm

If you have the chance (and are not on Windows), try the command line ftp version, which I used yesterday, or use a browser like Chrome. I cannot recall whether I tried Filezilla with that version, which is kind of intermediate. As far as I could tell, Filezilla quick connect mode doe snot work. Either it uses active mode or more than one connection. That can be a little bit misleading. Even when a command is not supported by the file server, it should print the request. But an attempt to open a second connection will simply stall.
My personal experience is better with the Fireftp extension of Firefox. I'll try myself this evening.

User avatar
Roberthh
Posts: 3667
Joined: Sat May 09, 2015 4:13 pm
Location: Rhineland, Europe

Re: Esp32 port

Post by Roberthh » Wed Mar 08, 2017 9:18 pm

@devnull The problem is yesterday's update, which broke the function. If you go back to 3d903f5b3eb930594a6c0dbaf2b5a3958807f730, it works, at least with FileZilla (passive, 1 session) and command line ftp. FireFTP complains about the incomplete data at ls. I stripped that down since localtime() is not yet available in the port. Not clear what exactly caused the problem in the new build, which was about socket timeouts. So I have to invest a little bit more. So much about my quick hack.

User avatar
Roberthh
Posts: 3667
Joined: Sat May 09, 2015 4:13 pm
Location: Rhineland, Europe

Re: Esp32 port

Post by Roberthh » Tue Mar 14, 2017 8:25 am

@devnull: After yesterday's update of the esp32 repository, the uftpsever.py script works again. Here are the updated files for my tools. I changed the ls output to send dummy file creation/change dates again. Leaving that out confused some ftp clients. One word about the editor: The copy command is traditionally Ctrl-C. But Ctrl-C is also KeyboardInterrupt, which cannot be caught in this firmware. This is a known bug in the esp32 ports. For the copy operation, Ctrl-D can be used. The problem is, that if you press Ctrl-C for copy, the editor will terminate at the next keyboard press.
tools.zip
(8.78 KiB) Downloaded 320 times

User avatar
devnull
Posts: 473
Joined: Sat Jan 07, 2017 1:52 am
Location: Singapore / Cornwall
Contact:

Re: Esp32 port

Post by devnull » Wed Mar 15, 2017 11:24 am

@roberthh - thanks, I just received some new wroom boards and thought that I would compile and try the very latest and your original uftp server is working now, I have not tried your updated version.

Any idea what the ram usage is for it ??

Many Thanks

Update

I just tried your latest version and that's working too.
Last edited by devnull on Wed Mar 15, 2017 11:35 am, edited 1 time in total.

User avatar
Roberthh
Posts: 3667
Joined: Sat May 09, 2015 4:13 pm
Location: Rhineland, Europe

Re: Esp32 port

Post by Roberthh » Wed Mar 15, 2017 11:31 am

The RAM usage of the ftp server depends. If you have it in flash (frozen bytecode), it's like 1 k. The MPY size is 5k, so RAM usage will be in that range when loaded from the files system. I suggest to put ot into the flash.
If you reload the module, you can also increase the size of the file system.

bmeisels
Posts: 1
Joined: Fri Mar 17, 2017 9:36 am

Re: Esp32 port

Post by bmeisels » Fri Mar 17, 2017 9:44 am

Has anyone been able to get the pycom port working on a wroom32 based board? (I am using a watterott board)
I have managed to get the micropython-esp32 working but it doesn't support bluetooth.
Also how is the merge process going?

User avatar
devnull
Posts: 473
Joined: Sat Jan 07, 2017 1:52 am
Location: Singapore / Cornwall
Contact:

Re: Esp32 port

Post by devnull » Fri Mar 17, 2017 9:54 am

@Roberthh - I have only just started compiling my own build (on the 8266 as of last night actually) and figured out how to use frozen code, seems it is simply a case of dropping it into the modules folder.

But do you know how your ftp server can be started at boot and run in the background ?? - I started another thread on same topic on esp8266 forum.

User avatar
Roberthh
Posts: 3667
Joined: Sat May 09, 2015 4:13 pm
Location: Rhineland, Europe

Re: Esp32 port

Post by Roberthh » Fri Mar 17, 2017 10:37 am

For the ESP8266 I have a variant that runs in the background. It' here:https://github.com/robert-hh/ESP8266-FTP-Server
The callback mechanism used for that in the ESP8266 does not exist in the esp32 port. And I have no knowledge of a mechanism on the EPS32 port which would allow a background task to be registered in parallel to the REPL prompt.

User avatar
pythoncoder
Posts: 5956
Joined: Fri Jul 18, 2014 8:01 am
Location: UK
Contact:

Re: Esp32 port

Post by pythoncoder » Sun Mar 26, 2017 9:55 am

What is the general state of the ESP32 port? I'm wondering if an ESP32 will overcome some of the reliability issues I've experienced with the ESP8266.

Has anyone tested pin interrupts and the UARTS? @Roberthh if pin interrupts work, have you measured the latency?
Peter Hinch
Index to my micropython libraries.

User avatar
Roberthh
Posts: 3667
Joined: Sat May 09, 2015 4:13 pm
Location: Rhineland, Europe

Re: Esp32 port

Post by Roberthh » Sun Mar 26, 2017 11:27 am

@pythoncoder: No, id did not test it yet, but I can do so. The first impression was, that it is way more responsive, maybe because of the larger RAM. but that does not exclude long latencies, since the caching mechanism is still present.
I did not continue testing with the ESP32 port, since it was announced that it will merge with the Pycom esp32 ports. Since then, there was almost no change in the port.
Update: Cannot test, since Pin interrupt is not supported, or I did not find it.

Post Reply