Skip to content

Commit

Permalink
Merge branch 'main' into pr-runtime-configuration-registry
Browse files Browse the repository at this point in the history
  • Loading branch information
LasseRosenow committed May 7, 2024
2 parents f68fbb1 + 4250c15 commit 6102a76
Show file tree
Hide file tree
Showing 721 changed files with 434,414 additions and 2,052 deletions.
8 changes: 8 additions & 0 deletions .github/workflows/release-test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -78,11 +78,19 @@ jobs:
ssh -oStrictHostKeyChecking=accept-new \
${IOTLAB_USER}@saclay.iot-lab.info exit
- name: Fetch host key from IoT-LAB lille site
# Not being used in the most recent release specs but kept in for
# backwords compatibility
if: ${{ matrix.pytest_mark == 'iotlab_creds' }}
run: |
IOTLAB_USER=$(cat ~/.iotlabrc | cut -f1 -d:)
ssh -oStrictHostKeyChecking=accept-new \
${IOTLAB_USER}@lille.iot-lab.info exit
- name: Fetch host key from IoT-LAB strasbourg site
if: ${{ matrix.pytest_mark == 'iotlab_creds' }}
run: |
IOTLAB_USER=$(cat ~/.iotlabrc | cut -f1 -d:)
ssh -oStrictHostKeyChecking=accept-new \
${IOTLAB_USER}@strasbourg.iot-lab.info exit
- name: Checkout Release-Specs
uses: actions/checkout@main
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test-on-iotlab.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
- riot: dwm1001
iotlab:
archi: dwm1001:dw1000
site: lille
site: toulouse
- riot: iotlab-m3
iotlab:
archi: m3:at86rf231
Expand Down
2 changes: 1 addition & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"editor.rulers": [
80,
120
100
],
"editor.detectIndentation": false,
"files.insertFinalNewline": true,
Expand Down
2 changes: 1 addition & 1 deletion CODING_CONVENTIONS.md
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,7 @@ Wrong:
functionality.
* Every function must be documented - including parameters and return value.

An examplary doxygen documentation in a header file can look like this.
An exemplary doxygen documentation in a header file can look like this.

