forked from micropython/micropython
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
MicroROS on Espressif #9955
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
Merged
Merged
MicroROS on Espressif #9955
Changes from 20 commits
Commits
Show all changes
25 commits
Select commit
Hold shift + click to select a range
048b481
gitignore change
hierophect 32baa39
add microros precompiled libs
hierophect 9b2ba81
Add build flags
hierophect 1e3b376
Recompile microros for s3, correct includes
hierophect a2043a5
Fix include conflicts and build warnings
hierophect 642bc4f
remove old microros-lib directory
hierophect f079d96
Add submodule for prebuilt MicroROS libs
hierophect 0f07ab9
Initial shared-bindings implementation
hierophect c555529
Fix module registration and bindings
hierophect 133c2e2
Migrate to new board, fix data loss
hierophect c006012
Add DevkitC ros definition
hierophect 75ed059
Fix incorrect attributions
hierophect cdb2a0c
Fix ros agent issue with RMW
hierophect 031ca37
Add agent information to init
hierophect 1cccbc7
Add reset support
hierophect fed0729
Add documentation
hierophect 1a2f0ec
Pre-commit formatting
hierophect 161c376
Translations
hierophect 35431bc
Fix missed pre-commit formatting
hierophect 5924719
register board aliases with VID/PID checker
hierophect 635c8b1
Requested fixes to exceptions, docs, config
hierophect 7276e2a
Fix module config
hierophect 03c682a
Merge remote-tracking branch 'upstream/main' into esp-microros
hierophect a46d8de
manual zephyr changes
hierophect 71463fa
Minor fixes
hierophect File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -9,6 +9,7 @@ | |
*.o | ||
*.a | ||
!atmel-samd/asf/**/*.a | ||
!ports/espressif/microros-lib/**/*.a | ||
*.elf | ||
*.bin | ||
!*.toml.bin | ||
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
9 changes: 9 additions & 0 deletions
9
ports/espressif/boards/espressif_esp32s3_devkitc_1_n8r2_ros/board.c
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
// This file is part of the CircuitPython project: https://circuitpython.org | ||
// | ||
// SPDX-FileCopyrightText: Copyright (c) 2020 Scott Shawcroft for Adafruit Industries | ||
// | ||
// SPDX-License-Identifier: MIT | ||
|
||
#include "supervisor/board.h" | ||
|
||
// Use the MP_WEAK supervisor/shared/board.c versions of routines not defined here. |
12 changes: 12 additions & 0 deletions
12
ports/espressif/boards/espressif_esp32s3_devkitc_1_n8r2_ros/jtagcfg.cfg
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# SPDX-License-Identifier: GPL-2.0-or-later | ||
# | ||
# Example OpenOCD configuration file for ESP32-S3 connected via ESP USB Bridge board | ||
# | ||
# For example, OpenOCD can be started for ESP32-S3 debugging on | ||
# | ||
# openocd -f board/esp32s3-bridge.cfg | ||
# | ||
|
||
# Source the ESP32-S3 configuration file | ||
source [find target/esp32s3.cfg] | ||
adapter speed 1000 | ||
hierophect marked this conversation as resolved.
Show resolved
Hide resolved
|
16 changes: 16 additions & 0 deletions
16
ports/espressif/boards/espressif_esp32s3_devkitc_1_n8r2_ros/mpconfigboard.h
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,16 @@ | ||
// This file is part of the CircuitPython project: https://circuitpython.org | ||
// | ||
// SPDX-FileCopyrightText: Copyright (c) 2019 Scott Shawcroft for Adafruit Industries | ||
// | ||
// SPDX-License-Identifier: MIT | ||
|
||
#pragma once | ||
|
||
// Micropython setup | ||
#define MICROPY_HW_BOARD_NAME "ESP32-S3-DevKitC-1-N8R2 (ROS version)" | ||
#define MICROPY_HW_MCU_NAME "ESP32S3" | ||
|
||
#define MICROPY_HW_NEOPIXEL (&pin_GPIO48) | ||
|
||
#define DEFAULT_UART_BUS_RX (&pin_GPIO44) | ||
#define DEFAULT_UART_BUS_TX (&pin_GPIO43) |
43 changes: 43 additions & 0 deletions
43
ports/espressif/boards/espressif_esp32s3_devkitc_1_n8r2_ros/mpconfigboard.mk
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,43 @@ | ||
USB_VID = 0x303A | ||
USB_PID = 0x7003 | ||
USB_PRODUCT = "ESP32-S3-DevKitC-1-N8R2 CPY/ROS" | ||
USB_MANUFACTURER = "Espressif" | ||
|
||
IDF_TARGET = esp32s3 | ||
|
||
CIRCUITPY_ESP_FLASH_SIZE = 8MB | ||
CIRCUITPY_ESP_FLASH_MODE = qio | ||
CIRCUITPY_ESP_FLASH_FREQ = 80m | ||
|
||
CIRCUITPY_ESP_PSRAM_SIZE = 2MB | ||
CIRCUITPY_ESP_PSRAM_MODE = qio | ||
CIRCUITPY_ESP_PSRAM_FREQ = 80m | ||
|
||
CIRCUITPY_RCLCPY = 1 | ||
|
||
# turn off for debug flash space | ||
CIRCUITPY_ESPCAMERA = 0 | ||
CIRCUITPY_AESIO = 0 | ||
CIRCUITPY_AUDIOBUSIO = 0 | ||
CIRCUITPY_AUDIOCORE = 0 | ||
CIRCUITPY_AUDIOIO = 0 | ||
CIRCUITPY_AUDIOMIXER = 0 | ||
CIRCUITPY_AUDIOMP3 = 0 | ||
CIRCUITPY_BLEIO_HCI = 0 | ||
CIRCUITPY_DISPLAYIO = 0 | ||
CIRCUITPY_FLOPPYIO = 0 | ||
CIRCUITPY_FRAMEBUFFERIO = 0 | ||
CIRCUITPY_PIXELMAP = 0 | ||
CIRCUITPY_GETPASS = 0 | ||
CIRCUITPY_KEYPAD = 0 | ||
CIRCUITPY_MSGPACK = 0 | ||
CIRCUITPY_PIXELBUF = 0 | ||
CIRCUITPY_PS2IO = 0 | ||
CIRCUITPY_RGBMATRIX = 0 | ||
CIRCUITPY_RAINBOWIO = 0 | ||
CIRCUITPY_ROTARYIO = 0 | ||
CIRCUITPY_TOUCHIO = 0 | ||
CIRCUITPY_USB_HID = 0 | ||
CIRCUITPY_USB_MIDI = 0 | ||
CIRCUITPY_WARNINGS = 0 | ||
CIRCUITPY_ULAB = 0 | ||
hierophect marked this conversation as resolved.
Show resolved
Hide resolved
|
55 changes: 55 additions & 0 deletions
55
ports/espressif/boards/espressif_esp32s3_devkitc_1_n8r2_ros/pins.c
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,55 @@ | ||
// This file is part of the CircuitPython project: https://circuitpython.org | ||
// | ||
// SPDX-FileCopyrightText: Copyright (c) 2020 Scott Shawcroft for Adafruit Industries | ||
// | ||
// SPDX-License-Identifier: MIT | ||
|
||
#include "shared-bindings/board/__init__.h" | ||
|
||
static const mp_rom_map_elem_t board_module_globals_table[] = { | ||
CIRCUITPYTHON_BOARD_DICT_STANDARD_ITEMS | ||
|
||
{ MP_ROM_QSTR(MP_QSTR_IO0), MP_ROM_PTR(&pin_GPIO0) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO1), MP_ROM_PTR(&pin_GPIO1) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO2), MP_ROM_PTR(&pin_GPIO2) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO3), MP_ROM_PTR(&pin_GPIO3) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO4), MP_ROM_PTR(&pin_GPIO4) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO5), MP_ROM_PTR(&pin_GPIO5) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO6), MP_ROM_PTR(&pin_GPIO6) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO7), MP_ROM_PTR(&pin_GPIO7) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO8), MP_ROM_PTR(&pin_GPIO8) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO9), MP_ROM_PTR(&pin_GPIO9) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO10), MP_ROM_PTR(&pin_GPIO10) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO11), MP_ROM_PTR(&pin_GPIO11) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO12), MP_ROM_PTR(&pin_GPIO12) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO13), MP_ROM_PTR(&pin_GPIO13) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO14), MP_ROM_PTR(&pin_GPIO14) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO15), MP_ROM_PTR(&pin_GPIO15) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO16), MP_ROM_PTR(&pin_GPIO16) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO17), MP_ROM_PTR(&pin_GPIO17) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO18), MP_ROM_PTR(&pin_GPIO18) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO19), MP_ROM_PTR(&pin_GPIO19) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO20), MP_ROM_PTR(&pin_GPIO20) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO21), MP_ROM_PTR(&pin_GPIO21) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO35), MP_ROM_PTR(&pin_GPIO35) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO36), MP_ROM_PTR(&pin_GPIO36) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO37), MP_ROM_PTR(&pin_GPIO37) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO38), MP_ROM_PTR(&pin_GPIO38) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO39), MP_ROM_PTR(&pin_GPIO39) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO40), MP_ROM_PTR(&pin_GPIO40) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO41), MP_ROM_PTR(&pin_GPIO41) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO42), MP_ROM_PTR(&pin_GPIO42) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO43), MP_ROM_PTR(&pin_GPIO43) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO44), MP_ROM_PTR(&pin_GPIO44) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO45), MP_ROM_PTR(&pin_GPIO45) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO46), MP_ROM_PTR(&pin_GPIO46) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO47), MP_ROM_PTR(&pin_GPIO47) }, | ||
{ MP_ROM_QSTR(MP_QSTR_IO48), MP_ROM_PTR(&pin_GPIO48) }, | ||
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_GPIO48) }, | ||
|
||
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_GPIO43) }, | ||
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_GPIO44) }, | ||
|
||
{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) }, | ||
}; | ||
MP_DEFINE_CONST_DICT(board_module_globals, board_module_globals_table); |
14 changes: 14 additions & 0 deletions
14
ports/espressif/boards/espressif_esp32s3_devkitc_1_n8r2_ros/sdkconfig
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# | ||
# Espressif IoT Development Framework Configuration | ||
# | ||
# | ||
# Component config | ||
# | ||
# | ||
# LWIP | ||
# | ||
# end of LWIP | ||
|
||
# end of Component config | ||
|
||
# end of Espressif IoT Development Framework Configuration |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.