Skip to content

esp32: add WPA2 enterprise support #16463

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
453 commits
Select commit Hold shift + click to select a range
0a630cb
zephyr/machine_wdt: Add watchdog timer implementation.
danicampora Feb 21, 2025
31851b1
py/makeqstrdata.py: Implement MicroPython compatibility.
vshymanskyy Oct 18, 2024
74b74d5
tools/mpy-tool.py: Add support for self-hosting of mpy-tool.
vshymanskyy Oct 18, 2024
49528a1
tools/mpy-tool.py: Support calling main() from an external script.
vshymanskyy Oct 18, 2024
7366217
esp8266/network_wlan: Allow enumerating connected stations in AP mode.
agatti Feb 14, 2025
3fccea1
nrf/modules: Fix access of read-only buffer in Flash.writeblocks.
dpgeorge Mar 3, 2025
101ecbb
py/objarray: Add MP_DEFINE_MEMORYVIEW_OBJ convenience macro.
dpgeorge Jan 3, 2025
cd4e6ee
extmod/modvfs: Add vfs.rom_ioctl function and its ioctl constants.
dpgeorge Nov 15, 2024
f33a63c
extmod/vfs: Add mp_vfs_mount_romfs_protected() helper.
dpgeorge Feb 20, 2025
71ac0df
py/runtime: Automatically mount ROMFS as part of mp_init.
dpgeorge Feb 21, 2025
4a67338
tools/mpremote: Add romfs query, build and deploy commands.
dpgeorge Mar 3, 2022
142b778
stm32: Implement vfs.rom_ioctl with support for internal/external flash.
dpgeorge Mar 3, 2022
b6d7777
stm32/boards: Enable ROMFS partitions on PYBD_SFx boards.
dpgeorge Feb 20, 2025
7713b26
rp2: Implement vfs.rom_ioctl with support for external flash.
dpgeorge Mar 3, 2022
c29803e
esp32: Implement vfs.rom_ioctl with support for external flash.
dpgeorge Mar 3, 2022
a057cef
esp8266: Implement vfs.rom_ioctl with support for external flash.
dpgeorge Nov 15, 2024
1c24007
esp8266/boards: Add FLASH_2M_ROMFS variant with 320k ROM partition.
dpgeorge Mar 1, 2025
2f59409
unix/main: Add coverage test for mounting ROMFS filesystem at startup.
dpgeorge Mar 4, 2025
15d5939
zephyr/machine_timer: Add machine.Timer class implementation.
danicampora Feb 21, 2025
47f01d5
lib/cyw43-driver: Update driver to latest version v1.1.0.
dpgeorge Mar 12, 2025
daafc35
extmod/network_cyw43: Add WPA3 security constants.
dpgeorge Mar 12, 2025
33f0287
esp32: Merge the per-SoC "main" components back together.
projectgus Mar 4, 2025
95bdb1a
esp32: Remove the ESP32 ringbuffer linker workaround.
projectgus Mar 4, 2025
97564dd
esp32/machine_sdcard: Add SDCard pin assignments for ESP32-S3 support.
projectgus Feb 5, 2025
b676f44
esp32/machine_sdcard: Add SDCard SPI mode support for ESP32-S2,C3,C6.
projectgus Feb 5, 2025
35820a7
esp32/boards: Enable machine.SDCard on all boards.
projectgus Feb 5, 2025
e888ceb
esp32/machine_pwm: Correctly stop LEDC timer.
garywill Dec 6, 2024
6b4895e
esp32/machine_pin: Fix logic clearing USB_SERIAL_JTAG_USB_PAD_ENABLE.
garywill Nov 14, 2024
d91d05b
esp32/machine_pin: Fix availability of USB Serial/JTAG pins on ESP32-C6.
projectgus Nov 15, 2024
a97e96e
rp2/modrp2: Fix rp2.bootsel_button() function for RP2350.
Gadgetoid Mar 11, 2025
b20ddab
rp2/boards/SPARKFUN_IOTREDBOARD_RP2350: Add support for IoT RedBoard.
SFE-Brudnerd Mar 4, 2025
827869c
rp2/boards/WEACTSTUDIO_RP2350B_CORE: Add WeAct Studio RP2350B Core.
mattytrentini Mar 8, 2025
8fc157d
rp2/boards/SPARKFUN_XRP_CONTROLLER: Add SparkFun XRP Controller.
sfe-SparkFro Mar 10, 2025
1b9e83d
rp2/boards/SPARKFUN_XRP_CONTROLLER_BETA: Fix XRP Controller Beta URL.
sfe-SparkFro Mar 10, 2025
83f6baa
rp2/boards/SEEED_XIAO_RP2350: Add new Seeed XIAO board definition.
Lesords Nov 26, 2024
72e1314
stm32: Rename ROMFS partition config variables to start at index 0.
dpgeorge Mar 11, 2025
4666716
esp8266: Rename ROMFS partition config variables to include "part0".
dpgeorge Mar 11, 2025
28f4f39
stm32/boards/ARDUINO_GIGA: Enable 4MiB ROMFS partition in ext flash.
iabdalkader Jan 14, 2025
95d1c4d
stm32/boards/ARDUINO_NICLA_VISION: Enable 4MiB ROMFS part in ext flash.
iabdalkader Jan 14, 2025
4bef36c
stm32/boards/ARDUINO_PORTENTA_H7: Enable 4MiB ROMFS part in ext flash.
iabdalkader Jan 14, 2025
961ead9
stm32/can: Refactor can.h API to not depend on pyboard can types.
projectgus Oct 9, 2024
3d5f176
tests/multi_pyb_can: Add multitests for pyboard CAN controller.
projectgus May 23, 2024
f892749
shared/runtime/pyexec: Add helper function to execute a vstr.
iabdalkader Feb 27, 2025
8f3763d
tools/mpy_ld.py: Allow linking static libraries.
vshymanskyy Sep 12, 2024
f2e68d1
tools/ci.sh: Build Xtensa natmods as part of the CI process.
agatti Mar 6, 2025
f4c1f5f
tools/ci.sh: Do not assume the Python interpreter is called "python".
agatti Mar 6, 2025
ca1864e
mimxrt/boards/MAKERDIARY_RT1011_NANO_KIT: Add new Makerdiary board.
robert-hh Mar 3, 2025
f300297
mimxrt/machine_adc: Add ADC.read_uv() method.
robert-hh Dec 6, 2024
f7e1908
mimxrt/mpconfigport: Enable support for exFAT.
robert-hh Jan 17, 2025
534c375
mimxrt/mpconfigport: Enable PPP for boards with lwIP.
robert-hh Feb 15, 2025
25e5afd
mimxrt/machine_uart: Remove duplicate init and make IRQ optional.
robert-hh Feb 22, 2025
1dfebc7
mimxrt/hal/qspi_nor_flash_config: Use a safe common CS timing.
robert-hh Feb 23, 2025
4a8e2bf
mimxrt/machine_uart: Fix rx/tx buffer allocation bug.
robert-hh Mar 9, 2025
a515d30
mimxrt/machine_i2c: Support the timeout keyword argument.
robert-hh Mar 13, 2025
6a1a10d
mimxrt: Enable default devices for I2C, SPI and UART.
robert-hh Mar 13, 2025
445380b
mimxrt/boards: Update deploy instructions.
robert-hh Mar 23, 2025
0b123a2
drivers: Add MP_QSPI_IOCTL_MEMORY_MODIFIED to indicate flash changed.
dpgeorge Mar 19, 2025
ce4944d
stm32/qspi: Implement MP_QSPI_IOCTL_MEMORY_MODIFIED ioctl.
dpgeorge Mar 19, 2025
091cc8c
rp2/boards: Fix SparkFun vendor name.
malcolm-sparkfun Mar 17, 2025
e93093a
rp2/boards/SPARKFUN_IOTNODE_LORAWAN_RP2350: Add SD card support.
malcolm-sparkfun Mar 17, 2025
b2598ef
docs/rp2: Add network information to the rp2 quickref.
mattytrentini Dec 22, 2024
8399575
rp2/machine_i2c: Require an I2C bus ID when no default is available.
Gadgetoid Mar 13, 2025
8a48c18
rp2/machine_spi: Make SPI ID optional.
Gadgetoid Mar 12, 2025
6293034
rp2/machine_spi: Allow MISO to be unspecified.
Gadgetoid Mar 12, 2025
c1ed8e7
rp2/mpnetworkport: Fix lost CYW43 WiFi events when using both cores.
projectgus Mar 12, 2025
180e998
rp2/mpnetworkport: Refactor out cyw43_has_pending global variable.
projectgus Mar 18, 2025
3d5c207
rp2/pendsv: Account for PendSV running on both cores, and without CYW43.
projectgus Mar 12, 2025
cb1173a
rp2/machine_uart: Fix unintended UART buffer allocation on init().
robert-hh Mar 9, 2025
0c0b168
samd/machine_uart: Fix unintended UART buffer allocation on init().
robert-hh Mar 9, 2025
9029586
samd/machine_uart: Fix lock-up in loopback mode if read buffer is full.
robert-hh Mar 9, 2025
849ca48
py/mpconfig: Enable 2-argument built-in next() at basic feature level.
dpgeorge Mar 11, 2025
21b8ee7
tests/cpydiff: Remove builtin_next_arg2.py difference.
dpgeorge Mar 17, 2025
0a9d56d
py/dynruntime: Make malloc functions raise MemoryError on failure.
dpgeorge Mar 17, 2025
396264a
extmod/moddeflate: Keep DeflateIO state consistent on window alloc fail.
dpgeorge Mar 17, 2025
3faf8a3
extmod/vfs: Refactor mp_vfs_mount to enable no-args mount overload.
AJMansfield Mar 14, 2025
7a5917e
extmod/vfs: Return mount table from no-args vfs.mount call.
AJMansfield Mar 14, 2025
91fd31a
tests/extmod/vfs_mountinfo.py: Add test for no-args mount output.
AJMansfield Mar 3, 2025
bfd923d
docs/library/vfs: Document no-args mount output.
AJMansfield Mar 3, 2025
2780c26
extmod/vfs_rom: Implement minimal VfsRom.getcwd() method.
dpgeorge Mar 11, 2025
e4dd283
tools/mpremote: Make mip install skip /rom*/lib directories.
dpgeorge Mar 11, 2025
d2763dd
rp2,esp32,extmod: Implement UPDATE_SUBMODULES in CMake.
projectgus Mar 11, 2025
7c5e981
rp2: Print an error message if pico-sdk submodule is missing.
projectgus Mar 11, 2025
d31eb23
esp32/Makefile: Use $(Q) prefix on all commands.
dpgeorge Mar 28, 2025
ad6a3fd
rp2/Makefile: Use $(Q) prefix on all commands.
dpgeorge Mar 28, 2025
cad8e7a
rp2/cyw43_configport: Fix cyw43 mDNS by properly starting mDNS on netif.
Mar 31, 2025
1fd1b4f
stm32/main: Catch and report corrupted lfs filesystem at startup.
pi-anl Jan 23, 2024
0e6160f
stm32/boards: Add F427 AF CSV file.
iabdalkader Jan 15, 2025
e1f7121
stm32/stm32_it: Add handler for timer 20 interrupt.
H-Grobben Feb 5, 2025
e728d34
stm32/timer: Use APB2 to calculate timer 20 source frequency.
H-Grobben Feb 5, 2025
88dc9e6
stm32/timer: Add support for STM32H5 Timer 1.
mattytrentini Mar 23, 2025
8ed16fc
stm32/qspi: Add qspi_memory_map_exit and restart.
dpgeorge Mar 19, 2025
e3bb1c2
stm32/boards/PYBD_SF2: Restart qspi memory-mapped mode during startup.
dpgeorge Mar 19, 2025
920c429
esp32/esp32_common.cmake: Use native gchelper for RISC-V.
agatti Mar 22, 2025
c3729dd
esp32/esp32_common.cmake: Clean up RISC-V directives.
agatti Mar 22, 2025
577a37c
esp32/esp32_common.cmake: Remove obsolete definition.
agatti Mar 22, 2025
e5569d6
tools/mpy_ld.py: Give better error for unsupported ARM absolute relocs.
jonnor Mar 28, 2025
25e5e9f
tools/ci.sh: Manually install picotool for rp2 builds.
dpgeorge Apr 5, 2025
f0680e5
tests/cpydiff: Update CPy diff for assign expr in nested comprehensions.
projectgus Apr 1, 2025
b728188
tests/cpydiff: Remove types_str_endswith.
projectgus Apr 1, 2025
7b2a5a3
tools/gen-cpydiff.py: Fail CPython diff generation if output matches.
projectgus Apr 1, 2025
d5a741b
tools/mpremote: Allow .img for ROMFS file and validate ROMFS image.
iabdalkader Mar 29, 2025
6aebc35
rp2: Add support for PSRAM with auto-detection.
Gadgetoid Aug 6, 2024
c54ef24
rp2/mpconfigport: Configure heap for PSRAM.
Gadgetoid Aug 9, 2024
974d137
rp2/rp2_flash: Support flash writes from PSRAM.
MichaelBell Aug 11, 2024
e966bad
rp2/rp2_flash: Configure optimal flash timings.
MichaelBell Mar 25, 2025
838ee42
extmod/extmod.mk: Add cyw43_spi.c to list of sources.
dpgeorge Dec 18, 2024
0ad348d
extmod/extmod.mk: Switch from drivers/cyw43/cywbt to lib/cyw43-drivers.
dpgeorge Feb 28, 2025
2e32585
top: Add "ser" to codespell exclusion list.
dpgeorge Feb 20, 2025
2013f48
lib/alif_ensemble-cmsis-dfp: Add new submodule for Alif SDK v1.3.2.
dpgeorge Dec 11, 2023
ee2bd42
lib/alif-security-toolkit: Add new submodule for Alif Security Toolkit.
dpgeorge Mar 11, 2025
6c68f6c
alif/tinyusb_port: Add Alif TinyUSB DCD driver.
dpgeorge Dec 11, 2023
1757357
alif/tinyusb_port: Disable USB IRQ on deinit.
iabdalkader Oct 22, 2024
6915dca
alif/tinyusb_port: Implement SOF event.
dpgeorge Mar 27, 2025
6f69753
alif: Add initial port to Alif Ensemble MCUs.
dpgeorge Dec 11, 2023
3c8b75a
alif/system_tick: Use a UTIMER for system ticks and timing.
dpgeorge Jan 10, 2024
7fbc56e
alif/mphalport: Enable efficient events and implement quiet timing.
dpgeorge Jan 10, 2024
354fbd5
alif/system_tick: Integrate soft timer.
dpgeorge Jan 10, 2024
46b1d72
alif/modmachine: Enable machine.Timer.
dpgeorge Jan 10, 2024
499d385
alif/se_services: Add SE services interface.
dpgeorge Jan 26, 2024
88000c0
alif/mpconfigport: Enable os.urandom().
dpgeorge Jan 26, 2024
b389698
alif/mpconfigport: Enable MICROPY_PY_RANDOM_SEED_INIT_FUNC.
dpgeorge Jan 26, 2024
e7abafa
alif/modalif: Add alif.info() function.
dpgeorge Feb 2, 2024
ec6c421
alif/modmachine: Implement machine.unique_id(), fix machine.reset().
dpgeorge Feb 2, 2024
107b054
alif/usbd: Implement proper USB serial number.
dpgeorge Feb 2, 2024
7f7d3ae
alif/machine_adc: Add basic ADC support.
dpgeorge Feb 13, 2024
00e2928
alif/mcu: Add ToC config for dual images.
iabdalkader Jul 10, 2024
f63ab8b
alif: Support building the port for HE or HP or both cores.
iabdalkader Jul 10, 2024
e420631
alif: Support running the port on the HE core.
iabdalkader Jul 17, 2024
3bfcee2
alif: Implement Open-AMP port backend.
iabdalkader Jul 17, 2024
87fcd70
alif/irq: Define more IRQ priorities.
iabdalkader Jul 28, 2024
12d9cc3
alif/system_tick: Implement optional LPTIMER support for systick.
dpgeorge Aug 14, 2024
fd614e6
alif/system_tick: Implement optional ARM SysTick support for systick.
dpgeorge Aug 28, 2024
851b71f
alif/mpconfigport: Select SysTick on HE core.
dpgeorge Sep 3, 2024
324c5da
alif/mpu: Add custom MPU_Load_Regions function.
dpgeorge Oct 10, 2024
ae5e074
alif/ospi_flash: Generalise flash driver to support MX chips.
dpgeorge Oct 7, 2024
048673d
alif/ospi_flash: Enter XIP mode when flash is idle.
dpgeorge Oct 31, 2024
9f4d9d5
alif/mpu: Define constants for MPU regions.
iabdalkader Nov 21, 2024
079b3ef
alif/mpmetalport: Add Open-AMP MPU region.
iabdalkader Nov 21, 2024
a40bcfd
alif/ospi_flash: Fix XIP for 8-bit instructions (ISSI).
iabdalkader Dec 14, 2024
2af9997
alif/ospi_flash: Support flash device auto-detection in runtime.
iabdalkader Dec 16, 2024
c6b64e9
alif/ospi_flash: Configure dummy cycles.
iabdalkader Dec 16, 2024
f470642
alif/ospi_flash: Add negative clock pin.
iabdalkader Dec 14, 2024
4724c5d
alif/ospi_flash: Enable pull-up IO2/WP.
iabdalkader Dec 19, 2024
d1432c5
alif/ospi_ext: Optimize XIP speed.
iabdalkader Dec 20, 2024
1433195
alif/ospi_flash: Use OSPI in XIP mode only.
iabdalkader Jan 8, 2025
c28d458
alif/ospi_flash: Add 16-bit words swap flash setting.
iabdalkader Feb 6, 2025
6b6ec2f
alif/se_services: Use EUI extension for unique id.
iabdalkader Feb 5, 2025
64c6aa8
alif/modmachine: Implement proper low-power modes.
iabdalkader Feb 3, 2025
e2f8c57
alif: Add support for pin alternate function selection.
iabdalkader Jan 9, 2025
b88c680
alif/machine_i2c: Add machine.I2C peripheral support.
iabdalkader Jan 2, 2025
7e1b582
alif/machine_spi: Add machine.SPI peripheral support.
iabdalkader Jan 19, 2025
3f4c248
alif/machine_rtc: Add basic machine.RTC support.
iabdalkader Jan 31, 2025
0bd1ae8
alif/ospi_flash: Use mp_hal_pin_config to configure OSPI pins.
iabdalkader Feb 7, 2025
7072c61
alif/se_services: Add a secondary MHU channel.
iabdalkader Feb 15, 2025
cbba17b
alif/mpmetalport: Use MHU to notify remote cores.
iabdalkader Feb 15, 2025
2bdcd13
alif: Link with libnosys.
iabdalkader Feb 19, 2025
1440b0a
alif/mpmetalport: Only notify after metal subsystem is init'd.
dpgeorge Mar 6, 2025
12c4c16
alif/mpuart: Use mp_hal_pin_config for TX/RX configuration.
dpgeorge Mar 6, 2025
29932d6
alif/alif_flash: Distinguish between total flash size and FS size.
dpgeorge Dec 23, 2024
61d9bf2
alif/alif_flash: Make flash respond to the buffer protocol.
dpgeorge Dec 23, 2024
f509f4d
alif/mpu: Add function to set read-only bit on MRAM MPU region.
dpgeorge Mar 6, 2025
ee46622
alif/vfs_rom_ioctl: Add vfs_rom_ioctl with support for OSPI and MRAM.
dpgeorge Mar 6, 2025
d41ca9d
alif/modules: Make HE core set /rom as current dir.
dpgeorge Mar 8, 2025
4b58707
alif/mphalport: Add mp_hal_pin_config_irq_falling helper.
dpgeorge Oct 23, 2024
6b00c5e
alif/mpuart: Generalise UART driver to suppot all UART instances.
dpgeorge Oct 14, 2024
7b349d8
alif: Integrate lwIP and mbedTLS.
dpgeorge Oct 14, 2024
63319d0
alif: Integrate cyw43 WLAN driver.
dpgeorge Mar 10, 2025
8478a57
alif: Integrate cyw43 Bluetooth with NimBLE.
dpgeorge Mar 10, 2025
3421f76
alif/mcu: Remove json config files.
iabdalkader Mar 13, 2025
8027b90
alif/mcu: Pre-process Alif ToC config file.
iabdalkader Mar 13, 2025
5d94e08
alif/mpuart: Enhance UART to support bits/parity/stop and more IRQs.
dpgeorge Mar 17, 2025
4ed523c
alif/machine_uart: Add machine.UART peripheral support.
dpgeorge Mar 14, 2025
5d2a4a6
alif: Support more fine-grained pin alternate function selection.
dpgeorge Mar 20, 2025
398825d
alif/ospi_flash: Don't invalidate cache after erasing/writing.
dpgeorge Mar 31, 2025
23dea99
alif/ospi_flash_settings: Use 8-bit DFS for XIP.
dpgeorge Mar 31, 2025
c33a78d
alif/ospi_flash: Restore XIP settings after erase and write.
dpgeorge Apr 1, 2025
d2a4577
alif/mpu: Add MPU region for OSPI1 XIP memory range.
dpgeorge Mar 31, 2025
3a4fa1a
alif/boards/ALIF_ENSEMBLE: Add Alif Ensemble board config.
iabdalkader Dec 17, 2023
a1b2ab1
alif/boards/OPENMV_AE3: Add OpenMV AE3 board definition.
dpgeorge Sep 2, 2024
2066b2e
github/workflows: Add Alif port to CI.
iabdalkader Feb 20, 2025
09dff33
tests/ports/alif_hardware: Add flash testing script.
dpgeorge Oct 21, 2024
0006dfb
tests: Update UART and SPI tests to work on Alif boards.
dpgeorge Mar 17, 2025
a3a56fe
tools/mpremote: Add recursive remove functionality to filesystem cmds.
Josverl Apr 7, 2025
f52854b
tools/mpremote/tests: Add tests for mpremote rm -r.
Josverl Apr 7, 2025
2fec4d4
docs/reference/mpremote: Update docs for mpremote rm -r.
Josverl Apr 7, 2025
45b5681
drivers/memory/spiflash: Allow a board/port to configure chip params.
dpgeorge Apr 9, 2025
da5c946
drivers/memory/spiflash: Allow a board/port to detect SPI flash.
dpgeorge Apr 2, 2025
97c6888
drivers/bus/qspi: Make num_dummy configurable for quad reads.
dpgeorge Apr 2, 2025
2b23105
stm32/vfs_rom_ioctl: Allow ROMFS configuration to be dynamic.
dpgeorge Apr 1, 2025
716f893
stm32/qspi: Allow SPI flash size to be decided at runtime.
dpgeorge Mar 13, 2025
9b0ab06
stm32/mboot: Allow USB strings to be dynamic.
dpgeorge Apr 2, 2025
a6cb1f0
stm32/modmachine: Add SPI flash size to machine.info dump.
dpgeorge Apr 2, 2025
b9cb2e2
stm32/boards/PYBD_SF6: Support boards with larger SPI flash.
dpgeorge Apr 2, 2025
32d40a3
mimxrt/Makefile: Fix dependencies for generation of flexram_config.s.
dpgeorge Apr 10, 2025
26711c3
py/emitinlinerv32: Move include of asmrv32.h to within feature guard.
dpgeorge Apr 10, 2025
16c8a86
lib/micropython-lib: Update submodule to latest.
dpgeorge Apr 14, 2025
b14c8c1
all: Bump version to 1.25.0.
dpgeorge Apr 15, 2025
ea5215d
all: Bump version to 1.26.0-preview.
dpgeorge Apr 21, 2025
d1a793f
tests/basics/builtin_range.py: Add more tests for range slicing.
jepler Mar 28, 2025
0ab7f75
py/objrange: Match CPython range slicing.
jepler Mar 28, 2025
c85a673
py/objstr: Fix handling of OP_MODULO with namedtuple.
yoctopuce Mar 20, 2025
256e78d
unix/variants: Enable os.uname() in coverage build for tests.
yoctopuce Mar 20, 2025
c660ac7
unix/main: Remove PATH_MAX from realpath.
yangfl Mar 21, 2025
1529366
unix/mpthreadport: Work around lack of thread cancellation on Android.
agatti Nov 18, 2024
6615385
CODECONVENTIONS: Document the static naming conventions.
projectgus Mar 19, 2025
d1bdb7e
py/dynruntime.mk: Fix use of musl's libm.a when LINK_RUNTIME=1.
dubiousjim Mar 20, 2025
36c76ae
drivers/ninaw10/machine_pin_nina: Add exception text wrappers.
pi-anl Mar 25, 2025
98e9bd1
extmod/machine_usb_device: Add exception text wrappers.
pi-anl Mar 25, 2025
86ba202
rp2: Add exception text wrappers.
pi-anl Mar 25, 2025
246907f
extmod/modbluetooth: Use newer mp_map_slot_is_filled function.
pi-anl Mar 25, 2025
9903454
stm32/main: Replace mp_stack_set calls with new mp_cstack_init_with_top.
pi-anl Mar 25, 2025
07cf4c1
py/mkrules.cmake: Add CMake support for compressed error messages.
dpgeorge Mar 13, 2025
e6b0102
esp32: Enable compressed error messages by default.
dpgeorge Mar 13, 2025
413229f
rp2: Enable compressed error messages by default.
dpgeorge Mar 13, 2025
9b41553
esp32/esp32_common.cmake: Skip BTree module when requested.
agatti Mar 21, 2025
beb5ac4
drivers/esp-hosted: Rename Bluetooth HCI backend driver.
iabdalkader Feb 28, 2025
1fb86ef
drivers/ninaw10: Rename Bluetooth HCI backend driver.
iabdalkader Feb 28, 2025
4b01251
mimxrt/machine_uart: Enable CTS SION so it can be read.
iabdalkader Mar 3, 2025
1911671
mimxrt/cyw43_configport: Update cyw43 config to use new BTHCI UART.
iabdalkader Mar 3, 2025
6d11c8f
stm32/cyw43_configport: Update cyw43 config to use new BTHCI UART.
iabdalkader Mar 30, 2025
78c2935
drivers/cyw43: Remove old BTHCI UART backend.
iabdalkader Mar 30, 2025
1c8ee79
top: Bump Ruff version to v0.11.6.
projectgus Apr 24, 2025
c11bdec
tests/extmod: Skip binascii tests when hexlify/unhexlify don't exist.
dpgeorge Apr 24, 2025
1b6d35f
tests/extmod/vfs_lfs_ilistdir_del.py: Skip test if not enough memory.
dpgeorge Apr 24, 2025
6fdecd7
tests/extmod/vfs_mountinfo.py: Don't import unused errno module.
dpgeorge Apr 24, 2025
f327581
tests/extmod/vfs_posix.py: Fix test on Android.
agatti Apr 24, 2025
9ac75da
esp32/tools: Update metrics_esp32 script for ESP-IDF >=v5.4.x.
projectgus Apr 24, 2025
cf20b57
tools/mpremote: Use zlib.compressobj instead of zlib.compress.
dpgeorge Apr 17, 2025
64a1572
lib/lwip: Update lwIP to STABLE-2_2_1_RELEASE.
dpgeorge Mar 27, 2025
c0f34a3
py: Make struct-initializing macros compatible with C++.
stinos Apr 22, 2025
4692df4
unix/coveragecpp: Verify struct-initializing macros' C++-compatibility.
stinos Apr 22, 2025
07c8c15
tools/mpremote/tests: Add tests for errno behavior.
AJMansfield Apr 22, 2025
9d2c409
tools/mpremote: Refactor error handling to apply generally to any errno.
AJMansfield Apr 7, 2025
18eea1b
tools/mpremote: Fix possibly-missing EOPNOTSUPP errno name.
AJMansfield Apr 7, 2025
0e65ee5
tools/mpremote/tests: Add test for rm -r on /remote vfs.
Josverl Apr 17, 2025
3d93c4a
tools/mpremote: Prevent deletion of /remote files via rm -r.
Josverl Apr 17, 2025
5235970
zephyr: Fix prj.conf for v4.1-rc1.
laodzu Feb 6, 2025
2fb4d7a
zephyr: Fix call to thread_analyzer_print for v4.0.
laodzu Feb 6, 2025
04320a3
zephyr: Remove reference to CONFIG_MMC_VOLUME_NAME for v4.0.
laodzu Feb 6, 2025
d21cb53
zephyr: Upgrade to Zephyr v4.0.0.
MaureenHelm Nov 10, 2024
1fb0afd
zephyr/machine_pwm: Implement PWM support.
Ayush1325 Oct 19, 2024
42a77f7
docs/zephyr: Add quick reference for PWM support.
Ayush1325 Oct 19, 2024
1a31f7d
zephyr/boards: Enable PWM on beagleconnect_freedom.
Ayush1325 Oct 19, 2024
dded54a
zephyr: Create options to enable frozen modules.
VynDragon Nov 29, 2024
aacf33a
zephyr/boards: Add nrf5340dk board configuration.
ThinkTransit Mar 8, 2025
2279fc0
zephyr/boards: Add nrf9151dk board configuration.
ThinkTransit Mar 8, 2025
7153137
tests/net_hosted: Only run network loopback test on supported targets.
dpgeorge Apr 29, 2025
a2167fe
tests/ports/rp2: Convert rp2.DMA test to a unittest.
dpgeorge Apr 28, 2025
984f1ed
tests/ports/rp2: Tune rp2.DMA test so it runs in all configurations.
dpgeorge Apr 28, 2025
4aabd93
ports/esp32: added WPA-Enterprise bumped to current MP v1.25.0
h-milz May 1, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/workflows/codespell.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ jobs:
steps:
- uses: actions/checkout@v4
# codespell version should be kept in sync with .pre-commit-config.yml
- run: pip install --user codespell==2.2.6 tomli
- run: pip install --user codespell==2.4.1 tomli
- run: codespell

