Description of Change
This PR adds support for Espoir, a mikroBUS PoE+ devboard, by Connaxio inc. However, the ESP32-MINI-1 is a single core CPU, so Connaxio will provide the builds for its devboard until single core CPUs are officially supported. Adding these modifications to the official repository will limit discrepancies between Connaxio's fork and the main repo.
Tests scenarios
Tests include Ethernet, SPI, USB, I2C, UART (1-wire).
More info: https://www.connaxio.com/electronics/espoir/
Implemented a new method for allowing folks to preserve their TinyUF2 bootloader setup when flashing their boards via Arduino IDE, without being locked out of not using it if they want to use a different partition.
Adafruit had already added support for keeping (reflashing) the TinyUF2 bootloader when flashing via Arduino IDE (thanks @ladyada ), but the issue with it is it doesn't allow users to not choose to use it. Even if they select a specific partition scheme from the partition drop down list, it ignores that selection and only does the TinyUF2 partitioning/bootloader thing.
We wanted to let users choose between keeping their TinyUF2 partitioning and bootloader, or choose another partition scheme and have the TinyUF2 support disabled and just operate like they would expect.
We've implemented this by adding the TinyUF2 support as a partition scheme option, and using these build options in platform.txt to choose to use teh UF2 path or use the standard path.
Add support for the Trueverit Universal IoT Driver MK III (https://www.trueverit.com/)
The board will be released on market using electronic distributors soon, as the other one board added via #5269
This new board (referred as MK III) has onboard Texas Instruments RTL8201 Eth PHY chip.
Summary
The M5Core2 and the very similar M5Tough have 40 digital pins
See reference here: https://docs.m5stack.com/en/core/core2 as well as the constant declarations in the bottom part of the file.
Impact
Without this, Code that needs the total number of pins (e.g. firmata) doesn't show the higher pin numbers correctly.
* GPIO refactoring
GPIO now using ESP-IDF API on all chips.
LEDC interrupt fix removed - no longer needed.
Edited pins_arduino.h in variants according to changes in gpio.
* Edited analog channels functions
* SDMMC frequency selection based on board type
On Olimex ESP32 EVB I/O operations with SD card can cause error when LAN is used in same time.
Problem is disappearing if SD MMC frequency lower down from SDMMC_FREQ_HIGHSPEED to SDMMC_FREQ_DEFAULT.
No problem if WiFi used instead LAN.
* Code rewritten according to https://github.com/espressif/arduino-esp32/pull/5688#pullrequestreview-759359645
## Summary
Adds support for the new ATMegaZero ESP32-S2 board. Adds the relevant section to `boards.txt` and adds the folder for the `atmegazero-esp32s2` with the proper `pins_arduino.h` to the `variants` folder.
## Impact
Allows users to compile code properly for the ATMegaZero ESP32-S2 without having to use a similar board and manually entering pin numbers.
## Links
[ATMegaZero ESP32-S2](https://atmegazero.com/#/atmegazero_esp32s2_overview)
Thanks!
* The board.txt has been updated. Added variant folder.
Necessary additions for deneyapMiniKart were made in board.txt. Added pins_arduino to variant folder. deneyapMiniKart information has been added.
* Added variant files and added text in board.txt
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
* Add initial support for USB MSC
* Add Firmware Upload/Download With MSC
Current running firmware is available as file inside the MSC Disk. To update the firmware on the ESP, just copy a regular firmware bin into the drive
* Support overwriting of the firmware file
Overwriting a file is done totally differently on MacOS, Windows and Linux. This change supports it on all of them.
* Allow CDC, FirmwareMSC and DFU to be enabled on boot
* Add example ESP32-S2 USB-ONLY board
* Various device code optimizations
Added `end()` methods to MSC classes
Made begin() methods safe to be called multiple times
Optimized CDC class
* Fix CDC Connect/Disconnect detection in Arduino IDE on Windows
* Rework cdc_write
* Update ESP32-S2 board configs
Add support for the Trueverit Universal IoT Driver MK II (https://www.trueverit.com)
The board will be released on market using electronic distributors soon, as the other one board added via #5219
This new board (referred as MK II) has onboard Texas Instruments DP83848 Eth PHY chip.
The doitESPduino32/pins_Arduino.h lacks definitions for the common SPI pins names: SS, MOSI, MISO, SCK
This breaks compatibility with Arduino libs, including SPI.h/.cpp
This PR solves the issue while maintaining compatibility with previous pin naming (IO5/23/19/18), and ensures consistency with other boards variants.
done on behalf of @ladyada, this PR does:
Add Adafruit FunHouse and upcoming Adafruit Feather Esp32s2
Update Adafruit magtag and metro esp32s2 to have tinyuf2 as factory app
Also modify platform.txt as discussed in adafruit#2 + adafruit#3 + adafruit#4 to add support for
Board/variant partition.csv, bootloader.bin ( priority is user sketch > variant > build.parition/boot )
upload.extra_flags to optionally flash tinyuf2 as factory application
Remove duplicated parameter in running python script in linux and windows
Please review and let me know if you want any changes.
Notes: tinyuf2 is a uf2 bootloader for multiple platforms. For esp32s2, it is an factory app to perform uf2 firmware update.
This is very much still work in progress and much more will change before the final 2.0.0
Some APIs have changed. New libraries have been added. LittleFS included.
Co-authored-by: Seon Rozenblum <seonr@3sprockets.com>
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
Co-authored-by: geeksville <kevinh@geeksville.com>
Co-authored-by: Mike Dunston <m_dunston@comcast.net>
Co-authored-by: Unexpected Maker <seon@unexpectedmaker.com>
Co-authored-by: Seon Rozenblum <seonr@3sprockets.com>
Co-authored-by: microDev <70126934+microDev1@users.noreply.github.com>
Co-authored-by: tobozo <tobozo@users.noreply.github.com>
Co-authored-by: bobobo1618 <bobobo1618@users.noreply.github.com>
Co-authored-by: lorol <lorolouis@gmail.com>
Co-authored-by: geeksville <kevinh@geeksville.com>
Co-authored-by: Limor "Ladyada" Fried <limor@ladyada.net>
Co-authored-by: Sweety <switi.mhaiske@espressif.com>
Co-authored-by: Loick MAHIEUX <loick111@gmail.com>
Co-authored-by: Larry Bernstone <lbernstone@gmail.com>
Co-authored-by: Valerii Koval <valeros@users.noreply.github.com>
Co-authored-by: 快乐的我531 <2302004040@qq.com>
Co-authored-by: chegewara <imperiaonline4@gmail.com>
Co-authored-by: Clemens Kirchgatterer <clemens@1541.org>
Co-authored-by: Aron Rubin <aronrubin@gmail.com>
Co-authored-by: Pete Lewis <601236+lewispg228@users.noreply.github.com>
* Update pins_arduino.h
Fix the bug that the IDE show: "Error compiling for the board FireBettle-ESP32"
Detial"error : redefinition of const uint8_t D0~D9"
* Update pins_arduino.h
Co-authored-by: Me No Dev <me-no-dev@users.noreply.github.com>
Add the Wemos Lolin32 Lite (no longer being produced same as Lolin32) and
the TTGO T7 v1.3 and v1.4 boards (status unknown). All three are rather
generic ESP32 boards the main difference being pin layouts.
Hi,
I have added a variant for the LilyGo TTGO LoRa32-OLED V2, which is similar to the LilyGo TTGO LoRa32-OLED V1 but with a different pinout. This will be useful for PlatformIO users, specially because I am also adding the board there as well.
Cheers.
* Add default pin mapping for Serial1 and Serial2
* Default pin remap on wESP32
Improved default pin mapping for I2C0 and UART1 to avoid issues
with programming.
SDA0 was on IO2 but IO2 needs to be pulled low on reset to enable
serial programming, which conflicts with I2C pull-ups.
RX1 was on IO12, idle UART level is high which conflicts with
IO12 needing to be low on reset to select correct 3.3V flash
voltage.
New mappings:
SDA0 on IO15
RX1 on IO13
TX1 on IO12
In Board.txt file added board revision submenu to distinguish the different revisions of the same board. By selecting different revision in the Arduino menu different value of the predefined macro will be applied which is used inside the pins_arduino.h file to make different defines and values for the specific revision.
In addition to this esp32-poe pin definitions is added ethernet power enable pin and also defined macro: BOARD_HAS_1BIT_SDMMC
* Board T-Beam: Update pins_arduino.h
DAC2 is not wired, only DAC1 is -> corrected
LORA pins 27 + 19 are only wired on pcb, but not connected to header -> deleted
* Update pins_arduino.h
Button and LED added
* Add ttgo-lora32-v1 folder to variants folder
* Add ttgo-lora32-v1 info to boards.txt
* Add defs to pins_arduino.h for I2C OLED and SPI LoRa radio pinouts as per @stickbreaker
If you develop on windows and need cr/lf files, see this:
https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#_formatting_and_whitespace
Git can handle this by auto-converting CRLF line endings into LF
when you add a file to the index, and vice versa when it checks out
code onto your filesystem. You can turn on this functionality with
the core.autocrlf setting. If you're on a Windows machine, set it
to true - this converts LF endings into CRLF when you check out code:
$ git config --global core.autocrlf true
M5Stack variant (pins_arduino.h) file is not automatically included,
because boards.txt m5stack-core-esp32.build.variant=esp32
This commit changes m5stack-core-esp32.build.variant from esp32 to m5stack_core_esp32
also rename M5Stack variant directory from m5stack-core-esp32 to m5stack_core_esp32
* Create new pocket_32 diretory for Pocket 32 board
* Create pins_arduino.h for pocket_32
* Update boards.txt to support Dongsen Tech Pocket 32 and fake "WeMos" WiFi&Bluetooth Battery
* Create new espino32 diretory for ESPino32 board
* Delete wrong create file
* Create pins_arduino.h for espino32
* Update boards.txt to support ThaiEasyElec ESPino32
* Re-configure board name
* Add ESP.getChipId() function to get ESP32's ChipID.
* change getChipId() to getEfuseMac()
* * Change board:Lolin32 to LOLIN32
* Update LED_BUILTIN pin for LOLIN32