ESPixelStick Firmware
Firmware for the ESPixelStick
Loading...
Searching...
No Matches
GPIO_Defs_ESP32_Bong69.hpp
Go to the documentation of this file.
1#pragma once
2/*
3* GPIO_Defs_ESP32_Bongo69.hpp - Output Management class
4*
5* Project: ESPixelStick - An ESP8266 / ESP32 and E1.31 based pixel driver
6* Copyright (c) 2021-2026 Shelby Merrick
7* http://www.forkineye.com
8*
9* This program is provided free for you to use in any way that you wish,
10* subject to the laws and regulations where you are using it. Due diligence
11* is strongly suggested before using this code. Please give credit where due.
12*
13* The Author makes no warranty of any kind, express or implied, with regard
14* to this program or the documentation contained in this document. The
15* Author shall not be liable in any event for incidental or consequential
16* damages in connection with, or arising out of, the furnishing, performance
17* or use of these programs.
18*
19*/
20
21// Output Manager
22// MAX 8 Serial port on ESP32
24{
25 {OM_PortId_t(0), OM_PortType_t::OM_SERIAL, {gpio_num_t::GPIO_NUM_1}},
26 {OM_PortId_t(0), OM_PortType_t::OM_RELAY, {gpio_num_t::GPIO_NUM_1}},
27 {OM_PortId_t(1), OM_PortType_t::OM_SERIAL, {gpio_num_t::GPIO_NUM_2}},
28 {OM_PortId_t(1), OM_PortType_t::OM_RELAY, {gpio_num_t::GPIO_NUM_2}},
29 {OM_PortId_t(2), OM_PortType_t::OM_SERIAL, {gpio_num_t::GPIO_NUM_3}},
30 {OM_PortId_t(2), OM_PortType_t::OM_RELAY, {gpio_num_t::GPIO_NUM_3}},
31 {OM_PortId_t(3), OM_PortType_t::OM_SERIAL, {gpio_num_t::GPIO_NUM_4}},
32 {OM_PortId_t(3), OM_PortType_t::OM_RELAY, {gpio_num_t::GPIO_NUM_4}},
33 {OM_PortId_t(4), OM_PortType_t::OM_SERIAL, {gpio_num_t::GPIO_NUM_5}},
34 {OM_PortId_t(4), OM_PortType_t::OM_RELAY, {gpio_num_t::GPIO_NUM_5}},
35 {OM_PortId_t(5), OM_PortType_t::OM_SERIAL, {gpio_num_t::GPIO_NUM_12}},
36 {OM_PortId_t(5), OM_PortType_t::OM_RELAY, {gpio_num_t::GPIO_NUM_12}},
37 {OM_PortId_t(6), OM_PortType_t::OM_SERIAL, {gpio_num_t::GPIO_NUM_14}},
38 {OM_PortId_t(6), OM_PortType_t::OM_RELAY, {gpio_num_t::GPIO_NUM_14}},
39 {OM_PortId_t(7), OM_PortType_t::OM_SERIAL, {gpio_num_t::GPIO_NUM_15}},
40 {OM_PortId_t(7), OM_PortType_t::OM_RELAY, {gpio_num_t::GPIO_NUM_15}},
41 {OM_PortId_t(8), OM_PortType_t::OM_I2C, {gpio_num_t::GPIO_NUM_21, gpio_num_t::GPIO_NUM_22}},
42};
43
44// File Manager
45// #define SUPPORT_SD
46#define SD_CARD_MISO_PIN gpio_num_t::GPIO_NUM_12
47#define SD_CARD_MOSI_PIN gpio_num_t::GPIO_NUM_13
48#define SD_CARD_CLK_PIN gpio_num_t::GPIO_NUM_14
49#define SD_CARD_CS_PIN gpio_num_t::GPIO_NUM_15
50
51#define SUPPORT_ETHERNET
52#include <ETH.h>
53
54/*
55 * ETH_CLOCK_GPIO0_IN - default: external clock from crystal oscillator
56 * ETH_CLOCK_GPIO0_OUT - 50MHz clock from internal APLL output on GPIO0 - possibly an inverter is needed for LAN8720
57 * ETH_CLOCK_GPIO16_OUT - 50MHz clock from internal APLL output on GPIO16 - possibly an inverter is needed for LAN8720
58 * ETH_CLOCK_GPIO17_OUT - 50MHz clock from internal APLL inverted output on GPIO17 - tested with LAN8720
59*/
60#define DEFAULT_ETH_CLK_MODE eth_clock_mode_t::ETH_CLOCK_GPIO17_OUT
61
62// Pin# of the enable signal for the external crystal oscillator (-1 to disable for internal APLL source)
63#define DEFAULT_ETH_POWER_PIN gpio_num_t::GPIO_NUM_16
64#define ETH_POWER_PIN DEFAULT_ETH_POWER_PIN
65#define DEFAULT_ETH_POWER_PIN_ACTIVE HIGH
66
67// Type of the Ethernet PHY (LAN8720 or TLK110)
68#define DEFAULT_ETH_TYPE eth_phy_type_t::ETH_PHY_LAN8720
69
70// I2C-address of Ethernet PHY (0 or 1 for LAN8720, 31 for TLK110)
71#define ETH_ADDR_PHY_LAN8720 1
72
73#define DEFAULT_ETH_ADDR ETH_ADDR_PHY_LAN8720
74#define DEFAULT_ETH_TXEN gpio_num_t::GPIO_NUM_21
75#define DEFAULT_ETH_TXD0 gpio_num_t::GPIO_NUM_19
76#define DEFAULT_ETH_TXD1 gpio_num_t::GPIO_NUM_22
77#define DEFAULT_ETH_CRSDV gpio_num_t::GPIO_NUM_27
78#define DEFAULT_ETH_RXD0 gpio_num_t::GPIO_NUM_25
79#define DEFAULT_ETH_RXD1 gpio_num_t::GPIO_NUM_26
80#define DEFAULT_ETH_MDC_PIN gpio_num_t::GPIO_NUM_23
81#define DEFAULT_ETH_MDIO_PIN gpio_num_t::GPIO_NUM_18
82
83// Output Types
84// Not Finished - #define SUPPORT_OutputProtocol_TLS3001
85// #define SUPPORT_OutputProtocol_APA102 // OM_SPI
86#define SUPPORT_OutputProtocol_DMX // OM_SERIAL
87#define SUPPORT_OutputProtocol_GECE // OM_SERIAL
88#define SUPPORT_OutputProtocol_GS8208 // OM_SERIAL
89#define SUPPORT_OutputProtocol_Renard // OM_SERIAL
90#define SUPPORT_OutputProtocol_Serial // OM_SERIAL
91#define SUPPORT_OutputProtocol_TM1814 // OM_SERIAL
92#define SUPPORT_OutputProtocol_UCS1903 // OM_SERIAL
93#define SUPPORT_OutputProtocol_UCS8903 // OM_SERIAL
94// #define SUPPORT_OutputProtocol_WS2801 // OM_SPI
95#define SUPPORT_OutputProtocol_WS2811 // OM_SERIAL
96#define SUPPORT_OutputProtocol_Relay // OM_RELAY
97#define SUPPORT_OutputProtocol_Servo_PCA9685 // OM_I2C
98#define SUPPORT_OutputProtocol_FireGod // OM_SERIAL
99// #define SUPPORT_OutputProtocol_GRINCH // OM_SPI
const OM_OutputPortDefinition_t OM_OutputPortDefinitions[]
Definition GPIO_Defs_ESP32_Bong69.hpp:23
@ OM_I2C
Definition OutputMgrPortDefs.hpp:78
@ OM_SERIAL
Definition OutputMgrPortDefs.hpp:75
@ OM_RELAY
Definition OutputMgrPortDefs.hpp:76
uint8_t OM_PortId_t
Definition OutputMgrPortDefs.hpp:71
Definition OutputMgrPortDefs.hpp:90