2 changes: 1 addition & 1 deletion .github/workflows/mpy_format.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ concurrency:

jobs:
test:
runs-on: ubuntu-20.04 # use 20.04 to get python2
runs-on: ubuntu-22.04 # use 22.04 to get python2
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand Down
33 changes: 33 additions & 0 deletions .github/workflows/ports_alif.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
name: alif port

on:
push:
pull_request:
paths:
- '.github/workflows/*.yml'
- 'tools/**'
- 'py/**'
- 'extmod/**'
- 'shared/**'
- 'lib/**'
- 'drivers/**'
- 'ports/alif/**'

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
build_alif:
strategy:
fail-fast: false
matrix:
ci_func: # names are functions in ci.sh
- alif_ae3_build
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install packages
run: source tools/ci.sh && ci_alif_setup
- name: Build ci_${{matrix.ci_func }}
run: source tools/ci.sh && ci_${{ matrix.ci_func }}
6 changes: 3 additions & 3 deletions .github/workflows/ports_esp32.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,13 +25,13 @@ jobs:
ci_func: # names are functions in ci.sh
- esp32_build_cmod_spiram_s2
- esp32_build_s3_c3
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4

- id: idf_ver
name: Read the ESP-IDF version
run: source tools/ci.sh && echo "IDF_VER=$IDF_VER" | tee "$GITHUB_OUTPUT"
name: Read the ESP-IDF version (including Python version)
run: source tools/ci.sh && echo "IDF_VER=${IDF_VER}-py${PYTHON_VER}" | tee "$GITHUB_OUTPUT"

