From 619631f80e83ba59e7d644a80830080768fbeadd Mon Sep 17 00:00:00 2001
From: "Hans P. Reiser"
Date: Wed, 17 Apr 2019 14:54:19 +0200
Subject: [PATCH] configurable oled pins, minor spectrum enhancement
---
RX_FSK/RX_FSK.ino | 15 ++++++++-------
RX_FSK/data/config.txt | 3 +++
2 files changed, 11 insertions(+), 7 deletions(-)
diff --git a/RX_FSK/RX_FSK.ino b/RX_FSK/RX_FSK.ino
index 2d65d93..9d5e473 100644
--- a/RX_FSK/RX_FSK.ino
+++ b/RX_FSK/RX_FSK.ino
@@ -13,9 +13,9 @@
#define LORA_LED 9
// I2C OLED Display works with SSD1306 driver
-#define OLED_SDA 4
-#define OLED_SCL 15
-#define OLED_RST 16
+//#define OLED_SDA 4
+//#define OLED_SCL 15
+//#define OLED_RST 16
// UNCOMMENT one of the constructor lines below
U8X8_SSD1306_128X64_NONAME_SW_I2C *u8x8=NULL; // initialize later after reading config file
@@ -429,7 +429,7 @@ const char *fetchWifiPw(const char *id) {
enum KeyPress { KP_NONE=0, KP_SHORT, KP_DOUBLE, KP_MID, KP_LONG };
struct Button {
- const uint8_t PIN;
+ uint8_t pin;
uint32_t numberKeyPresses;
KeyPress pressed;
unsigned long press_ts;
@@ -438,7 +438,7 @@ struct Button {
Button button1 = {0, 0, KP_NONE, 0, false};
void IRAM_ATTR buttonISR() {
- if(digitalRead(0)==0) { // Button down
+ if(digitalRead(button1.pin)==0) { // Button down
if(millis()-button1.press_ts<500) {
// Double press
button1.doublepress = true;
@@ -486,8 +486,9 @@ void setup()
setupWifiList();
setupConfigData();
+ button1.pin = sonde.config.button_pin;
- u8x8 = new U8X8_SSD1306_128X64_NONAME_SW_I2C(/* clock=*/ OLED_SCL, /* data=*/ OLED_SDA, /* reset=*/ OLED_RST); // Unbuffered, basic graphics, software I2C
+ u8x8 = new U8X8_SSD1306_128X64_NONAME_SW_I2C(/* clock=*/ sonde.config.oled_scl, /* data=*/ sonde.config.oled_sda, /* reset=*/ sonde.config.oled_rst); // Unbuffered, basic graphics, software I2C
u8x8->begin();
@@ -523,7 +524,7 @@ void setup()
// xTaskCreate(mainloop, "MainServer", 10240, NULL, 10, NULL);
// Handle button press
- attachInterrupt(0, buttonISR, CHANGE);
+ attachInterrupt(button1.pin, buttonISR, CHANGE);
setupChannelList();
#if 0
diff --git a/RX_FSK/data/config.txt b/RX_FSK/data/config.txt
index 56c59cf..6d252e1 100644
--- a/RX_FSK/data/config.txt
+++ b/RX_FSK/data/config.txt
@@ -1,7 +1,10 @@
+# Input button
+button_pin=0
# oled: SDA, SCL, RST (4,15,16 für TTGO v1)
oled_sda=4
oled_scl=15
oled_rst=16
+
noisefloor=-130
call=NOCALL
passcode=12345