No serial output until hardware is reset by on board button press

Problem: Blynk sketch won’t run / serial monitor won’t output
until after manual reset (=on board button pressed).

When run the Blink example, with additional “Serial.print (“Blynk”);”
line into the Arduino Blink example get spontaneous serial monitor output with each 1 sec flash of LED.
I take this to mean the board can still do serial monitor output without reset.

MH ET Live ESP32 MiniKit (But also same problem if ESP32 DevKit used)
New token generated by Blynk legacy app on iphone 7 included in sketch
Intended to connect iphone with legacy Blynk app by WiFi.
Get’s a ping after reset but still no connection shown on phone

Code

/***********************************************************
**
 * put legacy auth token in this 16/3/22
  Download latest Blynk library here:
    https://github.com/blynkkk/blynk-library/releases/latest

  Blynk is a platform with iOS and Android apps to control
  Arduino, Raspberry Pi and the likes over the Internet.
  You can easily build graphic interfaces for all your
  projects by simply dragging and dropping widgets.

    Downloads, docs, tutorials: http://www.blynk.cc
    Sketch generator:           http://examples.blynk.cc
    Blynk community:            http://community.blynk.cc
    Follow us:                  http://www.fb.com/blynkapp
                                http://twitter.com/blynk_app

  Blynk library is licensed under MIT license
  This example code is in public domain.

 *************************************************************

  This sketch shows how to read values from Virtual Pins

  App project setup:
    Slider widget (0...100) on Virtual Pin V1
 *************************************************************/

/* Comment this out to disable prints and save space */
#define BLYNK_PRINT Serial

/* Fill-in your Template ID (only if using Blynk.Cloud) */
//#define BLYNK_TEMPLATE_ID   "your template here "

/*                  %%%%Take out the ethernet libs
#include <SPI.h>
#include <Ethernet.h>
#include <BlynkSimpleEthernet.h>
*/

//Put in the WiFi libs
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>



// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "VeresiPhone";
char pass[] = "xxxxx";

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
char auth[] = "xxxxxxxxxxx";  //New token for Legacy Blynk;


// in Blynk app writes values to the Virtual Pin V1
BLYNK_WRITE(V1)
{
  int pinValue = param.asInt(); // assigning incoming value from pin V1 to a variable
  Serial.print ("V1 value is   ");
  Serial.println(pinValue);  // print the value

  // process received value
}

void setup()
{
  // Debug console
  Serial.begin(115200);

  Blynk.begin(auth, ssid, pass);
}

void loop()
{
  Blynk.run();
}

No serial output after upload and start serial monitor

Below, Serial monitor output after manual reset of on board button;

23:52:53.798 -> ets Jun  8 2016 00:22:57
23:52:53.798 -> 
23:52:53.798 -> rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
23:52:53.798 -> configsip: 0, SPIWP:0xee
23:52:53.798 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
23:52:53.798 -> mode:DIO, clock div:1
23:52:53.798 -> load:0x3fff0018,len:4
23:52:53.798 -> load:0x3fff001c,len:1044
23:52:53.798 -> load:0x40078000,len:10124
23:52:53.798 -> load:0x40080400,len:5856
23:52:53.798 -> entry 0x400806a8
23:52:54.031 -> [28] Connecting to VeresiPhone
23:52:56.687 -> [2652] Connected to WiFi
23:52:56.687 -> [2652] IP: 172.20.10.12
23:52:56.687 -> [2653] 
23:52:56.687 ->     ___  __          __
23:52:56.687 ->    / _ )/ /_ _____  / /__
23:52:56.687 ->   / _  / / // / _ \/  '_/
23:52:56.687 ->  /____/_/\_, /_//_/_/\_\
23:52:56.687 ->         /___/ v1.0.1 on ESP32
23:52:56.687 -> 
23:52:56.687 -> [2659] Connecting to blynk-cloud.com:80
23:52:57.341 -> [3327] Ready (ping: 303ms).

I have tried to be concise, but if you need anything else please respond.

Cheers
Vere

You are using blynk legacy so you should use library version 0.6.1 instead of 1.0.1

Where are you placing this line of code?

Output of what text in the serial monitor?

Why is your LED flashing once per second? You have nothing in your sketch to cause this to happen.

Pete.