- name: Cached ESP-IDF install
id: cache_esp_idf
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ports_mimxrt.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ concurrency:

jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
defaults:
run:
working-directory: 'micropython repo' # test build with space in path
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ports_nrf.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ concurrency:

jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ports_renesas-ra.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ concurrency:

jobs:
build_renesas_ra_board:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ports_stm32.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
- stm32_pyb_build
- stm32_nucleo_build
- stm32_misc_build
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand Down
27 changes: 20 additions & 7 deletions .github/workflows/ports_unix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ jobs:
run: tests/run-tests.py --print-failures

coverage_32bit:
runs-on: ubuntu-20.04 # use 20.04 to get libffi-dev:i386
runs-on: ubuntu-22.04 # use 22.04 to get libffi-dev:i386
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand All @@ -116,7 +116,7 @@ jobs:
run: tests/run-tests.py --print-failures

nanbox:
runs-on: ubuntu-20.04 # use 20.04 to get python2, and libffi-dev:i386
runs-on: ubuntu-22.04 # use 22.04 to get python2, and libffi-dev:i386
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand All @@ -142,7 +142,7 @@ jobs:
run: tests/run-tests.py --print-failures

stackless_clang:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand All @@ -156,7 +156,7 @@ jobs:
run: tests/run-tests.py --print-failures

