summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwallarug <wallarug@coliemore.com.au>2019-09-26 20:02:09 +1000
committerwallarug <wallarug@coliemore.com.au>2019-09-26 20:02:09 +1000
commit5cd10b3ba0c436ec8a38f842530def335412472c (patch)
treee64567d4e31412723ba9ab66a9be9bb360a74ccd
parent39265fccf3c0ccc6594499fedd55fdfc716f03d4 (diff)
updated robohatmm1_m0
-rw-r--r--ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.h2
-rw-r--r--ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.mk4
-rw-r--r--ports/atmel-samd/boards/robohatmm1_m0/pins.c31
3 files changed, 20 insertions, 17 deletions
diff --git a/ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.h b/ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.h
index 606236a9c..7de26cffe 100644
--- a/ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.h
+++ b/ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.h
@@ -1,4 +1,4 @@
-#define MICROPY_HW_BOARD_NAME "Robo HAT MM1"
+#define MICROPY_HW_BOARD_NAME "Robo HAT MM1 M0"
#define MICROPY_HW_MCU_NAME "samd21g18"
#define MICROPY_HW_LED_STATUS (&pin_PB22)
diff --git a/ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.mk b/ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.mk
index e4f688f1e..e703fbfb9 100644
--- a/ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.mk
+++ b/ports/atmel-samd/boards/robohatmm1_m0/mpconfigboard.mk
@@ -1,7 +1,7 @@
LD_FILE = boards/samd21x18-bootloader-external-flash-crystalless.ld
USB_VID = 0x1209
USB_PID = 0x4D43
-USB_PRODUCT = "Robo HAT MM1"
+USB_PRODUCT = "Robo HAT MM1 M0"
USB_MANUFACTURER = "Robotics Masters"
CHIP_VARIANT = SAMD21G18A
@@ -23,7 +23,7 @@ CFLAGS_INLINE_LIMIT = 60
SUPEROPT_GC = 0
# Include these Python libraries in firmware.
-FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
+#FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_BusDevice
FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_NeoPixel
#FROZEN_MPY_DIRS += $(TOP)/frozen/Adafruit_CircuitPython_INA219
#FROZEN_MPY_DIRS += $(TOP)/frozen/RoboticsMasters_CircuitPython_MPU9250
diff --git a/ports/atmel-samd/boards/robohatmm1_m0/pins.c b/ports/atmel-samd/boards/robohatmm1_m0/pins.c
index 496efaf8d..f8586e10a 100644
--- a/ports/atmel-samd/boards/robohatmm1_m0/pins.c
+++ b/ports/atmel-samd/boards/robohatmm1_m0/pins.c
@@ -1,5 +1,5 @@
#include "shared-bindings/board/__init__.h"
-
+// Version 2.4
STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
// SERVO Pins
{ MP_ROM_QSTR(MP_QSTR_SERVO1), MP_ROM_PTR(&pin_PA18) },
@@ -28,8 +28,6 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_NEOPIXEL), MP_ROM_PTR(&pin_PB23) },
{ MP_ROM_QSTR(MP_QSTR_LED), MP_ROM_PTR(&pin_PB22) },
- { MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PA22) },
- { MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PA23) },
{ MP_ROM_QSTR(MP_QSTR_TX), MP_ROM_PTR(&pin_PB02) },
{ MP_ROM_QSTR(MP_QSTR_RX), MP_ROM_PTR(&pin_PB03) },
@@ -49,15 +47,27 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
{ MP_ROM_QSTR(MP_QSTR_UART_CTS), MP_ROM_PTR(&pin_PA06) },
{ MP_ROM_QSTR(MP_QSTR_UART_RTS), MP_ROM_PTR(&pin_PA07) },
+ // I2C on SERCOM1 (External Connector)
+ { MP_ROM_QSTR(MP_QSTR_SDA1), MP_ROM_PTR(&pin_PA00) },
+ { MP_ROM_QSTR(MP_QSTR_SCL1), MP_ROM_PTR(&pin_PA01) },
+
+ // UART on SERCOM1 or SERCOM3 (Raspberry Pi) - broken on V2.3
+ { MP_ROM_QSTR(MP_QSTR_TX1), MP_ROM_PTR(&pin_PA16) },
+ { MP_ROM_QSTR(MP_QSTR_RX1), MP_ROM_PTR(&pin_PA17) },
+ { MP_ROM_QSTR(MP_QSTR_PI_RX), MP_ROM_PTR(&pin_PA16) },
+ { MP_ROM_QSTR(MP_QSTR_PI_TX), MP_ROM_PTR(&pin_PA17) },
+
// SPI Flash on SERCOM2
{ MP_ROM_QSTR(MP_QSTR_FLASH_SCK), MP_ROM_PTR(&pin_PA13) },
{ MP_ROM_QSTR(MP_QSTR_FLASH_MISO), MP_ROM_PTR(&pin_PA14) },
{ MP_ROM_QSTR(MP_QSTR_FLASH_MOSI), MP_ROM_PTR(&pin_PA12) },
{ MP_ROM_QSTR(MP_QSTR_FLASH_CS), MP_ROM_PTR(&pin_PA15) },
- // I2C on SERCOM3
- { MP_ROM_QSTR(MP_QSTR_SDA1), MP_ROM_PTR(&pin_PA00) },
- { MP_ROM_QSTR(MP_QSTR_SCL1), MP_ROM_PTR(&pin_PA01) },
+ // I2C on SERCOM3 or SERCOM5 (RPi & Internal)
+ { MP_ROM_QSTR(MP_QSTR_SDA), MP_ROM_PTR(&pin_PA22) },
+ { MP_ROM_QSTR(MP_QSTR_SCL), MP_ROM_PTR(&pin_PA23) },
+ { MP_ROM_QSTR(MP_QSTR_PI_SDA), MP_ROM_PTR(&pin_PA22) },
+ { MP_ROM_QSTR(MP_QSTR_PI_SCL), MP_ROM_PTR(&pin_PA23) },
// SPI on SERCOM4
{ MP_ROM_QSTR(MP_QSTR_MOSI), MP_ROM_PTR(&pin_PB08) },
@@ -68,20 +78,13 @@ STATIC const mp_rom_map_elem_t board_global_dict_table[] = {
// GPS on SERCOM5
{ MP_ROM_QSTR(MP_QSTR_GPS_TX), MP_ROM_PTR(&pin_PB02) },
{ MP_ROM_QSTR(MP_QSTR_GPS_RX), MP_ROM_PTR(&pin_PB03) },
- { MP_ROM_QSTR(MP_QSTR_GPS_SDA), MP_ROM_PTR(&pin_PA00) },
- { MP_ROM_QSTR(MP_QSTR_GPS_SCL), MP_ROM_PTR(&pin_PA01) },
// Raspberry Pi
{ MP_ROM_QSTR(MP_QSTR_PI_GP25), MP_ROM_PTR(&pin_PA30) },
{ MP_ROM_QSTR(MP_QSTR_SWCLK), MP_ROM_PTR(&pin_PA30) },
{ MP_ROM_QSTR(MP_QSTR_PI_GP24), MP_ROM_PTR(&pin_PA31) },
{ MP_ROM_QSTR(MP_QSTR_SWDIO), MP_ROM_PTR(&pin_PA31) },
- { MP_ROM_QSTR(MP_QSTR_RX1), MP_ROM_PTR(&pin_PA16) },
- { MP_ROM_QSTR(MP_QSTR_PI_RX), MP_ROM_PTR(&pin_PA16) },
- { MP_ROM_QSTR(MP_QSTR_TX1), MP_ROM_PTR(&pin_PA17) },
- { MP_ROM_QSTR(MP_QSTR_PI_TX), MP_ROM_PTR(&pin_PA17) },
-
-
+
{ MP_ROM_QSTR(MP_QSTR_I2C), MP_ROM_PTR(&board_i2c_obj) },
{ MP_ROM_QSTR(MP_QSTR_SPI), MP_ROM_PTR(&board_spi_obj) },
//{ MP_ROM_QSTR(MP_QSTR_UART), MP_ROM_PTR(&board_uart_obj) },