Skip to content

Commit e347a4a

Browse files
authored
fixed time.h import, added Arduino UNO R4 minima (USB), Arduino UNO R4 WiFi (USB and WiFi), Arduino Giga R1 (USB and WiFi) (#1712)
* fixes time.h import * added support for Arduino GIGA R1 over WiFi * examples with giga r1 * uint -> uint32_t, added uno r4 wifi * added uno r4 into the example * added uno r4 family into library properties * led builtin check * added boards into readme * updated ci * fix typo * updated cli version * force update index * reverted cli
1 parent 97d2013 commit e347a4a

File tree

8 files changed

+42
-19
lines changed

8 files changed

+42
-19
lines changed

.github/workflows/ci.yml

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -35,10 +35,15 @@ jobs:
3535
curl -fsSL https://www.pjrc.com/teensy/package_teensy_index.json -o /github/home/.arduino15/package_teensy_index.json
3636
curl -fsSL https://files.seeedstudio.com/arduino/package_seeeduino_boards_index.json -o /github/home/.arduino15/package_seeeduino_boards_index.json
3737
export PATH=$PATH:/github/workspace/bin:/__w/micro_ros_arduino/micro_ros_arduino/bin
38+
3839
arduino-cli core install OpenCR:OpenCR -v
3940
arduino-cli core install arduino:samd -v
4041
arduino-cli core install arduino:sam -v
41-
arduino-cli core install arduino:mbed -v
42+
arduino-cli core install arduino:mbed_giga -v
43+
arduino-cli core install arduino:mbed_rp2040 -v
44+
arduino-cli core install arduino:mbed_portenta -v
45+
arduino-cli core install arduino:renesas_uno -v
46+
arduino-cli core install arduino:mbed_nano -v
4247
arduino-cli core install esp32:esp32 -v
4348
arduino-cli core install teensy:[email protected] -v
4449
arduino-cli core install Seeeduino:samd -v
@@ -65,10 +70,10 @@ jobs:
6570
arduino-cli compile --fqbn teensy:avr:teensy41 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_time_sync -v
6671
arduino-cli compile --fqbn teensy:avr:teensy41 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_types_handling -v
6772
# Build one demo for each platform
68-
arduino-cli compile --fqbn arduino:mbed:nanorp2040connect /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
69-
arduino-cli compile --fqbn arduino:mbed:nanorp2040connect /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_decibels -v
70-
arduino-cli compile --fqbn arduino:mbed:nanorp2040connect /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_IMU_ML -v
71-
arduino-cli compile --fqbn arduino:mbed:nanorp2040connect /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi -v
73+
arduino-cli compile --fqbn arduino:mbed_nano:nanorp2040connect /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
74+
arduino-cli compile --fqbn arduino:mbed_nano:nanorp2040connect /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_decibels -v
75+
arduino-cli compile --fqbn arduino:mbed_nano:nanorp2040connect /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_IMU_ML -v
76+
arduino-cli compile --fqbn arduino:mbed_nano:nanorp2040connect /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi -v
7277
arduino-cli compile --fqbn teensy:avr:teensy31 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
7378
arduino-cli compile --fqbn teensy:avr:teensy35 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
7479
arduino-cli compile --fqbn teensy:avr:teensy36 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
@@ -77,10 +82,16 @@ jobs:
7782
arduino-cli compile --fqbn arduino:samd:arduino_zero_native /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
7883
arduino-cli compile --fqbn arduino:sam:arduino_due_x /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
7984
# arduino-cli compile --fqbn arduino:mbed:envie_m4 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
80-
arduino-cli compile --fqbn arduino:mbed:envie_m7 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
81-
arduino-cli compile --fqbn arduino:mbed:envie_m7 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi -v
85+
arduino-cli compile --fqbn arduino:mbed_portenta:envie_m7 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
86+
arduino-cli compile --fqbn arduino:mbed_portenta:envie_m7 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi -v
8287
arduino-cli compile --fqbn esp32:esp32:esp32 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
8388
arduino-cli compile --fqbn esp32:esp32:esp32 /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi -v
8489
arduino-cli compile --fqbn Seeeduino:samd:seeed_wio_terminal /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi -v
90+
arduino-cli compile --fqbn arduino:mbed_giga:giga /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
91+
arduino-cli compile --fqbn arduino:mbed_giga:giga /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi -v
92+
arduino-cli compile --fqbn arduino:renesas_uno:minima /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
93+
arduino-cli compile --fqbn arduino:renesas_uno:unor4wifi /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher -v
94+
arduino-cli compile --fqbn arduino:renesas_uno:unor4wifi /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi -v
8595
# Build micro-ros_publisher-wifi_at for WiFi non-native board with ESP-AT
86-
arduino-cli compile --fqbn arduino:mbed:pico /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi_at -v
96+
arduino-cli compile --fqbn arduino:mbed_rp2040:pico /github/home/Arduino/libraries/micro_ros_arduino/examples/micro-ros_publisher_wifi_at -v
97+

README.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,10 @@ Community contributed boards are:
4848
| [Raspberry Pi Pico](https://www.raspberrypi.com/documentation/microcontrollers/) | - | [@maehara-keisuke](https://github.com/maehara-keisuke) | with [ESP-AT](https://www.espressif.com/en/products/sdks/esp-at/overview) | `colcon_verylowmem.meta` |
4949
| [Seeed Studio XIAO SAMD21](https://wiki.seeedstudio.com/Seeeduino-XIAO/) | - | [@maehara-keisuke](https://github.com/maehara-keisuke) | with [ESP-AT](https://www.espressif.com/en/products/sdks/esp-at/overview) | `colcon_verylowmem.meta` |
5050
| [Seeed Studio XIAO RP2040](https://wiki.seeedstudio.com/XIAO-RP2040/) | - | [@maehara-keisuke](https://github.com/maehara-keisuke) | with [ESP-AT](https://www.espressif.com/en/products/sdks/esp-at/overview) | `colcon_verylowmem.meta` |
51+
| [Arduino Giga R1](https://store.arduino.cc/products/giga-r1-wifi) | - | [@gbr1](https://github.com/gbr1) | | `colcon.meta` |
52+
| [Arduino UNO R4 WiFi](https://store.arduino.cc/products/uno-r4-wifi) | - | [@gbr1](https://github.com/gbr1) | | `colcon.meta` |
53+
| [Arduino UNO R4 Minima](https://store.arduino.cc/products/uno-r4-minima) | - | [@gbr1](https://github.com/gbr1) | | `colcon.meta` |
54+
5155

5256
You can find the available precompiled ROS 2 types for messages and services in [available_ros2_types](available_ros2_types).
5357

examples/micro-ros_publisher_wifi/micro-ros_publisher_wifi.ino

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88

99
#include <std_msgs/msg/int32.h>
1010

11-
#if !defined(ESP32) && !defined(TARGET_PORTENTA_H7_M7) && !defined(ARDUINO_NANO_RP2040_CONNECT) && !defined(ARDUINO_WIO_TERMINAL)
12-
#error This example is only available for Arduino Portenta, Arduino Nano RP2040 Connect, ESP32 Dev module and Wio Terminal
11+
#if !defined(ESP32) && !defined(TARGET_PORTENTA_H7_M7) && !defined(ARDUINO_GIGA) && !defined(ARDUINO_NANO_RP2040_CONNECT) && !defined(ARDUINO_WIO_TERMINAL) && !defined(ARDUINO_UNOR4_WIFI)
12+
#error This example is only available for Arduino Portenta, Arduino Giga R1, Arduino Nano RP2040 Connect, ESP32 Dev module, Wio Terminal and Arduino Uno R4 WiFi
1313
#endif
1414

1515
rcl_publisher_t publisher;
@@ -18,7 +18,11 @@ rclc_support_t support;
1818
rcl_allocator_t allocator;
1919
rcl_node_t node;
2020

21-
#define LED_PIN 13
21+
#if defined(LED_BUILTIN)
22+
#define LED_PIN LED_BUILTIN
23+
#else
24+
#define LED_PIN 13
25+
#endif
2226

2327
#define RCCHECK(fn) { rcl_ret_t temp_rc = fn; if((temp_rc != RCL_RET_OK)){error_loop();}}
2428
#define RCSOFTCHECK(fn) { rcl_ret_t temp_rc = fn; if((temp_rc != RCL_RET_OK)){}}

examples/micro-ros_publisher_wifi_at/micro-ros_publisher_wifi_at.ino

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121

2222
#include <std_msgs/msg/int32.h>
2323

24-
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7) || defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_WIO_TERMINAL)
24+
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7) || defined(ARDUINO_GIGA) || defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_WIO_TERMINAL)
2525
#define BOARD_HAS_NATIVE_WIFI
2626
#endif
2727

library.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ paragraph=micro-ROS Arduino library
77
url=https://github.com/micro-ROS/micro_ros_arduino
88
precompiled=true
99
category=Other
10-
architectures=stm32,OpenCR,Teensyduino,samd,sam,mbed,esp32,mbed_portenta
10+
architectures=stm32,OpenCR,Teensyduino,samd,sam,mbed,esp32,mbed_portenta,mbed_giga,renesas_uno

src/default_transport.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ extern "C"
44
{
55
#include <stdio.h>
66
#include <stdbool.h>
7-
#include <sys/time.h>
7+
#include <time.h>
88

99
int clock_gettime(clockid_t unused, struct timespec *tp) __attribute__ ((weak));
1010
bool arduino_transport_open(struct uxrCustomTransport * transport) __attribute__ ((weak));

src/micro_ros_arduino.h

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -95,9 +95,9 @@ static inline void set_microros_native_ethernet_udp_transports(byte mac[], IPAdd
9595

9696
#endif
9797

98-
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7) || defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_WIO_TERMINAL) || defined(BOARD_WITH_ESP_AT)
98+
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7) || defined(ARDUINO_GIGA) || defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_WIO_TERMINAL) || defined(BOARD_WITH_ESP_AT) || defined(ARDUINO_UNOR4_WIFI)
9999

100-
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7)
100+
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7) || defined(ARDUINO_GIGA)
101101
#include <WiFi.h>
102102
#include <WiFiUdp.h>
103103
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
@@ -108,6 +108,8 @@ static inline void set_microros_native_ethernet_udp_transports(byte mac[], IPAdd
108108
#include <WiFiUdp.h>
109109
#elif defined(BOARD_WITH_ESP_AT)
110110
#include <WiFiEspAT.h>
111+
#elif defined(ARDUINO_UNOR4_WIFI)
112+
#include <WiFiS3.h>
111113
#endif
112114

113115
extern "C" bool arduino_wifi_transport_open(struct uxrCustomTransport * transport);
@@ -121,7 +123,7 @@ struct micro_ros_agent_locator {
121123
};
122124
#endif
123125

124-
static inline void set_microros_wifi_transports(char * ssid, char * pass, char * agent_ip, uint agent_port){
126+
static inline void set_microros_wifi_transports(char * ssid, char * pass, char * agent_ip, uint32_t agent_port){
125127

126128
#if defined(BOARD_WITH_ESP_AT)
127129
ESP_AT_SERIAL_PORT.begin(ESP_AT_BAUDRATE);

src/wifi_transport.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7) || defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_WIO_TERMINAL) || defined(BOARD_WITH_ESP_AT)
1+
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7) || defined(ARDUINO_GIGA) || defined(ARDUINO_NANO_RP2040_CONNECT) || defined(ARDUINO_WIO_TERMINAL) || defined(BOARD_WITH_ESP_AT) || defined(ARDUINO_UNOR4_WIFI)
22
#include <Arduino.h>
33

44

5-
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7)
5+
#if defined(ESP32) || defined(TARGET_PORTENTA_H7_M7) || defined(ARDUINO_GIGA)
66
#include <WiFi.h>
77
#include <WiFiUdp.h>
88
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
@@ -13,6 +13,8 @@
1313
#include <WiFiUdp.h>
1414
#elif defined(BOARD_WITH_ESP_AT)
1515
#include <WiFiEspAT.h>
16+
#elif defined(ARDUINO_UNOR4_WIFI)
17+
#include <WiFiS3.h>
1618
#endif
1719

1820
#include <micro_ros_arduino.h>

0 commit comments

Comments
 (0)