float_clang:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand All @@ -173,6 +173,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
# Python 3.12 is the default for ubuntu-24.04, but that has compatibility issues with settrace tests.
# Can remove this step when ubuntu-latest uses a more recent Python 3.x as the default.
with:
python-version: '3.11'
- name: Build
run: source tools/ci.sh && ci_unix_settrace_build
- name: Run main test suite
Expand All @@ -185,6 +190,11 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
# Python 3.12 is the default for ubuntu-24.04, but that has compatibility issues with settrace tests.
# Can remove this step when ubuntu-latest uses a more recent Python 3.x as the default.
with:
python-version: '3.11'
- name: Build
run: source tools/ci.sh && ci_unix_settrace_stackless_build
- name: Run main test suite
Expand All @@ -209,7 +219,8 @@ jobs:
run: tests/run-tests.py --print-failures

qemu_mips:
runs-on: ubuntu-latest
# ubuntu-22.04 is needed for older libffi.
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand All @@ -223,7 +234,8 @@ jobs:
run: tests/run-tests.py --print-failures

qemu_arm:
runs-on: ubuntu-latest
# ubuntu-22.04 is needed for older libffi.
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand All @@ -237,7 +249,8 @@ jobs:
run: tests/run-tests.py --print-failures

qemu_riscv64:
runs-on: ubuntu-latest
# ubuntu-22.04 is needed for older libffi.
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Install packages
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/ruff.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
# ruff version should be kept in sync with .pre-commit-config.yaml
- run: pip install --user ruff==0.1.3
# ruff version should be kept in sync with .pre-commit-config.yaml & also micropython-lib
- run: pipx install ruff==0.11.6
- run: ruff check --output-format=github .
- run: ruff format --diff .
6 changes: 6 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -68,3 +68,9 @@
[submodule "lib/arduino-lib"]
path = lib/arduino-lib
url = https://github.com/arduino/arduino-lib-mpy.git
[submodule "lib/alif_ensemble-cmsis-dfp"]
path = lib/alif_ensemble-cmsis-dfp
url = https://github.com/alifsemi/alif_ensemble-cmsis-dfp.git
[submodule "lib/alif-security-toolkit"]
path = lib/alif-security-toolkit
url = https://github.com/micropython/alif-security-toolkit.git
6 changes: 3 additions & 3 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,14 +12,14 @@ repos:
verbose: true
stages: [commit-msg]
- repo: https://github.com/charliermarsh/ruff-pre-commit
# Version should be kept in sync with .github/workflows/ruff.yml
rev: v0.1.3
# Version should be kept in sync with .github/workflows/ruff.yml & also micropython-lib
rev: v0.11.6
hooks:
- id: ruff
- id: ruff-format
- repo: https://github.com/codespell-project/codespell
# Version should be kept in sync with .github/workflows/codespell.yml
rev: v2.2.6
rev: v2.4.1
hooks:
- id: codespell
name: Spellcheck for changed files (codespell)
Expand Down
52 changes: 43 additions & 9 deletions CODECONVENTIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -206,33 +206,65 @@ adhere to the existing style and use `tools/codeformat.py` to check any changes.
The main conventions, and things not enforceable via the auto-formatter, are
described below.

