{"id":22345015,"url":"https://github.com/seeed-studio/arduinocore-imxrt","last_synced_at":"2025-07-30T03:31:55.077Z","repository":{"id":56163472,"uuid":"199955574","full_name":"Seeed-Studio/ArduinoCore-imxrt","owner":"Seeed-Studio","description":"Seeed code for the  NXP i.MX RT Series  crossover processor on Arduino ","archived":true,"fork":false,"pushed_at":"2024-10-08T10:31:39.000Z","size":38319,"stargazers_count":13,"open_issues_count":0,"forks_count":7,"subscribers_count":14,"default_branch":"master","last_synced_at":"2025-04-05T00:15:12.850Z","etag":null,"topics":["arduino-ide","arduinocore-imxrt","imxrt","imxrt1052","seeed"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Seeed-Studio.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-08-01T01:41:59.000Z","updated_at":"2024-10-15T07:57:25.000Z","dependencies_parsed_at":"2023-01-18T22:31:11.359Z","dependency_job_id":null,"html_url":"https://github.com/Seeed-Studio/ArduinoCore-imxrt","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/Seeed-Studio/ArduinoCore-imxrt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Seeed-Studio%2FArduinoCore-imxrt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Seeed-Studio%2FArduinoCore-imxrt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Seeed-Studio%2FArduinoCore-imxrt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Seeed-Studio%2FArduinoCore-imxrt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Seeed-Studio","download_url":"https://codeload.github.com/Seeed-Studio/ArduinoCore-imxrt/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Seeed-Studio%2FArduinoCore-imxrt/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267803980,"owners_count":24146527,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-30T02:00:09.044Z","response_time":70,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arduino-ide","arduinocore-imxrt","imxrt","imxrt1052","seeed"],"created_at":"2024-12-04T09:16:00.557Z","updated_at":"2025-07-30T03:31:50.057Z","avatar_url":"https://github.com/Seeed-Studio.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Arduino Core for Seeed i.MX RT Series Boards\n\nThis repository contains the Arduino BSP for Seeed i.MX RT Series:\n- [Arch Mix](https://www.seeedstudio.com/Arch-Mix-p-2901.html)\n## How to load the bootloader\n   FYI [here](https://wiki.seeedstudio.com/Arch_Mix/#flashing-arduino-bootloader-to-arch-mix)\n\n## Add the imxrt-based board to the Arduino IDE\n\n### Step 1. Download the latest Arduino IDE\n\nYou need a Arduino IDE that after version 1.6.4, please download one if there's no Arduino IDE in your computer.\n\n[![](https://raw.githubusercontent.com/SeeedDocument/Seeeduino_Stalker_V3_1/master/images/Download_IDE.png)](https://www.arduino.cc/en/Main/Software)\n\n### Step 2. Setting your Arduino IDE\n\nOpen your Arudino IDE, click on **File \u003e Preferences**, and copy below url to *Additional Boards Manager URLs*\n\n```\nhttps://files.seeedstudio.com/arduino/package_seeeduino_boards_index.json\n```\n\n## Build ArduinoCore-imxrt with cmake\n\n```\ngit clone https://github.com/seeed-Studio/ArduinoCore-imxrt \ncd ArduinoCore-imxrt \nmkdir -p examples/Blink\ntouch  examples/Blink/Blink.ino  #You can write your own arduino code here\nmkdir build \u0026\u0026 cd build\n# Make sure you cross-compile the toolchain with the correct path\ncmake .. -DPROJ=Blink -DTOOLCHAIN=~/gcc-arm-none-eabi/bin -DBOARD=arch_mix -DCPU=MIMXRT1052DVL6B\n```\n## Add the imxrt-based board to the platformIO\n\nArduincore-imxrt supports not only ArduinoIDE development, but also  [PlatformIO](https://platformio.org/) platform. PlatformIO is an open source ecosystem for IoT development. **Currently, you need to manually configure ArduinoCore-imxrt to the platformIO platform.**\n\n### step 1. Install platformIO  IDE \n\nyou can follow this [guide](https://docs.platformio.org/en/latest/ide/pioide.html).\n\n### step 2. Download the following resources\n\n- [platform-nxpimxrt](https://github.com/Seeed-Studio/platform-nxpimxrt)\n\n- [ArduinoCore-imxrt](https://github.com/Seeed-Studio/ArduinoCore-imxrt)\n\n- [flash tool](https://github.com/Seeed-Studio/BOSSA)\n\n  Download the version according to your system.\n\n  - [Windows](https://github.com/Seeed-Studio/BOSSA/releases/download/1.9.1-seeeduino/bossac-1.9.1-seeeduino-windows.tar.bz2)\n  - [Linux](https://github.com/Seeed-Studio/BOSSA/releases/download/1.9.1-seeeduino/bossac-1.9.1-seeeduino-linux.tar.gz)\n\n  - [Mac OS](https://github.com/Seeed-Studio/BOSSA/releases/download/1.9.1-seeeduino/bossac-1.9.1-seeeduino-drawin.tar.gz)\n\n### step 3. Extract the corresponding file to the corresponding directory\n\n- Find the installation directory of platformIO IDE. \n\n  Usually its will be in the user directory, which name  \".platformio\"\n\n- Extract the platform-imxrt  to [user]/.platformio/platforms/\n- Extract  the ArduinoCore-imxrt to [user]/.platformio/packages/\n- Extract  the flash tool to [user]/.platformio/packages/\n\n### step 4. Create the platformIO project\n\n![GIF 2019-10-15 14-53-19](https://github.com/Seeed-Studio/ArduinoCore-imxrt/blob/master/extras/images/GIF%202019-10-15%2014-53-19.gif?raw=true)\n\n## Develop using the **SDK**\n\nYou can develop your applications using the SDK Whether you're on platform IDE or Arduino IDE.\n\n```c++\nextern \"C\"\n{\n  #include \"clock_config.h\"\n  #include \"board.h\"\n  #include \"system_MIMXRT1052.h\"\n  #include \"virtual_com.h\"\n  #include \"fsl_iomuxc.h\"\n  #include \"fsl_gpio.h\"\n}\n//USER_LED_R\n#define EXAMPLE_LED_GPIO    GPIO1\n#define EXAMPLE_LED_GPIO_PIN    9\n\n/*******************************************************************************\n * Variables\n ******************************************************************************/\nvolatile uint32_t g_systickCounter;\n\nvolatile bool g_pinSet = false;\n/*******************************************************************************\n * Code\n ******************************************************************************/\nextern \"C\"\n{\n// ISR must complier with C\nvoid SysTick_Handler(void)\n{\n    if (g_systickCounter != 0U)\n    {\n        g_systickCounter--;\n    }\n}\n}\n\nvoid SysTick_DelayTicks(uint32_t n)\n{\n    g_systickCounter = n;\n    while (g_systickCounter != 0U)\n    {\n    }\n}\n\n\nvoid LED_Init()\n{\n  CLOCK_EnableClock(kCLOCK_Iomuxc);       \n  IOMUXC_SetPinMux(\n      IOMUXC_GPIO_AD_B0_09_GPIO1_IO09,        \n      0U);                                   \n  IOMUXC_SetPinConfig(\n      IOMUXC_GPIO_AD_B0_09_GPIO1_IO09,      \n      0x10B0U);     \n  // OUTPUT MODE\n  gpio_pin_config_t led_config = {kGPIO_DigitalOutput, 0, kGPIO_NoIntmode};\n  GPIO_PinInit(EXAMPLE_LED_GPIO, EXAMPLE_LED_GPIO_PIN, \u0026led_config);                         \n}\n\nint main()\n{\n    BOARD_BootClockRUN();\n    SystemCoreClockUpdate();\n     /* Set systick reload value to generate 1ms interrupt */\n    if (SysTick_Config(SystemCoreClock / 1000U))\n    {\n        while (1)\n        {\n        }\n    }\n    vcom_cdc_init(); // keep it for auto into bootloader next times\n    \n    while (1)\n    {\n        /* Delay 1000 ms */\n        SysTick_DelayTicks(1000U);\n        if (g_pinSet)\n        {\n            GPIO_PinWrite(EXAMPLE_LED_GPIO, EXAMPLE_LED_GPIO_PIN, 0U);\n            g_pinSet = false;\n        }\n        else\n        {\n            GPIO_PinWrite(EXAMPLE_LED_GPIO, EXAMPLE_LED_GPIO_PIN, 1U);\n            g_pinSet = true;    \n        }\n    }\n\n}\n```\n\n## FAQ\nArduinoCore-imxrt is a very interesting software project to help all of you develop High performance MCU applications in an easier way. We can't guarantee that there is no any of bug.  If you encounter any compatibility issues or have any new ideas, feel free to check our [GitHub link](https://github.com/Seeed-Studio/ArduinoCore-imxrt/issues) and forum to communicate with us, we will try our best to solve the problems you have encountered. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseeed-studio%2Farduinocore-imxrt","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fseeed-studio%2Farduinocore-imxrt","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fseeed-studio%2Farduinocore-imxrt/lists"}