From eda059e13bdb9f94ec9ea72ae80bbf12728e33c8 Mon Sep 17 00:00:00 2001 From: brentru Date: Fri, 11 Apr 2025 16:17:32 -0400 Subject: [PATCH] fix OFFLINE requirement that is causing msc detach/attach after logging --- .../Wippersnapper_demo_offline_netiface.ino | 1 - .../Wippersnapper_demo_offline_nonetiface.ino | 1 - platformio.ini | 2 +- src/Wippersnapper_V2.cpp | 2 -- src/Wippersnapper_demo.ino | 8 ++++---- src/provisioning/tinyusb/Wippersnapper_FS.cpp | 7 ++----- 6 files changed, 7 insertions(+), 14 deletions(-) diff --git a/examples/Wippersnapper_demo_offline_netiface/Wippersnapper_demo_offline_netiface.ino b/examples/Wippersnapper_demo_offline_netiface/Wippersnapper_demo_offline_netiface.ino index 3f92ee9f..7acf2234 100644 --- a/examples/Wippersnapper_demo_offline_netiface/Wippersnapper_demo_offline_netiface.ino +++ b/examples/Wippersnapper_demo_offline_netiface/Wippersnapper_demo_offline_netiface.ino @@ -12,7 +12,6 @@ #include "ws_adapters.h" ws_adapter_wifi wipper; #define WS_DEBUG // Enable debug output! -#define BUILD_OFFLINE_ONLY void setup() { Serial.begin(115200); diff --git a/examples/Wippersnapper_demo_offline_nonetiface/Wippersnapper_demo_offline_nonetiface.ino b/examples/Wippersnapper_demo_offline_nonetiface/Wippersnapper_demo_offline_nonetiface.ino index 27cbe2a0..8ddacaa2 100644 --- a/examples/Wippersnapper_demo_offline_nonetiface/Wippersnapper_demo_offline_nonetiface.ino +++ b/examples/Wippersnapper_demo_offline_nonetiface/Wippersnapper_demo_offline_nonetiface.ino @@ -12,7 +12,6 @@ #include "ws_adapters.h" ws_adapter_offline wipper; #define WS_DEBUG // Enable debug output! -#define BUILD_OFFLINE_ONLY void setup() { Serial.begin(115200); diff --git a/platformio.ini b/platformio.ini index ee0c861a..6e3048d1 100644 --- a/platformio.ini +++ b/platformio.ini @@ -434,7 +434,7 @@ platform = https://github.com/maxgerhardt/platform-raspberrypi.git#develop board = adafruit_feather_adalogger platform_packages = framework-arduinopico@https://github.com/earlephilhower/arduino-pico.git board_build.filesystem_size = 0.5m -build_flags = -DUSE_TINYUSB -DBUILD_OFFLINE_ONLY +build_flags = -DUSE_TINYUSB ; Once https://github.com/platformio/platformio-core > 6.1.11 these can be removed lib_ignore = WiFiNINA, WiFi101, Adafruit Zero DMA Library diff --git a/src/Wippersnapper_V2.cpp b/src/Wippersnapper_V2.cpp index 7a3e71db..233e9aea 100644 --- a/src/Wippersnapper_V2.cpp +++ b/src/Wippersnapper_V2.cpp @@ -96,11 +96,9 @@ void Wippersnapper_V2::provision() { if (WsV2._sdCardV2->isSDCardInitialized()) { return; // SD card initialized, cede control back to loop() } else { -#ifdef BUILD_OFFLINE_ONLY haltErrorV2("SD initialization failed.\nDo not reformat the card!\nIs the " "card correctly inserted?\nIs there a wiring/soldering " "problem\nIs the config.json file malformed?"); -#endif // SD card not initialized, so just continue with online-mode provisioning } diff --git a/src/Wippersnapper_demo.ino b/src/Wippersnapper_demo.ino index 73628abd..8ddacaa2 100644 --- a/src/Wippersnapper_demo.ino +++ b/src/Wippersnapper_demo.ino @@ -1,16 +1,16 @@ -// Adafruit IO WipperSnapper +// Adafruit IO WipperSnapper - Offline Mode +// USE ONLY WITH DEVICES WITH A NETWORK ADAPTER LIKE ESP32-x // // Adafruit invests time and resources providing this open source code. // Please support Adafruit and open source hardware by purchasing // products from Adafruit! // -// Brent Rubell for Adafruit Industries, 2020-2025 +// Brent Rubell for Adafruit Industries, 2025 // // All text above must be included in any redistribution. #include "ws_adapters.h" -ws_adapter_wifi wipper; - +ws_adapter_offline wipper; #define WS_DEBUG // Enable debug output! void setup() { diff --git a/src/provisioning/tinyusb/Wippersnapper_FS.cpp b/src/provisioning/tinyusb/Wippersnapper_FS.cpp index 90121c3f..c0398b02 100644 --- a/src/provisioning/tinyusb/Wippersnapper_FS.cpp +++ b/src/provisioning/tinyusb/Wippersnapper_FS.cpp @@ -143,11 +143,6 @@ Wippersnapper_FS::Wippersnapper_FS() { HaltFilesystem("FATAL ERROR: Could not write filesystem contents!"); } -// Initialize USB-MSC -#ifndef BUILD_OFFLINE_ONLY - InitUsbMsc(); -#endif - // If we wrote a fresh secrets.json file, halt until user edits the file and // RESETs the device Signal to user that action must be taken (edit // secrets.json) @@ -683,6 +678,7 @@ void Wippersnapper_FS::WriteFileBoot(PGM_P str) { /**************************************************************************/ void Wippersnapper_FS::HaltFilesystem(String msg) { if (!_did_init_msc) { + WS_DEBUG_PRINTLN("HaltFilesystem: InitUsbMsc"); InitUsbMsc(); } TinyUSBDevice.attach(); @@ -706,6 +702,7 @@ void Wippersnapper_FS::HaltFilesystem(String msg) { void Wippersnapper_FS::HaltFilesystem(String msg, ws_led_status_t ledStatusColor) { if (!_did_init_msc) { + WS_DEBUG_PRINTLN("HaltFilesystem: InitUsbMsc"); InitUsbMsc(); } TinyUSBDevice.attach();