White space:
As the MicroPython code base is over ten years old, not every source file
conforms fully to these conventions. If making small changes to existing code,
then it's usually acceptable to follow the existing code's style. New code or
major changes should follow the conventions described here.

## White space

- Expand tabs to 4 spaces.
- Don't leave trailing whitespace at the end of a line.
- For control blocks (if, for, while), put 1 space between the
keyword and the opening parenthesis.
- Put 1 space after a comma, and 1 space around operators.

Braces:
## Braces

- Use braces for all blocks, even no-line and single-line pieces of
code.
- Put opening braces on the end of the line it belongs to, not on
a new line.
- For else-statements, put the else on the same line as the previous
closing brace.

Header files:
## Header files

- Header files should be protected from multiple inclusion with #if
directives. See an existing header for naming convention.

Names:
## Names

- Use underscore_case, not camelCase for all names.
- Use CAPS_WITH_UNDERSCORE for enums and macros.
- When defining a type use underscore_case and put '_t' after it.

Integer types: MicroPython runs on 16, 32, and 64 bit machines, so it's
important to use the correctly-sized (and signed) integer types. The
general guidelines are:
### Public names (declared in headers)

- MicroPython-specific names (especially any declared in `py/` and `extmod/`
directories) should generally start with `mp_` or `MP_`.
- Functions and variables declared in a header should generally share a longer
common prefix. Usually the prefix matches the file name (i.e. items defined in
`py/obj.c` are declared in `py/obj.h` and should be prefixed `mp_obj_`). There
are exceptions, for example where one header file contains declarations
implemented in multiple source files for expediency.

