remove legacy string->print()

This commit is contained in:
Jonathan Bennett 2025-06-07 10:46:03 -05:00
parent 94e0b209bc
commit 3955a5616e
9 changed files with 0 additions and 78 deletions

View File

@ -184,7 +184,6 @@ static void serialEnter()
setBluetoothEnable(false); setBluetoothEnable(false);
if (screen) { if (screen) {
screen->setOn(true); screen->setOn(true);
screen->print("Serial connected\n");
} }
} }
@ -192,8 +191,6 @@ static void serialExit()
{ {
// Turn bluetooth back on when we leave serial stream API // Turn bluetooth back on when we leave serial stream API
setBluetoothEnable(true); setBluetoothEnable(true);
if (screen)
screen->print("Serial disconnected\n");
} }
static void powerEnter() static void powerEnter()
@ -208,12 +205,6 @@ static void powerEnter()
screen->setOn(true); screen->setOn(true);
setBluetoothEnable(true); setBluetoothEnable(true);
// within enter() the function getState() returns the state we came from // within enter() the function getState() returns the state we came from
// Mothballed: print change of power-state to device screen
/* if (strcmp(powerFSM.getState()->name, "BOOT") != 0 && strcmp(powerFSM.getState()->name, "POWER") != 0 &&
strcmp(powerFSM.getState()->name, "DARK") != 0) {
screen->print("Powered...\n");
}*/
} }
} }
@ -231,10 +222,6 @@ static void powerExit()
if (screen) if (screen)
screen->setOn(true); screen->setOn(true);
setBluetoothEnable(true); setBluetoothEnable(true);
// Mothballed: print change of power-state to device screen
/*if (!isPowered())
screen->print("Unpowered...\n");*/
} }
static void onEnter() static void onEnter()

View File

@ -12,7 +12,6 @@ enum class Cmd {
STOP_ALERT_FRAME, STOP_ALERT_FRAME,
START_FIRMWARE_UPDATE_SCREEN, START_FIRMWARE_UPDATE_SCREEN,
STOP_BOOT_SCREEN, STOP_BOOT_SCREEN,
PRINT,
SHOW_PREV_FRAME, SHOW_PREV_FRAME,
SHOW_NEXT_FRAME SHOW_NEXT_FRAME
}; };

View File

