[PR #431] [MERGED] Add new AP hardware support OpenEPaperLink_ESP32-PoE-ISO_AP #2740

Closed
opened 2026-03-20 21:08:36 +01:00 by sascha_hemi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/OpenEPaperLink/OpenEPaperLink/pull/431
Author: @fk0815
Created: 1/15/2025
Status: Merged
Merged: 3/27/2025
Merged by: @nlimper

Base: masterHead: master


📝 Commits (8)

  • 5cd7742 Fix filesystem mutex handling
  • 223d7bd Fix hard coded littlefs in json upload
  • 64b8029 Add new AP hardware support OpenEPaperLink_ESP32-PoE-ISO_AP
  • 7dd5e29 Avoid error message log print when parsers.json is missing
  • feae113 Workaround for IEEE802.15.4 modem stuck issue
  • 154f33b Add OpenEPaperLink_ESP32-PoE-ISO_AP to release build
  • b8eac51 Add OpenEPaperLink_ESP32-PoE-ISO_AP to condidional build
  • 5fa3e53 Add Ethernet support

📊 Changes

19 files changed (+479 additions, -109 deletions)

View changed files

📝 .github/workflows/conditional-build-test.yml (+7 -1)
📝 .github/workflows/release.yml (+32 -9)
📝 ARM_Tag_FW/OpenEPaperLink_esp32_C6_AP/sdkconfig.defaults (+1 -1)
ESP32_AP-Flasher/esp32_sdcard_only.csv (+7 -0)
📝 ESP32_AP-Flasher/include/storage.h (+6 -0)
📝 ESP32_AP-Flasher/include/wifimanager.h (+5 -1)
📝 ESP32_AP-Flasher/platformio.ini (+103 -48)
ESP32_AP-Flasher/prepare_sdcard.sh (+23 -0)
📝 ESP32_AP-Flasher/src/leds.cpp (+6 -4)
📝 ESP32_AP-Flasher/src/main.cpp (+9 -0)
📝 ESP32_AP-Flasher/src/ota.cpp (+8 -6)
📝 ESP32_AP-Flasher/src/serialap.cpp (+41 -2)
📝 ESP32_AP-Flasher/src/storage.cpp (+74 -6)
📝 ESP32_AP-Flasher/src/system.cpp (+1 -1)
📝 ESP32_AP-Flasher/src/tag_db.cpp (+2 -0)
📝 ESP32_AP-Flasher/src/tagdata.cpp (+4 -1)
📝 ESP32_AP-Flasher/src/udp.cpp (+5 -4)
📝 ESP32_AP-Flasher/src/web.cpp (+6 -4)
📝 ESP32_AP-Flasher/src/wifimanager.cpp (+139 -21)

📄 Description

This is based on Olimex ESP32-PoE-ISO
https://www.olimex.com/Products/IoT/ESP32/ESP32-POE-ISO/open-source-hardware

It has a SD Card slot that is used to store all filesystem data on SD.
Use the prepare_sdcard.sh script to copy all needed data to an empty
SD card that is formatted with FAT filesystem. The AP firmware will format
the SD if an unformatted or from formatted card is used. This can be used
to intially prepare an empty SD card for usage.

For tag communication a ESP32-C6-WROOM-1(U) is used with the following
connection scheme:

ESP32-PoE-ISO ESP32-C6-WROOM-1
GPIO5 EN
GPIO13 GPIO9
GPIO36 GPIO3
GPIO4 GPIO2
GPIO33 GPIO24
GPIO32 GPIO25
GPIO8 pullup 5.1k

The AP has support for PoE/Ethernet, for that the new added Ethernet
support allows to make the network/internet connection
via LAN cable instead of WiFi. LAN is preferred, if a LAN cable is
connected and a valid IP configuration via DHCP can be obtained, WiFi
is switched off. If the LAN cable is disconnected, a fall back to
WiFi is done.

Use those defines in platform.ini for PHY settings:

  • ETHERNET_PHY_POWER: IO pin where the PHY can be switched of/on, can be -1 if not used.
  • ETHERNET_CLK_MODE: PHY clock mode, see eth_clock_mode_t in ETH.h
  • ETHERNET_PHY_MDC: PHY MDC pin
  • ETHERNET_PHY_MDIO: PHY MDIO pin
  • ETHERNET_PHY_TYPE: PHY type, see eth_phy_type_t in ETH.h

Limitations:

  • only DHCP is supported, no static IP configuration for LAN so far.
  • If GPIO0 is used for one of the ETHERNET_CLK_MODE modes, then GPIO0
    cannot be used to clear the WiFi configuration.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/OpenEPaperLink/OpenEPaperLink/pull/431 **Author:** [@fk0815](https://github.com/fk0815) **Created:** 1/15/2025 **Status:** ✅ Merged **Merged:** 3/27/2025 **Merged by:** [@nlimper](https://github.com/nlimper) **Base:** `master` ← **Head:** `master` --- ### 📝 Commits (8) - [`5cd7742`](https://github.com/OpenEPaperLink/OpenEPaperLink/commit/5cd77429f2211a1311eebc38b9c28c7432ca86a8) Fix filesystem mutex handling - [`223d7bd`](https://github.com/OpenEPaperLink/OpenEPaperLink/commit/223d7bdf5c276578476d6099a4d4b48555e37ecd) Fix hard coded littlefs in json upload - [`64b8029`](https://github.com/OpenEPaperLink/OpenEPaperLink/commit/64b8029d08e2ee12e20d73ef1bddc2cf93bdb30d) Add new AP hardware support OpenEPaperLink_ESP32-PoE-ISO_AP - [`7dd5e29`](https://github.com/OpenEPaperLink/OpenEPaperLink/commit/7dd5e2929f8849c0700899043f515f78f3b26852) Avoid error message log print when parsers.json is missing - [`feae113`](https://github.com/OpenEPaperLink/OpenEPaperLink/commit/feae113fef3ad5ab8b4566a2f1e916fa0eb5f569) Workaround for IEEE802.15.4 modem stuck issue - [`154f33b`](https://github.com/OpenEPaperLink/OpenEPaperLink/commit/154f33bafde416926dae45826faa2ef754063ec6) Add OpenEPaperLink_ESP32-PoE-ISO_AP to release build - [`b8eac51`](https://github.com/OpenEPaperLink/OpenEPaperLink/commit/b8eac5185229fd4ea37599555e513dfadfeda631) Add OpenEPaperLink_ESP32-PoE-ISO_AP to condidional build - [`5fa3e53`](https://github.com/OpenEPaperLink/OpenEPaperLink/commit/5fa3e53c5b9e1b1c147be73f87746c9a3135bb23) Add Ethernet support ### 📊 Changes **19 files changed** (+479 additions, -109 deletions) <details> <summary>View changed files</summary> 📝 `.github/workflows/conditional-build-test.yml` (+7 -1) 📝 `.github/workflows/release.yml` (+32 -9) 📝 `ARM_Tag_FW/OpenEPaperLink_esp32_C6_AP/sdkconfig.defaults` (+1 -1) ➕ `ESP32_AP-Flasher/esp32_sdcard_only.csv` (+7 -0) 📝 `ESP32_AP-Flasher/include/storage.h` (+6 -0) 📝 `ESP32_AP-Flasher/include/wifimanager.h` (+5 -1) 📝 `ESP32_AP-Flasher/platformio.ini` (+103 -48) ➕ `ESP32_AP-Flasher/prepare_sdcard.sh` (+23 -0) 📝 `ESP32_AP-Flasher/src/leds.cpp` (+6 -4) 📝 `ESP32_AP-Flasher/src/main.cpp` (+9 -0) 📝 `ESP32_AP-Flasher/src/ota.cpp` (+8 -6) 📝 `ESP32_AP-Flasher/src/serialap.cpp` (+41 -2) 📝 `ESP32_AP-Flasher/src/storage.cpp` (+74 -6) 📝 `ESP32_AP-Flasher/src/system.cpp` (+1 -1) 📝 `ESP32_AP-Flasher/src/tag_db.cpp` (+2 -0) 📝 `ESP32_AP-Flasher/src/tagdata.cpp` (+4 -1) 📝 `ESP32_AP-Flasher/src/udp.cpp` (+5 -4) 📝 `ESP32_AP-Flasher/src/web.cpp` (+6 -4) 📝 `ESP32_AP-Flasher/src/wifimanager.cpp` (+139 -21) </details> ### 📄 Description This is based on Olimex ESP32-PoE-ISO [https://www.olimex.com/Products/IoT/ESP32/ESP32-POE-ISO/open-source-hardware](https://www.olimex.com/Products/IoT/ESP32/ESP32-POE-ISO/open-source-hardware) It has a SD Card slot that is used to store all filesystem data on SD. Use the prepare_sdcard.sh script to copy all needed data to an empty SD card that is formatted with FAT filesystem. The AP firmware will format the SD if an unformatted or from formatted card is used. This can be used to intially prepare an empty SD card for usage. For tag communication a ESP32-C6-WROOM-1(U) is used with the following connection scheme: | ESP32-PoE-ISO | ESP32-C6-WROOM-1 | |---------------|------------------ | | GPIO5 | EN | | GPIO13 | GPIO9 | | GPIO36 | GPIO3 | | GPIO4 | GPIO2 | | GPIO33 | GPIO24 | | GPIO32 | GPIO25 | | | GPIO8 pullup 5.1k | The AP has support for PoE/Ethernet, for that the new added Ethernet support allows to make the network/internet connection via LAN cable instead of WiFi. LAN is preferred, if a LAN cable is connected and a valid IP configuration via DHCP can be obtained, WiFi is switched off. If the LAN cable is disconnected, a fall back to WiFi is done. Use those defines in platform.ini for PHY settings: - ETHERNET_PHY_POWER: IO pin where the PHY can be switched of/on, can be -1 if not used. - ETHERNET_CLK_MODE: PHY clock mode, see eth_clock_mode_t in ETH.h - ETHERNET_PHY_MDC: PHY MDC pin - ETHERNET_PHY_MDIO: PHY MDIO pin - ETHERNET_PHY_TYPE: PHY type, see eth_phy_type_t in ETH.h Limitations: - only DHCP is supported, no static IP configuration for LAN so far. - If GPIO0 is used for one of the ETHERNET_CLK_MODE modes, then GPIO0 cannot be used to clear the WiFi configuration. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
sascha_hemi added the pull-request label 2026-03-20 21:08:36 +01:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/OpenEPaperLink#2740