```
/*
Expand Down
2 changes: 1 addition & 1 deletion boards/adafruit-grand-central-m4-express/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ static mtd_spi_nor_t samd51_nor_dev = {
.params = &_samd51_nor_params,
};

mtd_dev_t *mtd0 = (mtd_dev_t *)&samd51_nor_dev;
MTD_XFA_ADD(samd51_nor_dev, 0);

#ifdef MODULE_VFS_DEFAULT
VFS_AUTO_MOUNT(littlefs2, VFS_MTD(samd51_nor_dev), VFS_DEFAULT_NVM(0), 0);
Expand Down
3 changes: 1 addition & 2 deletions boards/adafruit-grand-central-m4-express/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,7 @@

### General information

![Adafruit Grand Central M4 Expressboard]
(https://cdn-learn.adafruit.com/assets/assets/000/068/748/medium800/adafruit_products_grand_central_top_angle.jpg?1546734839)
![Adafruit Grand Central M4 Expressboard](https://cdn-learn.adafruit.com/assets/assets/000/068/748/medium800/adafruit_products_grand_central_top_angle.jpg?1546734839)

The main features of the board are:
- ATSAMD51 Cortex M4 running at 120 MHz
Expand Down
6 changes: 6 additions & 0 deletions boards/adafruit-itsybitsy-m4/Makefile.dep
Original file line number Diff line number Diff line change
Expand Up @@ -7,5 +7,11 @@ ifneq (,$(filter mtd,$(USEMODULE)))
USEMODULE += mtd_spi_nor
endif

# default to using littlefs2 on the external flash
ifneq (,$(filter vfs_default,$(USEMODULE)))
USEPKG += littlefs2
USEMODULE += mtd
endif

# setup the samd21 arduino bootloader related dependencies
include $(RIOTBOARD)/common/samdx1-arduino-bootloader/Makefile.dep
9 changes: 8 additions & 1 deletion boards/adafruit-itsybitsy-m4/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,9 @@
#include "periph/gpio.h"
#include "mtd_spi_nor.h"
#include "timex.h"
#ifdef MODULE_VFS_DEFAULT
#include "vfs_default.h"
#endif

#ifdef MODULE_MTD
/* GD25x16 */
Expand Down Expand Up @@ -51,7 +54,11 @@ static mtd_spi_nor_t samd51_nor_dev = {
.params = &_samd51_nor_params,
};

mtd_dev_t *mtd0 = (mtd_dev_t *)&samd51_nor_dev;
MTD_XFA_ADD(samd51_nor_dev, 0);

#ifdef MODULE_VFS_DEFAULT
VFS_AUTO_MOUNT(littlefs2, VFS_MTD(samd51_nor_dev), VFS_DEFAULT_NVM(0), 0);
#endif
#endif /* MODULE_MTD */

static inline void _toggle(unsigned n)
Expand Down
2 changes: 1 addition & 1 deletion boards/adafruit-itsybitsy-m4/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@

![Adafruit-Itsybitsy-M4 compared to a quarter dollar](https://cdn-learn.adafruit.com/assets/assets/000/055/465/large1024/adafruit_products_3800_quarter_ORIG_2018_06.jpg?1529192175)

This is a small formfactor (only 1.4" long by 0.7" wide) SAM D51 board made by Adafruit.
This is a small formfactor (only 1.4\" long by 0.7\" wide) SAM D51 board made by Adafruit.

The board features one red LED (LD1), one DotStar / APA102 RGB LED, a reset button as well as
21 configurable external pins(6 of which can be analog in).
Expand Down
2 changes: 1 addition & 1 deletion boards/adafruit-itsybitsy-nrf52/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

### General information

This is a small formfactor (only 1.4" long by 0.7" wide) nRF52840 board made by Adafruit.
This is a small formfactor (only 1.4\" long by 0.7\" wide) nRF52840 board made by Adafruit.

The board features one red LED (LD1), one DotStar / APA102 RGB LED, a user (SW1), a
reset button as well as 21 configurable external pins(6 of which can be analog in).
Expand Down
4 changes: 2 additions & 2 deletions boards/adafruit-pybadge/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ static mtd_spi_nor_t samd51_nor_dev = {
.params = &_samd51_nor_params,
};

mtd_dev_t *mtd0 = (mtd_dev_t *)&samd51_nor_dev;
MTD_XFA_ADD(samd51_nor_dev, 0);
#endif /* MODULE_MTD */

void board_init(void)
Expand All @@ -64,7 +64,7 @@ void board_init(void)
gpio_set(SPEAKER_ENABLE_PIN);
}

if (IS_USED(MODULE_ST7735)) {
if (IS_USED(MODULE_ST77XX)) {
gpio_init(BACKLIGHT_PIN, GPIO_OUT);
}
}
23 changes: 12 additions & 11 deletions boards/adafruit-pybadge/include/board.h
Original file line number Diff line number Diff line change
Expand Up @@ -67,17 +67,18 @@ extern "C" {
* @name Display configuration (not supported yet)
* @{
*/
#define ST7735_PARAM_SPI SPI_DEV(1) /**< SPI device */
#define ST7735_PARAM_CS GPIO_PIN(PB, 7) /**< Chip select pin */
#define ST7735_PARAM_DCX GPIO_PIN(PB, 5) /**< DCX pin */
#define ST7735_PARAM_RST GPIO_PIN(PA, 0) /**< Reset pin */
#define ST7735_PARAM_NUM_LINES (160U) /**< Number of screen lines */
#define ST7735_PARAM_RGB_CHANNELS (128U) /**< Number of screen rgb channel (height) */
#define ST7735_PARAM_RGB (1) /**< RGB configuration */
#define ST7735_PARAM_INVERTED (0) /**< Inversion configuration */
#define ST7735_PARAM_ROTATION (ST7735_ROTATION_HORZ_FLIP) /**< Rotation mode */
#define LCD_SCREEN_WIDTH (ST7735_PARAM_NUM_LINES) /**< LCD screen width */
#define LCD_SCREEN_HEIGHT (ST7735_PARAM_RGB_CHANNELS) /**< LCD screen height */
#define ST77XX_PARAM_CNTRL ST77XX_CNTRL_ST7735 /**< ST77xx controller variant */
#define ST77XX_PARAM_SPI SPI_DEV(1) /**< SPI device */
#define ST77XX_PARAM_CS GPIO_PIN(PB, 7) /**< Chip select pin */
#define ST77XX_PARAM_DCX GPIO_PIN(PB, 5) /**< DCX pin */
#define ST77XX_PARAM_RST GPIO_PIN(PA, 0) /**< Reset pin */
#define ST77XX_PARAM_NUM_LINES (160U) /**< Number of screen lines */
#define ST77XX_PARAM_RGB_CHANNELS (128U) /**< Number of screen rgb channel (height) */
#define ST77XX_PARAM_RGB (1) /**< RGB configuration */
#define ST77XX_PARAM_INVERTED (0) /**< Inversion configuration */
#define ST77XX_PARAM_ROTATION ST77XX_ROTATION_90 /**< Rotation mode */
#define LCD_SCREEN_WIDTH (ST77XX_PARAM_NUM_LINES) /**< LCD screen width */
#define LCD_SCREEN_HEIGHT (ST77XX_PARAM_RGB_CHANNELS) /**< LCD screen height */
/** @} */

/**
Expand Down
11 changes: 4 additions & 7 deletions boards/airfy-beacon/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,11 @@ usual micro-controller peripherals with a 2.4GHz radio that supports both
Nordics proprietary ShockBurst as well as Bluetooth Low Energy (BLE).

The board was available via
[Indiegogo]
(https://www.indiegogo.com/projects/airfy-beacon-make-your-smart-home-even-smarter).
[Indiegogo](https://www.indiegogo.com/projects/airfy-beacon-make-your-smart-home-even-smarter).

## Hardware

![airfy-beacon]
(https://raw.githubusercontent.com/wiki/RIOT-OS/RIOT/images/airfy-beacon.jpg)
![airfy-beacon](https://raw.githubusercontent.com/wiki/RIOT-OS/RIOT/images/airfy-beacon.jpg)

| MCU | NRF51822QFAA |
|:--------------------- |:--------------------------------- |
Expand Down Expand Up @@ -84,7 +82,7 @@ SUBSYSTEMS=="usb", ATTRS{idVendor}=="0483", ATTRS{idProduct}=="3748", \
# If you share your linux system with other users, or just don't like the
# idea of write permission for everybody, you can replace MODE:="0666" with
# OWNER:="yourusername" to create the device owned by you, or with
# GROUP:="somegroupname" and mange access using standard unix groups.
# GROUP:="somegroupname" and manage access using standard unix groups.

> sudo cp 49-stlinkv2.rules /etc/udev/rules.d/
> sudo udevadm control --reload-rules
Expand Down Expand Up @@ -114,8 +112,7 @@ SWD data I/O: SWDIO <-----------> SWDIO (CN3, pin4)

The following image shows the wiring for an SWD flasher board:

![airfy-beacon-flash-connect]
(https://raw.githubusercontent.com/wiki/RIOT-OS/RIOT/images/airfy-beacon-flash-connect.jpg)
![airfy-beacon-flash-connect](https://raw.githubusercontent.com/wiki/RIOT-OS/RIOT/images/airfy-beacon-flash-connect.jpg)

### Software
Debugging and programming this module works well with
Expand Down
3 changes: 1 addition & 2 deletions boards/arduino-mega2560/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,7 @@ to overwrite the bootloader on the MCU. Because of that it is a necessity to use
an ISP (in system programmer) to do the debugging. This isn't an issue because
all of the afore mentioned devices have ISP capabilities, but it requires some
additional steps to get back normal operation after debugging:
* flash a new arduino bootloader on the device, e.g. [this one]
(https://raw.githubusercontent.com/arduino/Arduino-stk500v2-bootloader/master/goodHexFiles/stk500boot_v2_mega2560.hex)
* flash a new arduino bootloader on the device, e.g. [this one](https://raw.githubusercontent.com/arduino/Arduino-stk500v2-bootloader/master/goodHexFiles/stk500boot_v2_mega2560.hex)
* restore the fuses to the default state.


Expand Down
10 changes: 4 additions & 6 deletions boards/cc2538dk/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,7 @@ internal bootloader, then run:

Activating this bootloader is NOT enabled if the flash content is in factory
default state (e.g. after unboxing). To set the bits in the CCA accordingly you
have to follow the guidelines found [here]
(https://web.archive.org/web/20170610111337/http://processors.wiki.ti.com/index.php/CC2538_Bootloader_Backdoor).
have to follow the guidelines found [here](https://web.archive.org/web/20170610111337/http://processors.wiki.ti.com/index.php/CC2538_Bootloader_Backdoor).
To manage this first time access you have to download the
["Uniflash"](http://processors.wiki.ti.com/index.php/Category:CCS_UniFlash) tool
at TI's website.
Expand All @@ -58,8 +57,7 @@ FTDI driver manually:
If the path `/sys/bus/usb-serial/drivers/ftdi_sio/` doesn't exist, you also
have to load the module `ftdi_sio` by hand. Alternatively, you can install a
`udev` rule that configures this on device connection, see [this post on TI's
E2E site]
(https://e2e.ti.com/support/microcontrollers/c2000/f/171/p/359074/1843485#1843485)
E2E site](https://e2e.ti.com/support/microcontrollers/c2000/f/171/p/359074/1843485#1843485)
for details.

RIOT will use /dev/ttyUSB1 by default, but if the UART is given a different
Expand Down Expand Up @@ -114,8 +112,8 @@ $ csrutil status
System Integrity Protection status: disabled.
```