### Private names (specific to a single .c file)

- For static functions and variables exposed to Python (i.e. a static C function
that is wrapped in `MP_DEFINE_CONST_FUN_...` and attached to a module), use
the file-level shared common prefix, i.e. name them as if the function or
variable was not static.
- Other static definitions in source files (i.e. functions or variables defined
in a .c file that are only used within that .c file) don't need any prefix
(specifically: no `s_` or `_` prefix, and generally avoid adding the
file-level common prefix).

## Integer types

MicroPython runs on 16, 32, and 64 bit machines, so it's important to use the
correctly-sized (and signed) integer types. The general guidelines are:

- For most cases use mp_int_t for signed and mp_uint_t for unsigned
integer values. These are guaranteed to be machine-word sized and
therefore big enough to hold the value from a MicroPython small-int
Expand All @@ -241,11 +273,13 @@ general guidelines are:
- You can use int/uint, but remember that they may be 16-bits wide.
- If in doubt, use mp_int_t/mp_uint_t.

Comments:
## Comments

- Be concise and only write comments for things that are not obvious.
- Use `// ` prefix, NOT `/* ... */`. No extra fluff.

Memory allocation:
## Memory allocation

- Use m_new, m_renew, m_del (and friends) to allocate and free heap memory.
These macros are defined in py/misc.h.

