Repository navigation
MicroPython on the ESP32-D2WD (2MiB) #4986
Description
Activity
Nice one!
I agree that constants hurt. I'm starting to think it's becoming more and more preferable to have board configs for ESP32. We can still use sdkconfig if we make the ESP32 port an ESP IDF component and use the KConfig system.
Then once we have a good place for them we can start moving this constants out to various configs.
Reacted by Alex AlbinoSee pull request #4987
I followed the process, but my NINA W102 (2MB flash) is resetting!
Can you inform me where address to burn those 3 bin files created ? (application, partition and bootloader) if i use flash tools ?I followed the process, but my NINA W102 (2MB flash) is resetting!
Can you inform me where address to burn those 3 bin files created ? (application, partition and bootloader) if i use flash tools ?@tcpipchip when
makeis run, firmware.bin will be generated. Please see the following instructions.With the changes shown in the PR, you will need to set the env variables.
Go into the
/ports/esp32folder.
(Replace/dev/ttyUSB0with your actual port.)if using a makefile which imports Makefile... adjust/add the following
PORT = /dev/ttyUSB0 FLASH_MODE = dio FLASH_FREQ = 40m ## if using a 2MiB ESP32 board FLASH_SIZE = 2MB FLASH_USER_START = 0x120000 # Defaults to 0x200000 address if not provided FLASH_STORAGE_PARTITION_SIZE = 0xA0000 # 640MiB max. Defaults to 0x200000 if not provided (2MiB partition on 4MiB Flash ESP32 boards) PART_SRC = partitions-2MiB.csv # Use the custom partitions CSV for 2MiB devicesor .envrc if using direnv
# .envrc file export ESPIDF="$HOME/esp-idf" export FLASH_SIZE="2MB" export FLASH_MODE="dio" export FLASH_FREQ="40m" export FLASH_USER_START=0x120000 export FLASH_STORAGE_PARTITION_SIZE=0xA0000 export PART_SRC="partitions-2MiB.csv"Run
make cleanthenmakeBefore flashing, erase the flash, then flash the firmware.
esptool.py -p /dev/ttyUSB0 erase_flash esptool.py -p /dev/ttyUSB0 write_flash -z 0x1000 build/firmware.binThanks to the feedback @zrecore
And those 3 files
ports/esp32/modules/flashbdev.py, ports/esp32/modesp.c, and ports/esp32/partitions.csvStill Need to modify too ?
Thanks to the feedback @zrecore
And those 3 files
ports/esp32/modules/flashbdev.py, ports/esp32/modesp.c, and ports/esp32/partitions.csvStill Need to modify too ?
@tcpipchip You can see all file changes in the Pull Request, see https://github.com/micropython/micropython/pull/4987/files
Good Morning!!!!
Now NINA W102 is running Micropython!!!! Thanks @zrecore
You are the best!!!!!!!!!!!!!!!
Btw we ported the AT COMMANDS to 2Mb ESP32 too!
Did you do that too ?
- Wow, that's excellent news! I did not add any AT commands...that may be existing code. Please note, I am in the process of working with the MicroPython community to integrate feedback, so these code changes may yet be modified further.…On Sat, Aug 10, 2019, 5:29 AM tcpipchip ***@***.***> wrote: Good Morning!!!! Now NINA W102 is running Micropython!!!! Thanks @zrecore <https://github.com/zrecore> You are the best!!!!!!!!!!!!!!! Btw we ported the AT COMMANDS to 2Mb ESP32 too! Did you do that too ? — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#4986?email_source=notifications&email_token=AADIW3EMT3H3D64LGL6NSL3QD2YCVA5CNFSM4IJ7EQM2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4AMSGA#issuecomment-520145176>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AADIW3AZVPXDMUWJKNKXTR3QD2YCVANCNFSM4IJ7EQMQ> .
Zrecore
Using 2mb version.Did you have problems with MQTT with certifications ?
Looks that not works!
Mine is reseting when try to open the MQTT with certifications...
Hi, the behavior of your esp32 is going well using 2mb ? Mine is very strange, sometimes not boot, or not get wifi, or not open tcp sockets
- This is an untested patch.…On Sat, Aug 17, 2019, 3:50 PM tcpipchip ***@***.***> wrote: Hi, the behavior of your esp32 is going well using 2mb ? Mine is very strange, sometimes not boot, or not get wifi, or not open tcp sockets — You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub <#4986?email_source=notifications&email_token=AADIW3BZWP2TZIHXKPQ5YXTQFB6DFA5CNFSM4IJ7EQM2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4QU3AY#issuecomment-522276227>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AADIW3EZCONRMHZY33XXQRLQFB6DFANCNFSM4IJ7EQMQ> .
Yes! A lot of problems! I aborted to use it!
12 remaining items
@tcpipchip for every issue you find, would you mind documenting:
- What happened
- What you expected
- How to reproduce the issue
- added a commit that references this issue
on Sep 10, 2019 The D2WD is now supported by the GENERIC_D2WD board, via commit 80d37d9
Reacted by Alex Albinoi will try soon to see if solve the MQTT access with 3 certifications error
with this patches now resets my NINA W102 (enter a reset loop)
can you inform me the correct sequence now to build micropython ?I had followed this that worked good https://www.microdev.it/wp/en/2018/08/08/esp32-micropython-compiling-for-esp32/
@tcpipchip I'll do my best to help you, but please create a new GitHub issue for the problem.
- added a commit that references this issue
on Mar 23, 2020 - added a commit that references this issue
on Apr 5, 2020 - added a commit that references this issue
on Sep 21, 2026


In case anyone else is interested, I've managed to mod the source and a partitions.csv file to get MicroPython and its filesystem working on an ESP32-D2WD, which only as 2MiB of internal Flash, not 4MiB.
Modded



ports/esp32/modules/flashbdev.py,ports/esp32/modesp.c, andports/esp32/partitions.csvI would recommend we not hard-code things to 0x200000 anymore, as Espressif offers 2MiB internal SPI flash chips. Perhaps we rework these changes a bit to make the built process account for flash user start addresses lower than 0x200000?