micropython/ports/mimxrt
robert-hh bbe25f4704 mimxrt: Support selection of PHY type and address.
Useful for boards without a PHY interface, where that has to be
attached. Like the Seed ARCH MIX board or Vision SOM. Phy drivers
supported so far are:

- KSZ8081
- DP83825
- LAN8720

More to come. Usage e.g.:
lan = LAN(phy_type=LAN.PHY_LAN8720, phy_addr=1)

The default values are those set in mpconfigboard.h.
2021-12-14 08:07:52 +01:00
..
boards mimxrt: Define UART 0 on MIMXRT boards. 2021-12-14 08:07:52 +01:00
hal mimxrt: Support PWM using the FLEXPWM and QTMR modules. 2021-11-24 13:48:27 +11:00
lwip_inc mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
mbedtls mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
modules mimxrt/sdcard: Implement SDCard driver. 2021-09-07 20:45:33 +02:00
Makefile mimxrt: Support PWM using the FLEXPWM and QTMR modules. 2021-11-24 13:48:27 +11:00
README.md mimxrt: Extend the help() message and README.md. 2021-10-25 23:52:08 +11:00
board_init.c mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
dma_channel.c mimxrt/dma_channel: Fix the DMA channel management. 2021-10-25 15:50:44 +11:00
dma_channel.h mimxrt/machine_spi: Add the SPI class to the machine module. 2021-06-26 22:14:47 +10:00
eth.c mimxrt: Support selection of PHY type and address. 2021-12-14 08:07:52 +01:00
eth.h mimxrt: Support selection of PHY type and address. 2021-12-14 08:07:52 +01:00
fatfs_port.c mimxrt/sdcard: Implement SDCard driver. 2021-09-07 20:45:33 +02:00
led.c mimxrt: Implement machine.Pin class. 2021-05-26 00:12:42 +10:00
led.h mimxrt: Implement machine.Pin class. 2021-05-26 00:12:42 +10:00
machine_adc.c mimxrt/machine_adc: Add the ADC class to the machine module. 2021-06-04 00:51:58 +10:00
machine_bitstream.c mimxrt: Fix cycle counter for time.ticks_cpu() and machine.bitstream(). 2021-10-25 15:50:44 +11:00
machine_i2c.c mimxrt/machine_i2c: Add hardware-based machine.I2C to machine module. 2021-07-15 00:36:31 +10:00
machine_led.c mimxrt/machine_led: Use mp_raise_msg_varg helper. 2021-07-15 00:12:41 +10:00
machine_pin.c mimxrt/machine_pin: Implement ioctl for Pin. 2021-08-16 15:03:50 +10:00
machine_pwm.c mimxrt: Support PWM using the FLEXPWM and QTMR modules. 2021-11-24 13:48:27 +11:00
machine_rtc.c all: Update to point to files in new shared/ directory. 2021-07-12 17:08:10 +10:00
machine_sdcard.c mimxrt/sdcard: Implement SDCard driver. 2021-09-07 20:45:33 +02:00
machine_spi.c mimxrt/machine_spi: Add the SPI class to the machine module. 2021-06-26 22:14:47 +10:00
machine_timer.c mimxrt/machine_timer: Leave the Timer clock source at IPG clock. 2021-06-03 13:03:02 +10:00
machine_uart.c mimxrt: Define UART 0 on MIMXRT boards. 2021-12-14 08:07:52 +01:00
machine_wdt.c mimxrt/modmachine: Implement machine.WDT() and machine.reset_cause(). 2021-10-25 15:43:56 +11:00
main.c mimxrt: Support PWM using the FLEXPWM and QTMR modules. 2021-11-24 13:48:27 +11:00
mimxrt_flash.c mimxrt/sdram: Add SDRAM support. 2021-10-22 08:23:24 +02:00
mimxrt_sdram.c mimxrt/sdram: Add SDRAM support. 2021-10-22 08:23:24 +02:00
modmachine.c mimxrt: Support PWM using the FLEXPWM and QTMR modules. 2021-11-24 13:48:27 +11:00
modmachine.h mimxrt: Support PWM using the FLEXPWM and QTMR modules. 2021-11-24 13:48:27 +11:00
modmimxrt.c mimxrt: Add dht_readinto() to the mimxrt module, and freeze dht.py. 2021-10-25 23:49:28 +11:00
modmimxrt.h mimxrt: Add flash storage support with VFS and littlefs filesystem. 2021-06-01 23:42:57 +10:00
moduos.c mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
modutime.c all: Update to point to files in new shared/ directory. 2021-07-12 17:08:10 +10:00
mpconfigport.h mimxrt: Support PWM using the FLEXPWM and QTMR modules. 2021-11-24 13:48:27 +11:00
mphalport.c mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
mphalport.h mimxrt: Support selection of PHY type and address. 2021-12-14 08:07:52 +01:00
mpnetworkport.c mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
network_lan.c mimxrt: Support selection of PHY type and address. 2021-12-14 08:07:52 +01:00
pendsv.c mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
pendsv.h mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
pin.c mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
pin.h mimxrt/sdram: Add SDRAM support. 2021-10-22 08:23:24 +02:00
qstrdefsport.h mimxrt: Add new, minimal port to NXP i.MX RT series CPUs. 2020-03-11 15:34:13 +11:00
sdcard.c mimxrt/sdcard: Implement SDCard driver. 2021-09-07 20:45:33 +02:00
sdcard.h mimxrt/sdcard: Implement SDCard driver. 2021-09-07 20:45:33 +02:00
systick.c mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
systick.h mimxrt/eth: Add LAN support and integrate the network module. 2021-10-25 15:14:26 +11:00
ticks.c mimxrt: Support PWM using the FLEXPWM and QTMR modules. 2021-11-24 13:48:27 +11:00
ticks.h mimxrt: Improve ticks and sleep functions using GPT. 2021-05-18 22:36:32 +10:00
tusb_config.h ports: Update to build with new tinyusb. 2021-02-12 12:50:36 +11:00
tusb_port.c ports: Rename USBD_VID/PID config macros to MICROPY_HW_USB_VID/PID. 2021-08-07 23:13:55 +10:00

README.md

Port of MicroPython to NXP iMX RT 10xx

Currently supports Teensy 4.0, Teensy 4.1, and the MIMXRT1010_EVK, MIMXRT1020_EVK, MIMXRT1050_EVK, MIMXRT1060_EVK and MIMXRT1064_EVK boards.

Features:

  • REPL over USB VCP
  • machine.ADC
  • machine.I2C
  • machine.LED
  • machine.Pin
  • machine.PWM
  • machine.RTC
  • machine.SDCard
  • machine.SPI
  • machine.Signal
  • machine.SoftI2C
  • machine.SoftSPI
  • machine.Timer
  • machine.UART
  • LFS2 file system at the internal Flash
  • SDCard support (not on MIMXRT1010_EVK)
  • Ethernet (not on Teensy 4.0 and MIMXRT1010_EVK)

Known issues:

TODO:

  • More peripherals (Counter, I2S, CAN, etc)
  • More Python options