Compare commits

...

8 Commits

7 changed files with 23 additions and 13 deletions

View File

@ -6,7 +6,14 @@ pipeline:
- pip install -U platformio - pip install -U platformio
- pio run -e esp32 -e esp32_wifi -e esp32_bluetooth -e esp32_wifi_display - pio run -e esp32 -e esp32_wifi -e esp32_bluetooth -e esp32_wifi_display
- pio run -e esp32 -e esp32_wifi -e esp32_bluetooth -e esp32_wifi_display --target buildfs - pio run -e esp32 -e esp32_wifi -e esp32_bluetooth -e esp32_wifi_display --target buildfs
build_esp8266:
group: build
image: python
commands:
- pip install -U platformio
- pio run -e esp8266 -e esp8266_wifi
- pio run -e esp8266 -e esp8266_wifi --target buildfs
check: check:
image: python image: python
- pip install -U platformio - pip install -U platformio
- pio check -e esp32 --skip-packages --fail-on-defect medium --severity medium --severity high --severity low --pattern 'src/*' --pattern 'lib/*' - pio check -e esp8266 -e esp32 --skip-packages --fail-on-defect medium --severity medium --severity high --severity low --pattern 'src/*' --pattern 'lib/*'

View File

@ -130,7 +130,7 @@ private:
void init(); void init();
#ifdef CONFIG_THREADED_INPUTS #ifdef CONFIG_THREADED_INPUTS
static void readThread(void* data); static void readThread(void* data);
MainLoop* m_threadLoop; MainLoop* m_threadLoop = nullptr;
static uint8_t m_threadBuf[sizeof(InputEvent) * 32]; static uint8_t m_threadBuf[sizeof(InputEvent) * 32];
QueueHandle_t m_queue; QueueHandle_t m_queue;
StaticQueue_t m_threadQueue; StaticQueue_t m_threadQueue;

View File

@ -13,9 +13,11 @@ MainLoop::dispatch(const InputEvent& evt)
m_eventBuf.insert(evt); m_eventBuf.insert(evt);
} }
//#ifdef BOARD_ESP32 #ifndef __NOINIT_ATTR // Pre-defined on esp32
#define __NOINIT_ATTR __attribute__ ((section (".noinit")))
#endif
__NOINIT_ATTR const char* s_lastTaskName; __NOINIT_ATTR const char* s_lastTaskName;
//#endif
void void
MainLoop::dispatchSync(const InputEvent& evt) MainLoop::dispatchSync(const InputEvent& evt)
@ -86,7 +88,7 @@ MainLoop::loop()
frameSpeed = millis() - frameStart; frameSpeed = millis() - frameStart;
if (frameSpeed >= 23) { // TODO: Configure max frame time at build if (frameSpeed >= 23) { // TODO: Configure max frame time at build
const char* slowestName = (slowestTask->name ? slowestTask->name : "(Unnamed)"); const char* slowestName = (slowestTask->name ? slowestTask->name : "(Unnamed)");
Log.warning("Slow frame: %dms, %d tasks, longest task %s was %dms", frameSpeed, taskCount, slowestTask->name, slowest); Log.warning("Slow frame: %dms, %d tasks, longest task %s was %dms", frameSpeed, taskCount, slowestName, slowest);
} }
} }

View File

@ -17,9 +17,10 @@ src_build_flags =
-DRENDERBUG_LED_PIN=14 -DRENDERBUG_LED_PIN=14
-DRENDERBUG_LED_PACKING=RGB -DRENDERBUG_LED_PACKING=RGB
-DDEFAULT_PATTERN_INDEX=0 -DDEFAULT_PATTERN_INDEX=0
-Wall
lib_deps_external = lib_deps_external =
fastled/FastLED@^3.4.0 fastled/FastLED@^3.5.0
thijse/ArduinoLog@1.0.3 thijse/ArduinoLog@^1.1.0
bblanchon/ArduinoJson@^6.17.3 bblanchon/ArduinoJson@^6.17.3
LittleFS LittleFS
@ -27,7 +28,7 @@ lib_deps_external =
src_build_flags = src_build_flags =
-DCONFIG_U8DISPLAY -DCONFIG_U8DISPLAY
lib_deps = lib_deps =
olikraus/U8g2@2.34.13 olikraus/U8g2@^2.34.15
src_filter = "+<platform/arduino/U8Display.cpp>" src_filter = "+<platform/arduino/U8Display.cpp>"
[config_mqtt] [config_mqtt]
@ -128,7 +129,7 @@ src_build_flags =
lib_deps = lib_deps =
${common_env_data.lib_deps_external} ${common_env_data.lib_deps_external}
arduino-libraries/NTPClient@^3.1.0 arduino-libraries/NTPClient@^3.1.0
src_filter = "${common_env_data.src_filter} +<inputs/Serial.cpp>" src_filter = "${common_env_data.src_filter}"
[env:esp32_bluetooth] [env:esp32_bluetooth]
extends = env:esp32, config_bluetooth extends = env:esp32, config_bluetooth

View File

@ -27,8 +27,9 @@ STARTUP(BootOptions::initPins());
#ifdef CONFIG_MQTT #ifdef CONFIG_MQTT
#include "platform/arduino/MQTTTelemetry.h" #include "platform/arduino/MQTTTelemetry.h"
#endif #endif
void printNewline(Print* logOutput) void printNewline(Print* logOutput, int logLevel)
{ {
(void)logLevel; // unused
logOutput->print("\r\n"); logOutput->print("\r\n");
} }
int printEspLog(const char* fmt, va_list args) int printEspLog(const char* fmt, va_list args)
@ -180,7 +181,7 @@ Platform::getLocalTime(struct tm* timedata)
return false; return false;
#elif defined(BOARD_ESP32) #elif defined(BOARD_ESP32)
time_t rawtime; time_t rawtime;
memset(&rawtime, 0, sizeof(rawtime)); memset(&rawtime, sizeof(rawtime), 0);
time(&rawtime); time(&rawtime);
(*timedata) = (*localtime(&rawtime)); (*timedata) = (*localtime(&rawtime));
return (timedata->tm_year > (2016-1990)); return (timedata->tm_year > (2016-1990));

View File

@ -1,5 +1,4 @@
#pragma once #pragma once
#include "Particle.h"
#include "../Figments/Figments.h" #include "../Figments/Figments.h"
class SerialInput: public InputSource { class SerialInput: public InputSource {

View File

@ -89,7 +89,7 @@ void setup() {
if (Platform::bootopts.crashCount > 0) { if (Platform::bootopts.crashCount > 0) {
Log.warning(u8"Previous crash detected!!!! We're on attempt %d", Platform::bootopts.crashCount); Log.warning(u8"Previous crash detected!!!! We're on attempt %d", Platform::bootopts.crashCount);
char lastTaskBuf[15]; char lastTaskBuf[16];
strncpy(lastTaskBuf, MainLoop::lastTaskName(), sizeof(lastTaskBuf)); strncpy(lastTaskBuf, MainLoop::lastTaskName(), sizeof(lastTaskBuf));
lastTaskBuf[15] = 0; lastTaskBuf[15] = 0;
Log.error(u8"Crash occurred in task %s", lastTaskBuf); Log.error(u8"Crash occurred in task %s", lastTaskBuf);