@ -1201,10 +1201,6 @@ int32_t Screen::runOnce()
EINK_ADD_FRAMEFLAG(dispdev, COSMETIC); // E-Ink: Explicitly use full-refresh for next frame EINK_ADD_FRAMEFLAG(dispdev, COSMETIC); // E-Ink: Explicitly use full-refresh for next frame
setFrames(); setFrames();
break; break;
case Cmd::PRINT:
handlePrint(cmd.print_text);
free(cmd.print_text);
break;
default: default:
LOG_ERROR("Invalid screen cmd"); LOG_ERROR("Invalid screen cmd");
} }
@ -1334,15 +1330,6 @@ void Screen::setFrames(FrameFocus focus)
showingNormalScreen = true; showingNormalScreen = true;
indicatorIcons.clear(); indicatorIcons.clear();
#ifdef USE_EINK
// If user has disabled the screensaver, warn them after boot
static bool warnedScreensaverDisabled = false;
if (config.display.screen_on_secs == 0 && !warnedScreensaverDisabled) {
screen->print("Screensaver disabled\n");
warnedScreensaverDisabled = true;
}
#endif
moduleFrames = MeshModule::GetMeshModulesWithUIFrames(); moduleFrames = MeshModule::GetMeshModulesWithUIFrames();
LOG_DEBUG("Show %d module frames", moduleFrames.size()); LOG_DEBUG("Show %d module frames", moduleFrames.size());
#ifdef DEBUG_PORT #ifdef DEBUG_PORT
@ -1627,17 +1614,6 @@ void Screen::removeFunctionSymbol(std::string sym)
setFastFramerate(); setFastFramerate();
} }
void Screen::handlePrint(const char *text)
{
// the string passed into us probably has a newline, but that would confuse the logging system
// so strip it
LOG_DEBUG("Screen: %.*s", strlen(text) - 1, text);
if (!useDisplay || !showingNormalScreen)
return;
dispdev->print(text);
}
void Screen::handleOnPress() void Screen::handleOnPress()
{ {
// If Canned Messages is using the "Scan and Select" input, dismiss the canned message frame when user button is pressed // If Canned Messages is using the "Scan and Select" input, dismiss the canned message frame when user button is pressed

View File

@ -30,7 +30,6 @@ class Screen
void onPress() {} void onPress() {}
void setup() {} void setup() {}
void setOn(bool) {} void setOn(bool) {}
void print(const char *) {}
void doDeepSleep() {} void doDeepSleep() {}
void forceDisplay(bool forceUiUpdate = false) {} void forceDisplay(bool forceUiUpdate = false) {}
void startFirmwareUpdateScreen() {} void startFirmwareUpdateScreen() {}
@ -320,20 +319,6 @@ class Screen : public concurrency::OSThread
/// Stops showing the boot screen. /// Stops showing the boot screen.
void stopBootScreen() { enqueueCmd(ScreenCmd{.cmd = Cmd::STOP_BOOT_SCREEN}); } void stopBootScreen() { enqueueCmd(ScreenCmd{.cmd = Cmd::STOP_BOOT_SCREEN}); }
/// Writes a string to the screen.
void print(const char *text)
{
ScreenCmd cmd;
cmd.cmd = Cmd::PRINT;
// TODO(girts): strdup() here is scary, but we can't use std::string as
// FreeRTOS queue is just dumbly copying memory contents. It would be
// nice if we had a queue that could copy objects by value.
cmd.print_text = strdup(text);
if (!enqueueCmd(cmd)) {
free(cmd.print_text);
}
}
/// Overrides the default utf8 character conversion, to replace empty space with question marks /// Overrides the default utf8 character conversion, to replace empty space with question marks
static char customFontTableLookup(const uint8_t ch) static char customFontTableLookup(const uint8_t ch)
{ {
@ -614,7 +599,6 @@ class Screen : public concurrency::OSThread
void handleOnPress(); void handleOnPress();
void handleShowNextFrame(); void handleShowNextFrame();
void handleShowPrevFrame(); void handleShowPrevFrame();
void handlePrint(const char *text);
void handleStartFirmwareUpdateScreen(); void handleStartFirmwareUpdateScreen();
// Info collected by setFrames method. // Info collected by setFrames method.

View File

@ -166,13 +166,6 @@ void ButtonThread::sendAdHocPosition()
{ {
service->refreshLocalMeshNode(); service->refreshLocalMeshNode();
auto sentPosition = service->trySendPosition(NODENUM_BROADCAST, true); auto sentPosition = service->trySendPosition(NODENUM_BROADCAST, true);
if (screen) {
if (sentPosition)
screen->print("Sent ad-hoc position\n");
else
screen->print("Sent ad-hoc nodeinfo\n");
screen->forceDisplay(true); // Force a new UI frame, then force an EInk update
}
playComboTune(); playComboTune();
} }

View File

@ -953,9 +953,6 @@ void setup()
screen->setup(); screen->setup();
#endif #endif
#endif #endif
if (screen) {
screen->print("Started...\n");
}
#ifdef PIN_PWR_DELAY_MS #ifdef PIN_PWR_DELAY_MS
// This may be required to give the peripherals time to power up. // This may be required to give the peripherals time to power up.

View File

@ -1804,10 +1804,6 @@ bool NodeDB::restorePreferences(meshtastic_AdminMessage_BackupLocation location,
/// Record an error that should be reported via analytics /// Record an error that should be reported via analytics
void recordCriticalError(meshtastic_CriticalErrorCode code, uint32_t address, const char *filename) void recordCriticalError(meshtastic_CriticalErrorCode code, uint32_t address, const char *filename)
{ {
// Print error to screen and serial port
String lcd = String("Critical error ") + code + "!\n";
if (screen)
screen->print(lcd.c_str());
if (filename) { if (filename) {
LOG_ERROR("NOTE! Record critical error %d at %s:%lu", code, filename, address); LOG_ERROR("NOTE! Record critical error %d at %s:%lu", code, filename, address);
} else { } else {

View File

@ -83,10 +83,6 @@ bool RemoteHardwareModule::handleReceivedProtobuf(const meshtastic_MeshPacket &r
switch (p.type) { switch (p.type) {
case meshtastic_HardwareMessage_Type_WRITE_GPIOS: { case meshtastic_HardwareMessage_Type_WRITE_GPIOS: {
// Print notification to LCD screen
if (screen)
screen->print("Write GPIOs\n");
pinModes(p.gpio_mask, OUTPUT, availablePins); pinModes(p.gpio_mask, OUTPUT, availablePins);
for (uint8_t i = 0; i < NUM_GPIOS; i++) { for (uint8_t i = 0; i < NUM_GPIOS; i++) {
uint64_t mask = 1ULL << i; uint64_t mask = 1ULL << i;
@ -99,10 +95,6 @@ bool RemoteHardwareModule::handleReceivedProtobuf(const meshtastic_MeshPacket &r
} }
case meshtastic_HardwareMessage_Type_READ_GPIOS: { case meshtastic_HardwareMessage_Type_READ_GPIOS: {
// Print notification to LCD screen
if (screen)
screen->print("Read GPIOs\n");
uint64_t res = digitalReads(p.gpio_mask, availablePins); uint64_t res = digitalReads(p.gpio_mask, availablePins);
// Send the reply // Send the reply

View File

@ -14,8 +14,6 @@ meshtastic_MeshPacket *ReplyModule::allocReply()
// The incoming message is in p.payload // The incoming message is in p.payload
LOG_INFO("Received message from=0x%0x, id=%d, msg=%.*s", req.from, req.id, p.payload.size, p.payload.bytes); LOG_INFO("Received message from=0x%0x, id=%d, msg=%.*s", req.from, req.id, p.payload.size, p.payload.bytes);
#endif #endif
if (screen)
screen->print("Send reply\n");
const char *replyStr = "Message Received"; const char *replyStr = "Message Received";
auto reply = allocDataPacket(); // Allocate a packet for sending auto reply = allocDataPacket(); // Allocate a packet for sending