Sorry for the confusion. I meant I ran the Arduino IDE “Blink” basic example, but with a “Serial.print”
line next to the "digital.write(HIGH) to test that the board could do a serial monitor without a reset button reset. I didn’t include that code here, didn’t even save it after the quick test.
Sorry for not making myself clearer

What version of the Arduino IDE are you running, and does closing and re-launching the Serial Monitor window help?

Pete.

IDE version
1.8.19 (Windows Store 1.8.57.0)

no difference with clearing, closing and reopening serial monitor. no difference with
disconnecting/reconnecting board from USB

with auth token obtained through legacy phone app, library is 1.01
no startup serial monitor out put but does after on-board reset.

with auth token obtained through legacy phone app, library is 0.6.1
no startup serial monitor out put but does after on-board reset.

with Auth token obtained through 2.0 app , matching template uncommented and library 1.0.1
Still no serial report on boot, only when reset button on board pressed.

Thanks for your help so far.

Have you tried a short delay after your Serial.begin command?

Pete.

Not sure what Short is so I gave it 500ms
got spontaneous boot report which said;

22:23:23.303 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 204 - HANDSHAKE_TIMEOUT
22:23:35.345 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 5 - STA_DISCONNECTED
22:23:35.345 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 204 - HANDSHAKE_TIMEOUT
22:23:37.397 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 5 - STA_DISCONNECTED
22:23:37.397 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 201 - NO_AP_FOUND

tried again with 50ms
If I press onboard reset button, (time obvious from giberish) get this output.

22:29:01.099 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 5 - STA_DISCONNECTED
22:29:01.099 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 204 - HANDSHAKE_TIMEOUT
22:29:13.128 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 5 - STA_DISCONNECTED
22:29:13.177 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 204 - HANDSHAKE_TIMEOUT
22:29:25.209 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 5 - STA_DISCONNECTED
22:29:25.209 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 204 - HANDSHAKE_TIMEOUT
22:29:37.297 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 5 - STA_DISCONNECTED
22:29:37.297 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 204 - HANDSHAKE_TIMEOUT
22:29:49.373 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 5 - STA_DISCONNECTED
22:29:49.373 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 204 - HANDSHAKE_TIMEOUT
22:29:51.292 -> eׁJun  ⸮016 0Ғ⸮:57
22:29:51.292 -> 
!⸮.⸮⸮⸮⸮ 	⸮]I=9}IMET),boo⸮⸮x13 (SPReMQ}1MH_BOOT)C⸮⸮⸮˥⸮ͥ⸮⸮ 0, SPR⸮⸮•⸮5
22:29:51.292 -> clk_drv:⸮⸮0,q_dr⸮⸮x00,d_d.⸮⸮⸮⸮0,c.⸮⸮⸮⸮⸮0x0bB⸮}⸮⸮⸮⸮0⸮0,wp_dr⸮⸮x00
22:29:51.292 -> [⸮⸮⸮DIO,⸮ock div⸮j
22:29:51.292 -> load:⸮⸮fff0018⸮⸮⸮⸮4
22:29:51.292 -> l+⸮⸮0x3fff⸮⸮c,len:L⸮4
22:29:51.395 -> loa⸮⸮x400780⸮blen:10L&SH⸮⸮⸮⸮⸮0x4008040bb⸮⸮⸮5856C⸮⸮⸮⸮⸮0x⸮806a8
⸮[76] Connecting to VeresiPhone
22:29:51.760 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 0 - WIFI_READY
22:29:51.760 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 2 - STA_START
22:30:03.793 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 5 - STA_DISCONNECTED
22:30:03.793 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 204 - HANDSHAKE_TIMEOUT
22:30:15.837 -> [D][WiFiGeneric.cpp:374] _eventCallback(): Event: 5 - STA_DISCONNECTED
22:30:15.883 -> [W][WiFiGeneric.cpp:391] _eventCallback(): Reason: 204 - HANDSHAKE_TIMEOUT

then I commented out the delay and got the same output as with the delays

It looks like you’ve compiled your code with Tools > Debug Level: set to something other than “None” and Tools > Debug Port set to “Serial” rather than “Disabled”.

Is this correct?

Pete.

My tools dropdown does not have a line “Debug port”
“Tools” looks like this;
Board; MH ET Live ESP32MiniKit
Upload; 115200
Flash;80MHz
Partition Scheme; Default with spiffs
Core debug level; verbose
port;
Board info;
BN: Unknown board
VID: 1A86
PID: 55D4
SN: Upload any sketch to obtain it

Sorry, I forgot that you were using an ESP32. These debug options are only available for the ESP8266 based boards.

I think this is the equivalent for your board, try setting it to “None”

Pete.

Currently trying legacy library and auth token, will try the other combination next
legacy;
Changed to Core debug level = None.
No boot report on serial monitor

hit reset button, got

23:20:21.975 -> 
23:20:21.975 -> rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
23:20:22.022 -> confi֥⸮⸮ 0, SPIWP:0xee
23:20:22.022 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_d.⸮⸮⸮⸮0
23:20:22.022 -> mode:DIO, clock div:1
23:20:22.022 -> load:0x3fff0018,len:4
23:20:22.022 -> load:0x3fff001c,len:1044
!⸮+⸮⸮0x40078000,len:10124
23:20:22.022 -> load:0x40080400,len:5856
23:20:22.022 -> entry 0x400806a8
23:20:22.302 -> [78] Connecting to VeresiPhone
23:20:24.924 -> [2700] Connected to WiFi
23:20:24.924 -> [2700] IP: 172.20.10.12
23:20:24.924 -> [2701] 
23:20:24.924 ->     ___  __          __
23:20:24.971 ->    / _ )/ /_ _____  / /__
23:20:24.971 ->   / _  / / // / _ \/  '_/
23:20:24.971 ->  /____/_/\_, /_//_/_/\_\
23:20:24.971 ->         /___/ v0.6.1 on ESP32
23:20:24.971 -> 
23:20:24.971 -> [2707] Connecting to blynk-cloud.com:80
23:20:25.956 -> [3721] Ready (ping: 610ms).

this is the code I have been using tonight, but changing from legacy to new (with no noticeable difference in output).
This latest attempt all new Blynk setup with library 1.0.1

Code

/*
 * put legacy auth token in this 16/3/22
 *tried with Blyk Library 0.6.1 and 1.0.1 and "legacy" token
 *then tried token and template combination from New Blynk and library 1.0.1
  Download latest Blynk library here:
    https://github.com/blynkkk/blynk-library/releases/latest

  Blynk is a platform with iOS and Android apps to control
  Arduino, Raspberry Pi and the likes over the Internet.
  You can easily build graphic interfaces for all your
  projects by simply dragging and dropping widgets.

    Downloads, docs, tutorials: http://www.blynk.cc
    Sketch generator:           http://examples.blynk.cc
    Blynk community:            http://community.blynk.cc
    Follow us:                  http://www.fb.com/blynkapp
                                http://twitter.com/blynk_app

  Blynk library is licensed under MIT license
  This example code is in public domain.

  This sketch shows how to read values from Virtual Pins

  App project setup:
    Slider widget (0...100) on Virtual Pin V1
 */

#define BLYNK_TEMPLATE_ID   "TMPLxu2X9oZm "       //For use with new Blynk Auth, comment out for testing legacy
/* Comment this out to disable prints and save space */
#define BLYNK_PRINT Serial

/* Fill-in your Template ID (only if using Blynk.Cloud) */



/*                  Take out the ethernet libs
#include <SPI.h>
#include <Ethernet.h>
#include <BlynkSimpleEthernet.h>
*/

//Put in the WiFi libs
#include <WiFi.h>
#include <WiFiClient.h>
#include <BlynkSimpleEsp32.h>



// Your WiFi credentials.
// Set password to "" for open networks.
char ssid[] = "VeresiPhone";
char pass[] = "ta35eeymp64fd";

// You should get Auth Token in the Blynk App.
// Go to the Project Settings (nut icon).
//char auth[] = "fvpuiTHc-jo_qyoIc4-kjAaz3BFklnvb";  //Legacy token for Legacy Blynk, for use with library 0.6.1
char auth[] = "a5eN2TZKo4kIYq4v3CCg0bs26-M-CjCH";     //Token generated thru new /2.0 Blynk phone app for use with library 1.0.1

// in Blynk app writes values to the Virtual Pin V1
BLYNK_WRITE(V1)
{
  int pinValue = param.asInt(); // assigning incoming value from pin V1 to a variable
  Serial.print ("V1 value is   ");
  Serial.println(pinValue);  // print the value

  // process received value
}

void setup()
{
  // Debug console
  Serial.begin(115200);

 delay(50);       //Added on Pete Knight suggestion

  Blynk.begin(auth, ssid, pass);
}

void loop()
{
  Blynk.run();
}

Output;
none for > 30 sec

when reset;

23:32:13.431 -> ets Jun  8 2016 00:22:57
23:32:13.431 -> 
23:32:13.431 -> rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
23:32:13.431 -> configsip: 0, SPIWP:0xee
23:32:13.431 -> clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
23:32:13.431 -> mode:DIO, clock div:1
23:32:13.431 -> load:0x3fff0018,len:4
23:32:13.431 -> load:0x3fff001c,len:1044
23:32:13.431 -> load:0x40078000,len:10124
23:32:13.431 -> load:0x40080400,len:5856
23:32:13.431 -> entry 0x400806a8
23:32:13.757 -> [76] Connecting to VeresiPhone
23:32:16.374 -> [2697] Connected to WiFi
23:32:16.374 -> [2697] IP: 172.20.10.12
23:32:16.374 -> [2698] 
23:32:16.374 ->     ___  __          __
23:32:16.374 ->    / _ )/ /_ _____  / /__
23:32:16.374 ->   / _  / / // / _ \/  '_/
23:32:16.374 ->  /____/_/\_, /_//_/_/\_\
23:32:16.374 ->         /___/ v1.0.1 on ESP32
23:32:16.374 -> 
23:32:16.374 -> [2703] Connecting to blynk.cloud:80
23:32:17.216 -> [3563] Ready (ping: 508ms).

I do t think that swapping backwards and forwards between Legacy and IoT is useful.

What would be more useful would be if you posted the sketch that does work with this board, along with your serial output and compiler settings.

Pete.

The “show verbose output during” compile(was checked, now unchecked) upload (checked)
Sketch

/*
  Blink

  Turns an LED on for one second, then off for one second, repeatedly.

  Most Arduinos have an on-board LED you can control. On the UNO, MEGA and ZERO
  it is attached to digital pin 13, on MKR1000 on pin 6. LED_BUILTIN is set to
  the correct LED pin independent of which board is used.
  If you want to know what pin the on-board LED is connected to on your Arduino
  model, check the Technical Specs of your board at:
  https://www.arduino.cc/en/Main/Products

  modified 8 May 2014
  by Scott Fitzgerald
  modified 2 Sep 2016
  by Arturo Guadalupi
  modified 8 Sep 2016
  by Colby Newman

  This example code is in the public domain.

  https://www.arduino.cc/en/Tutorial/BuiltInExamples/Blink
*/

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin LED_BUILTIN as an output.
  Serial.begin(115200);
  pinMode(LED_BUILTIN, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
  digitalWrite(LED_BUILTIN, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);                       // wait for a second
  Serial.println("Blink");
  digitalWrite(LED_BUILTIN, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);                       // wait for a second
}

tried with verbose checked and unchecked, either way
output on opening serial monitor without touching the board;

20:47:43.396 -> Blink
20:47:45.404 -> Blink
20:47:47.365 -> Blink
20:47:49.377 -> Blink
20:47:51.389 -> Blink

I agree about swapping back to legacy, no more.
Tried the Blynk sketch as posted March18 2022;
1 with the verbose during compile unchecked but verbose during upload unchecked
2 both verbose during compile unchecked AND verbose during upload unchecked

no serial output either way till do on-board reset button press
then both ways went through the serial output to the “ping” line

It sounds like you are referring to the Arduino IDE preferences settings, rather than changing this…

as I said here…

Pete.

In Tools dropdown list, Core debug level is already set to “None”

Would it be possible to remedy this by deleting Arduino IDE and all Blynk and ESP32 libraries and reinstall.

I’m going to take a step back from this topic because you haven’t done what I asked in post #14 and your attempts at resolving the issue aren’t following any logical structure.

Good luck with solving the problem, please come back and post a solution if you find one, as I’m sure other community members would like to hear what the cause was.

Pete.

Sorry I thought my post #14 was what you asked for in post #13

Thanks for your help so far