#pragma once #include // Pins according to https://www.instructables.com/id/NodeMCU-ESP8266-Details-and-Pinout/ // D0 = 16 // D1 = 5 // D2 = 4 // D3 = 0 // D4 = 2 // D5 = 14 // D6 = 12 // D7 = 13 // D8 = 15 // A0 = 17 // Other usable pins: // 6, 7, 8, 11 not readable // 1, 3, 6, 7, 8, 11 nor writable -> 1 (TX) and 3 (RX) can be used read-only // 9 -> S2 // 10 -> S3 #define RX 3 #define TX 1 // Pins for MCP23017 #define GPA0 0 #define GPA1 1 #define GPA2 2 #define GPA3 3 #define GPA4 4 #define GPA5 5 #define GPA6 6 #define GPA7 7 #define GPB0 8 #define GPB1 9 #define GPB2 10 #define GPB3 11 #define GPB4 12 #define GPB5 13 #define GPB6 14 #define GPB7 15 #define SHOW_DEBUG //#define SHOW_TRACE #define FTP_DEBUG #define WIFI_SSID "Schlenz" #define WIFI_PASS "1410WischlingenPanda" #define VS1053_SLEEP_DELAY 5000 #define MQTT_REPORT_INTERVAL 10000 #define PIN_SD_CS(x) (digitalWrite(16, x)) #define PIN_SD_CS_SETUP() (pinMode(16, OUTPUT)) #define PIN_VS1053_XCS(x) (digitalWrite(4, x)) #define PIN_VS1053_XCS_SETUP() (pinMode(4, OUTPUT)) #define PIN_VS1053_XRESET(x) (digitalWrite(0, x)) #define PIN_VS1053_XRESET_SETUP() (pinMode(0, OUTPUT)) #define PIN_VS1053_XDCS(x) (digitalWrite(2, x)) #define PIN_VS1053_XDCS_SETUP() (pinMode(2, OUTPUT)) #define PIN_VS1053_DREQ() (digitalRead(15)) #define PIN_VS1053_DREQ_SETUP() (pinMode(15, INPUT)) #define PIN_RC522_CS(x) (digitalWrite(17, x)) #define PIN_RC522_CS_SETUP() (pinMode(17, OUTPUT)) #define PIN_SPEAKER_L(x) (digitalWrite(27, x)) #define PIN_SPEAKER_L_SETUP() (pinMode(27, OUTPUT)) #define PIN_SPEAKER_R(x) (digitalWrite(26, x)) #define PIN_SPEAKER_R_SETUP() (pinMode(26, OUTPUT)) #define BTN_PREV() ( ! digitalRead(22)) #define BTN_PREV_SETUP() (pinMode(22, INPUT_PULLUP)) #define BTN_VOL_UP() ( ! digitalRead(21)) #define BTN_VOL_UP_SETUP() (pinMode(21, INPUT_PULLUP)) #define BTN_VOL_DOWN() ( ! digitalRead(32)) #define BTN_VOL_DOWN_SETUP() (pinMode(32, INPUT_PULLUP)) #define BTN_NEXT() ( ! digitalRead(33)) #define BTN_NEXT_SETUP() (pinMode(33, INPUT_PULLUP)) #define MCP_I2C_ADDR 7 #define NUM_BUTTONS 4 #define DEBOUNCE_MILLIS 200 #define VOLUME_DEFAULT 230 #define VOLUME_MIN 190 #define VOLUME_MAX 255 #define VOLUME_STEP 0x08 #define MCP_SPI_SETTING_DELAY 1 #define RFID_SCAN_INTERVAL 100 // Other definitions #define INFO(x, ...) Serial.printf(x, ##__VA_ARGS__) #define ERROR(x, ...) Serial.printf(x, ##__VA_ARGS__) #ifdef SHOW_DEBUG #define DEBUG(x, ...) Serial.printf(x, ##__VA_ARGS__) #else #define DEBUG(x, ...) while(0) {} #endif #ifdef SHOW_TRACE #define TRACE(x, ...) Serial.printf(x, ##__VA_ARGS__) #else #define TRACE(x, ...) while(0) {} #endif