Tensorflow Lite MicroPython support?
- 
					
					
					
					
 Hello everyone, I am just wondering is there any possibility to upload esp32 firmware, which enables TensorFlow Lite features, on the FiPy board? I was following the instruction found in this repo https://github.com/mocleiri/tensorflow-micropython-examples, but it's not possible to connect with my FiPy and upload this firmware on it. I am constantly getting this error: esptool.FatalError: Failed to connect to ESP32 : Invalid head on packet 0x08. Does anyone know how to fix this issue, or the solution is to buy esp32 for this purpose? Thanks and cheers! 
 
- 
					
					
					
					
 @robert-hh Yes, indeed! I uploaded the new firmware and now everything works as expected. Thanks a lot for help and advices that you gave me! 
 
- 
					
					
					
					
 @Adnan-Sabovic-0 You have to upload the new firmware. But now, that you know how it is not a big thing. 
 
- 
					
					
					
					
 @robert-hh Do I need to upload a new firmware then and remove the existing one, or there is another way of using a firmware image with SPIRAM support? 
 
- 
					
					
					
					
 @Adnan-Sabovic-0 Sometimes its /pyboard, sometimes /esp32. In case of a RAM shortage, use a firmware image with SPIRAM support, if available. 
 
- 
					
					
					
					
 @robert-hh I have a small update, I am able to upload all the necessary files to my board. In my case it was ls /pyboard instead of ls /esp32. The new problem that occurred is related to memory allocation. Based on the code, it allocates 300568 bytes. Do you maybe know where can be a possible issue with memory part? 
 
- 
					
					
					
					
 @Adnan-Sabovic-0 The files on the board should be available under the path /esp32. In rshell, try: ls /esp32 To put files there, just copy the to /esp32 with cp source_file target_file Target file names must start with /esp32/ 
 
- 
					
					
					
					
 @robert-hh I installed rshell and ran in my Ubuntu terminal. I am still confused how to upload here all files from the example folder. I can list them all: on-examples/examples/person_test> ls -lthon-examples/tensorflow-micropytho 1316 Apr 15 12:15 main.py 9216 Apr 11 14:52 no_person_image_data.dat 300568 Apr 11 14:52 person_detect_model.tflite 9216 Apr 11 14:52 person_image_data.datAnd then I tried to run REPL and import main, but again same error as before. Then I imported microlite from main file but after I imported main again, still no any message. Where did I make mistakes? 
 
- 
					
					
					
					
 @Adnan-Sabovic-0 Since you are not using the Pycom firmware, pymakr may not work. Try other tools for uploading like rshell https://pypi.org/project/rshell/ or mpremote https://pypi.org/project/mpremote/ . Both offer a REPL console as well. These are command line based tools, so they may look a little uncomfortable at the first moment. But once you get used to it, you'll see that it is way more robust than using an API like pymakr of Thonny. 
 
- 
					
					
					
					
 @robert-hh I already have it. It is not possible to upload it via Pymark terminal in VS Code? 
 
- 
					
					
					
					
 @robert-hh you script tries to open the file person_detect_model.tflite at the local file system, but it does not exist. You have to create or upload it to the board. 
 
- 
					
					
					
					
 @robert-hh This is the output when I typed your commands in Pymakr terminal: >>> import os >>> print(os.listdir("")) ['boot.py', 'esp32-cam', 'images', 'main.py', 'project.pymakr', 'show-test-images.py']I completely followed these instructions: https://github.com/mocleiri/tensorflow-micropython-examples/runs/5553454051?check_suite_focus=true After I set up everything and built tensorflow, all I needed to do is to choose the right firmware for my board. Once this job is finished, I supposed to be able to run the example (person detection), but then this problem occurs. The problem is detected after this line is called: person_detection_model_file = open ('person_detect_model.tflite', 'rb')which means that maybe the problem is related to model that is uploaded with tensorflow? 
 
- 
					
					
					
					
 @Adnan-Sabovic-0 It means that files are missing, like boot.py or main.py. If you installed a fresh firmware, you start with an empty file system. What do you get when you type: import os 
 print(os.listdir(""))What do the instructions tell about using tensorflow? 
 
- 
					
					
					
					
 Hi, it worked when I connected P2 and GND. I was able to upload the firmware successfully. But now I am facing another issue: OSError: [Errno 2] ENOENT. Is it possible that I uploaded the wrong firmware version? I built standard non-psram 4MB Flash firmware. Is it okay, or I should consider another version? The possible versions can be found on this link: 
 https://github.com/mocleiri/tensorflow-micropython-examples/actions/runs/1986616446
 
- 
					
					
					
					
 @Adnan-Sabovic-0 you have to connect P2 to Gnd and push reset, to set the ESP32 into bootloader mode. The mechanisms required by esptool and implement by Pycom are incompatible. 
 