Afterwards you'll be able to install this [driver]
(https://cdn.sparkfun.com/assets/learn_tutorials/7/4/FTDIUSBSerialDriver_v2_3.dmg).
Afterwards you'll be able to install this
[driver](https://cdn.sparkfun.com/assets/learn_tutorials/7/4/FTDIUSBSerialDriver_v2_3.dmg).

If everything goes OK reboot your Mac and then edit
`/System/Library/Extensions/FTDIUSBSerialDriver.kext/Contents/Info.plist` with a
Expand Down
3 changes: 1 addition & 2 deletions boards/cc2650stk/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -54,8 +54,7 @@ The arm-none-eabi toolchain works fine. You can get it

## Programming and Debugging

You'll need [debugging hardware]
(https://processors.wiki.ti.com/index.php?title=CC13xx_CC26xx_Tools_Overview#Debuggers).
You'll need [debugging hardware](https://processors.wiki.ti.com/index.php?title=CC13xx_CC26xx_Tools_Overview#Debuggers).
So far, the [XDS110 debug probe](https://www.ti.com/tool/CC-DEVPACK-DEBUG) has
been tested. That bugger requires you to load a firmware onto it each time it
powers up. The tool is contained in the Uniflash utility or the `CodeComposer
Expand Down
12 changes: 8 additions & 4 deletions boards/common/esp32x/include/board_common.h
Original file line number Diff line number Diff line change
Expand Up @@ -103,11 +103,15 @@ extern "C" {
#define SPI_FLASH_DRIVE_START 0
#endif

/** Default MTD drive definition */
#define MTD_0 mtd0
#define MTD_0 mtd0 /**< Flash MTD device */
extern mtd_dev_t *mtd0; /**< Flash MTD device pointer */

/** Pointer to the default MTD drive structure */
extern mtd_dev_t *mtd0;
#if MODULE_MTD_SDCARD_DEFAULT || DOXYGEN

#define MTD_1 mtd1 /**< SD Card MTD device */
extern mtd_dev_t *mtd1; /**< SD Card MTD device pointer */

#endif /* MODULE_MTD_SDCARD_DEFAULT || DOXYGEN */

/**
* @brief MTD offset for SD Card interfaces
Expand Down
8 changes: 8 additions & 0 deletions boards/common/nrf52/include/cfg_i2c_default.h
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,15 @@ static const i2c_conf_t i2c_config[] = {
.scl = 27,
.sda = 26,
.speed = I2C_SPEED_NORMAL
},
#ifdef BOARD_NRF52840DK
{
.dev = NRF_TWIM0,
.scl = 28,
.sda = 29,
.speed = I2C_SPEED_NORMAL
}
#endif
};
#define I2C_NUMOF ARRAY_SIZE(i2c_config)
/** @} */
Expand Down
5 changes: 4 additions & 1 deletion boards/common/nucleo64/include/arduino_iomap.h
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@

#include "periph/gpio.h"
#include "periph/adc.h"
#include "periph_conf.h"

#ifdef __cplusplus
extern "C" {
Expand All @@ -43,7 +44,9 @@ extern "C" {
/**
* @brief SPI_DEV(1) is connected to D11/D12/D13
*/
#define ARDUINO_SPI_D11D12D13 SPI_DEV(1)
#if !defined(ARDUINO_SPI_D11D12D13) && defined(SPI_NUMOF)
#define ARDUINO_SPI_D11D12D13 SPI_DEV(0)
#endif
/** @} */

/**
Expand Down
4 changes: 2 additions & 2 deletions boards/common/slwstk6000b/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -90,8 +90,8 @@ symbols (`-gdwarf-2` for GCC).

### Clock selection
There are several clock sources that are available for the different
peripherals. You are advised to read [AN0004.1]
(https://www.silabs.com/documents/public/application-notes/an0004.1-efm32-cmu.pdf)
peripherals. You are advised to read
[AN0004.1](https://www.silabs.com/documents/public/application-notes/an0004.1-efm32-cmu.pdf)
to get familiar with the different clocks.

| Source | Internal | Speed | Comments |
Expand Down
2 changes: 1 addition & 1 deletion boards/common/weact-f4x1cx/board.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ static mtd_spi_nor_t weact_nor_dev = {
.params = &_weact_nor_params,
};

mtd_dev_t *mtd0 = (mtd_dev_t *)&weact_nor_dev;
MTD_XFA_ADD(weact_nor_dev, 0);

#ifdef MODULE_VFS_DEFAULT
#include "vfs_default.h"
Expand Down
27 changes: 9 additions & 18 deletions boards/derfmega128/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,32 +9,23 @@ deRFmega128 modules are based on [ATmega128rfa1](http://ww1.microchip.com/downlo
MCUs. It include 16MHz main and 32K RTC crystalls and (depending on module type) integrated or not integrated 2.4GHz antenna.

These modules are available in different variants:
- [deRFmega128-22M00]
(https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22m00.html)
- [deRFmega128-22M00](https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22m00.html)
with integrated antenna,
- [deRFmega128-22M10]
(https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22m10.html)
- [deRFmega128-22M10](https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22m10.html)
without integrated antenna.
- [deRFmega128-22A00]
(https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22a00.html)
- [deRFmega128-22A00](https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22a00.html)
with connectors and integrated antenna,
- [deRFmega128-22A02]
(https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22a02.html)
- [deRFmega128-22A02](https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22a02.html)
with connectors, but without integrated antenna.
- [deRFmega128-22C00]
(https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22c00.html)
- [deRFmega128-22C00](https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22c00.html)
solderable with integrated antenna,
- [deRFmega128-22C02]
(https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22c02.html)
- [deRFmega128-22C02](https://www.dresden-elektronik.de/produkt/24-ghz-avr-derfmega128-22c02.html)
solderable without integrated antenna.

# Hardware

For details see the according data sheets:
- [deRFmega128-22M00 and deRFmega128-22M10]
(https://www.dresden-elektronik.de/files/dresden-elektronik/content/downloads/datenblaetter/_outdated/deRFmega128-22M00-22M10-DBT-de.pdf)
- [deRFmega128-22A00 and deRFmega128-22C00]
(https://www.dresden-elektronik.de/files/dresden-elektronik/content/downloads/datenblaetter/_outdated/deRFmega128-22A00-C00-DBT-de.pdf)
- [deRFmega128-22A02 and deRFmega128-22C02]
(https://www.dresden-elektronik.de/files/dresden-elektronik/content/downloads/datenblaetter/_outdated/deRFmega128-22A02-C02-DBT-de.pdf)
- [deRFmega128-22M00 and deRFmega128-22M10](https://www.dresden-elektronik.de/files/dresden-elektronik/content/downloads/datenblaetter/_outdated/deRFmega128-22M00-22M10-DBT-de.pdf)
- [deRFmega128-22A00 and deRFmega128-22C00](https://www.dresden-elektronik.de/files/dresden-elektronik/content/downloads/datenblaetter/_outdated/deRFmega128-22A00-C00-DBT-de.pdf)
- [deRFmega128-22A02 and deRFmega128-22C02](https://www.dresden-elektronik.de/files/dresden-elektronik/content/downloads/datenblaetter/_outdated/deRFmega128-22A02-C02-DBT-de.pdf)
*/
9 changes: 3 additions & 6 deletions boards/esp32-heltec-lora32-v2/doc.txt
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,7 @@
2. [Board Configuration](#esp32_heltec_lora32_v2_board_configuration)
3. [Board Pinout](#esp32_heltec_lora32_v2_pinout)
4. [Using the OLED Display](#esp32_heltec_lora32_v2_oled_display)
5. [Optional Hardware Configurations]
(#esp32_heltec_lora32_v2_optional_hardware)
5. [Optional Hardware Configurations](#esp32_heltec_lora32_v2_optional_hardware)
3. [Flashing the Device](#esp32_heltec_lora32_v2_flashing)

## Overview {#esp32_heltec_lora32_v2_overview}
Expand Down Expand Up @@ -217,10 +216,8 @@ purpose. However, if optional off-board hardware modules are used,
these GPIOs may also be occupied,
see section \ref esp32_heltec_lora32_v2_board_configuration for more information.

The corresponding board schematics can be found [here for SX1276 version]
(https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/blob/master/SchematicDiagram/WiFi_LoRa_32(V2)/WIFI_LoRa_32_V2(868-915).PDF)
and [here for SX1278 version]
(https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/blob/master/SchematicDiagram/WiFi_LoRa_32(V2)/WiFi_LoRa_32_V2(433%2C470-510).PDF).
The corresponding board schematics can be found [here for SX1276 version](https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/blob/master/SchematicDiagram/WiFi_LoRa_32(V2)/WIFI_LoRa_32_V2(868-915).PDF)
and [here for SX1278 version](https://github.com/Heltec-Aaron-Lee/WiFi_Kit_series/blob/master/SchematicDiagram/WiFi_LoRa_32(V2)/WiFi_LoRa_32_V2(433%2C470-510).PDF).

\anchor esp32_heltec_lora_32_v2_pinout_img
@image html "https://gitlab.com/gschorcht/RIOT.wiki-Images/raw/master/esp32/Heltec_WiFi_LoRa_32_V2_pinout.png" "WiFi LoRa 32 V2 Pintout Diagram"
Expand Down
Loading

0 comments on commit 6102a76

Please sign in to comment.