Expand Down
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
The MIT License (MIT)

Copyright (c) 2013-2024 Damien P. George
Copyright (c) 2013-2025 Damien P. George

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
2 changes: 1 addition & 1 deletion docs/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@

# General information about the project.
project = "MicroPython"
copyright = "- The MicroPython Documentation is Copyright © 2014-2024, " + micropy_authors
copyright = "- The MicroPython Documentation is Copyright © 2014-2025, " + micropy_authors

# The version info for the project you're documenting, acts as replacement for
# |version| and |release|, also used in various other places throughout the
Expand Down
12 changes: 10 additions & 2 deletions docs/develop/natmod.rst
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,8 @@ options for the ``ARCH`` variable, see below):
* ``armv7emsp`` (ARM Thumb 2, single precision float, eg Cortex-M4F, Cortex-M7)
* ``armv7emdp`` (ARM Thumb 2, double precision float, eg Cortex-M7)
* ``xtensa`` (non-windowed, eg ESP8266)
* ``xtensawin`` (windowed with window size 8, eg ESP32)
* ``xtensawin`` (windowed with window size 8, eg ESP32, ESP32S3)
* ``rv32imc`` (RISC-V 32 bits with compressed instructions, eg ESP32C3, ESP32C6)

When compiling and linking the native .mpy file the architecture must be chosen
and the corresponding file can only be imported on that architecture. For more
Expand Down Expand Up @@ -69,6 +70,13 @@ The known limitations are:
So, if your C code has writable data, make sure the data is defined globally,
without an initialiser, and only written to within functions.

The native module is not automatically linked against the standard static libraries
like ``libm.a`` and ``libgcc.a``, which can lead to ``undefined symbol`` errors.
You can link the runtime libraries by setting ``LINK_RUNTIME = 1``
in your Makefile. Custom static libraries can also be linked by adding
``MPY_LD_FLAGS += -l path/to/library.a``. Note that these are linked into
the native module and will not be shared with other modules or the system.

Linker limitation: the native module is not linked against the symbol table of the
full MicroPython firmware. Rather, it is linked against an explicit table of exported
symbols found in ``mp_fun_table`` (in ``py/nativeglue.h``), that is fixed at firmware
Expand Down Expand Up @@ -172,7 +180,7 @@ The file ``Makefile`` contains:
# Source files (.c or .py)
SRC = factorial.c

# Architecture to build for (x86, x64, armv6m, armv7m, xtensa, xtensawin)
# Architecture to build for (x86, x64, armv6m, armv7m, xtensa, xtensawin, rv32imc)
ARCH = x64

# Include to get the rules for compiling and linking the module
Expand Down
Loading
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy