Teensy 4.1 seems flashable, but will not boot after flashing

Problem persists even when unplugging/replugging USB. I am using a motherboard rear IO port.

I can still press the button to enter program mode, I can hold it to restore it to the blink sketch which it will do just fine even after disconnecting. It has this issue with any sketch I upload to it. My teensy 3.6 can run these sketches just fine, and they use only pins that are shared between them as far as I can tell.

Photos wouldn't be useful, you can't see past the wires at the only angle the breadboard is visible from

I doubt the code will be of much help as again, this happens no matter what sketch I put on it but here's the current one anyway

Code:
#include <Bounce.h>

int inputPinZ = A4;                           
int inputPinX = A5;
int inputPinY = A6;
int inputPinZrotate = A9;
int inputPinsliderLeft = A7;
int inputPinsliderRight = A8;

const int center = 512;                       

int centerZmod = 0;                           // initialize modifiers to set axes centers to 512 after some maths
int centerXmod = 0;
int centerYmod = 0;
int centersliderLeftmod = 0;
int centersliderRightmod = 0;

const int deadzoneZ = 5;                      // adjustable deadzones here
const int deadzoneX = 5;
const int deadzoneY = 5;
const int deadzonesliderRight = 50;
const int deadzonesliderLeft = 50;

int limitZ = 33;
int limitsliderRight = 200;
int limitsliderLeft = 200;

int readZ = 0;                               
int readX = 0;
int readY = 0;
int readZrotate = 0;
int readsliderLeft = 0;
int readsliderRight = 0;

int outputZ = 0;                              
int outputX = 0;
int outputY = 0;
int outputZrotate = 0;
int outputsliderLeft = 0;
int outputsliderRight = 0;

#define HAT_UP_PIN 2                         
#define HAT_DOWN_PIN 4
#define HAT_LEFT_PIN 34
#define HAT_RIGHT_PIN 7

#define HAT_DEBOUNCE_DELAY 5                  
//#define BUTTON_DEBOUNCE_DELAY 5

#define HAT_UP_STATE 0                        // define the indices for the hat state array
#define HAT_DOWN_STATE 1
#define HAT_LEFT_STATE 2
#define HAT_RIGHT_STATE 3

int hat_state[4] = {0, 0, 0, 0};              // create an array to store the state of the hat switches

Bounce hat_up_button = Bounce(HAT_UP_PIN, HAT_DEBOUNCE_DELAY);
Bounce hat_down_button = Bounce(HAT_DOWN_PIN, HAT_DEBOUNCE_DELAY);
Bounce hat_left_button = Bounce(HAT_LEFT_PIN, HAT_DEBOUNCE_DELAY);
Bounce hat_right_button = Bounce(HAT_RIGHT_PIN, HAT_DEBOUNCE_DELAY);


int hat_value_map[4][4] = {                   // create a map to get the hat value from the hat switch states
  {-1, 270, 90, -1},
  {0, 315, 45, -1},
  {180, 225, 135, -1},
  {-1, -1, -1, -1} };
byte x;                                       // variables for hat_value_map lookups
byte y;
boolean hat_change = false;                   // flag to detect when the hat state has changed

void setup() {
  Serial.begin(9600);  

  while (millis() < 500) {                   // center calibration only runs for the first XXX miliseconds
    readZ = 1024-analogRead(inputPinZ);
    centerZmod = center - readZ;
    readX = analogRead(inputPinX);
    centerXmod = center - readX;
    readY = analogRead(inputPinY);
    centerYmod = center - readY;
    readsliderLeft = analogRead(inputPinsliderLeft);
    centersliderLeftmod = center - readsliderLeft;
    readsliderRight = analogRead(inputPinsliderRight);
    centersliderRightmod = center - readsliderRight;}

  pinMode(HAT_UP_PIN, INPUT_PULLUP);      // initialize top hat pins
  pinMode(HAT_DOWN_PIN, INPUT_PULLUP);
  pinMode(HAT_LEFT_PIN, INPUT_PULLUP);
  pinMode(HAT_RIGHT_PIN, INPUT_PULLUP);
 
  pinMode(0, INPUT_PULLUP);         // initialize all buttons
  pinMode(1, INPUT_PULLUP);
  pinMode(3, INPUT_PULLUP);
  pinMode(5, INPUT_PULLUP);
  pinMode(6, INPUT_PULLUP);
  pinMode(8, INPUT_PULLUP);
  pinMode(9, INPUT_PULLUP);
  pinMode(10, INPUT_PULLUP);
  pinMode(11, INPUT_PULLUP);
  pinMode(12, INPUT_PULLUP);
  pinMode(24, INPUT_PULLUP);
  pinMode(25, INPUT_PULLUP);
  pinMode(26, INPUT_PULLUP);
  pinMode(27, INPUT_PULLUP);
  pinMode(28, INPUT_PULLUP);
  pinMode(29, INPUT_PULLUP);
  pinMode(30, INPUT_PULLUP);
  pinMode(31, INPUT_PULLUP);
  pinMode(32, INPUT_PULLUP);
  pinMode(33, INPUT_PULLUP);
  pinMode(35, INPUT_PULLUP);
  pinMode(36, INPUT_PULLUP);
  pinMode(37, INPUT_PULLUP);
  pinMode(38, INPUT_PULLUP);
  pinMode(39, INPUT_PULLUP);
  pinMode(14, INPUT_PULLUP);
  pinMode(15, INPUT_PULLUP);
  pinMode(16, INPUT_PULLUP);
  pinMode(17, INPUT_PULLUP);

}

void loop() {
 
  readZ = 1024-analogRead(inputPinZ);
  outputZ = readZ + centerZmod;
  if(outputZ > center - deadzoneZ && outputZ < center + deadzoneZ) outputZ = center;
  else outputZ = readZ + centerZmod;
  if(outputZ <= center - deadzoneZ) outputZ = outputZ + deadzoneZ;
  if(outputZ >= center + deadzoneZ) outputZ = outputZ - deadzoneZ;
  if(outputZ >= center + limitZ) outputZ = center + limitZ;
  if(outputZ <= center - limitZ) outputZ = center - limitZ;

  readX = analogRead(inputPinX);
  outputX = readX + centerXmod;
  if(outputX > center - deadzoneX && outputX < center + deadzoneX) outputX = center;
  else outputX = readX + centerXmod;
  if(outputX <= center - deadzoneX) outputX = outputX + deadzoneX;
  if(outputX >= center + deadzoneX) outputX = outputX - deadzoneX;

  readY = analogRead(inputPinY);
  outputY = readY + centerYmod;
  if(outputY > center - deadzoneY && outputY < center + deadzoneY) outputY = center;
  else outputY = readY + centerYmod;
  if(outputY <= center - deadzoneY) outputY = outputY + deadzoneY;
  if(outputY >= center + deadzoneY) outputY = outputY - deadzoneY;
 
  readZrotate = 1024-analogRead(inputPinZrotate);
 
  readsliderLeft = analogRead(inputPinsliderLeft);
  outputsliderLeft = readsliderLeft + centersliderLeftmod;
  if(outputsliderLeft > center - deadzonesliderLeft && outputsliderLeft < center + deadzonesliderLeft) outputsliderLeft = center;
  else outputsliderLeft = readsliderLeft + centersliderLeftmod;
  if(outputsliderLeft <= center - deadzonesliderLeft) outputsliderLeft = outputsliderLeft + deadzonesliderLeft;
  if(outputsliderLeft >= center + deadzonesliderLeft) outputsliderLeft = outputsliderLeft - deadzonesliderLeft;
  if(outputsliderLeft >= center + limitsliderLeft) outputsliderLeft = center + limitsliderLeft;
  if(outputsliderLeft <= center - limitsliderLeft) outputsliderLeft = center - limitsliderLeft;

  readsliderRight = analogRead(inputPinsliderRight);
  outputsliderRight = readsliderRight + centersliderRightmod;
  if(outputsliderRight > center - deadzonesliderRight && outputsliderRight < center + deadzonesliderRight) outputsliderRight = center;
  else outputsliderRight = readsliderRight + centersliderRightmod;
  if(outputsliderRight <= center - deadzonesliderRight) outputsliderRight = outputsliderRight + deadzonesliderRight;
  if(outputsliderRight >= center + deadzonesliderRight) outputsliderRight = outputsliderRight - deadzonesliderRight;
  if(outputsliderRight >= center + limitsliderRight) outputsliderRight = center + limitsliderRight;
  if(outputsliderRight <= center - limitsliderRight) outputsliderRight = center - limitsliderRight;

  Serial.println(outputsliderRight);                             // send it to the computer as ASCII digits

  Joystick.Z(outputZ);
  Joystick.X(outputX);
  Joystick.Y(outputY);
  Joystick.Zrotate(readZrotate);
  Joystick.sliderLeft(outputsliderLeft);
  Joystick.sliderRight(outputsliderRight);

  hat_up_button.update();                             // update the button objects for the hat switches
  hat_down_button.update();
  hat_left_button.update();
  hat_right_button.update();

  if (hat_up_button.fallingEdge()) {                  // update hat state array if any hat switches have been pressed
    hat_state[HAT_UP_STATE] = 1;
    hat_change = true;  }
  if (hat_down_button.fallingEdge()) {
    hat_state[HAT_DOWN_STATE] = 1;
    hat_change = true;  }
  if (hat_left_button.fallingEdge()) {
    hat_state[HAT_LEFT_STATE] = 1;
    hat_change = true;  }
  if (hat_right_button.fallingEdge()) {
    hat_state[HAT_RIGHT_STATE] = 1;
    hat_change = true;  }
  if (hat_up_button.risingEdge()) {                   // update hat state array if any hat switches have been released
    hat_state[HAT_UP_STATE] = 0;
    hat_change = true;  }
  if (hat_down_button.risingEdge()) {
    hat_state[HAT_DOWN_STATE] = 0;
    hat_change = true;  }
  if (hat_left_button.risingEdge()) {
    hat_state[HAT_LEFT_STATE] = 0;
    hat_change = true;  }
  if (hat_right_button.risingEdge()) {
    hat_state[HAT_RIGHT_STATE] = 0;
    hat_change = true;  }
  if (hat_change) {                                                           // set the hat value based on the hat switch states
    y = hat_state[HAT_UP_STATE] | (hat_state[HAT_DOWN_STATE] << 1);
    x = hat_state[HAT_LEFT_STATE] | (hat_state[HAT_RIGHT_STATE] << 1);
    Joystick.hat(hat_value_map[y][x]);
    hat_change = false;                                                       // reset the hat state change flag
  }
 
  if (digitalRead(0) == LOW) {
    Joystick.button(1, 1); }
    else  {
    Joystick.button(1, 0); }
  if (digitalRead(1) == LOW) {
    Joystick.button(2, 1); }
    else  {
    Joystick.button(2, 0); }
  if (digitalRead(3) == LOW) {
    Joystick.button(4, 1); }
    else  {
    Joystick.button(4, 0); }
  if (digitalRead(5) == LOW) {
    Joystick.button(6, 1); }
    else  {
    Joystick.button(6, 0); }
  if (digitalRead(6) == LOW) {
    Joystick.button(7, 1); }
    else  {
    Joystick.button(7, 0); }
  if (digitalRead(8) == LOW) {
    Joystick.button(9, 1); }
    else  {
    Joystick.button(9, 0); }
  if (digitalRead(9) == LOW) {
    Joystick.button(10, 1); }
    else  {
    Joystick.button(10, 0); }
  if (digitalRead(10) == LOW) {
    Joystick.button(11, 1); }
    else  {
    Joystick.button(11, 0); }
  if (digitalRead(11) == LOW) {
    Joystick.button(12, 1); }
    else  {
    Joystick.button(12, 0); }
  if (digitalRead(12) == LOW) {
    Joystick.button(13, 1); }
    else  {
    Joystick.button(13, 0); }
  if (digitalRead(24) == LOW) {
    Joystick.button(14, 1); }
    else  {
    Joystick.button(14, 0); }
  if (digitalRead(25) == LOW) {
    Joystick.button(15, 1); }
    else  {
    Joystick.button(15, 0); }
  if (digitalRead(26) == LOW) {
    Joystick.button(16, 1); }
    else  {
    Joystick.button(16, 0); }
  if (digitalRead(27) == LOW) {
    Joystick.button(17, 1); }
    else  {
    Joystick.button(17, 0); }
  if (digitalRead(28) == LOW) {
    Joystick.button(18, 1); }
    else  {
    Joystick.button(18, 0); }
  if (digitalRead(29) == LOW) {
    Joystick.button(19, 1); }
    else  {
    Joystick.button(19, 0); }
  if (digitalRead(30) == LOW) {
    Joystick.button(20, 1); }
    else  {
    Joystick.button(20, 0); }
  if (digitalRead(31) == LOW) {
    Joystick.button(21, 1); }
    else  {
    Joystick.button(21, 0); }
  if (digitalRead(32) == LOW) {
    Joystick.button(22, 1); }
    else  {
    Joystick.button(22, 0); }
  if (digitalRead(33) == LOW) {
    Joystick.button(23, 1); }
    else  {
    Joystick.button(23, 0); }
  if (digitalRead(35) == LOW) {
    Joystick.button(25, 1); }
    else  {
    Joystick.button(25, 0); }
  if (digitalRead(36) == LOW) {
    Joystick.button(26, 1); }
    else  {
    Joystick.button(26, 0); }
  if (digitalRead(37) == LOW) {
    Joystick.button(27, 1); }
    else  {
    Joystick.button(27, 0); }
  if (digitalRead(38) == LOW) {
    Joystick.button(28, 1); }
    else  {
    Joystick.button(28, 0); }
  if (digitalRead(39) == LOW) {
    Joystick.button(29, 1); }
    else  {
    Joystick.button(29, 0); }
  if (digitalRead(14) == LOW) {
    Joystick.button(30, 1); }
    else  {
    Joystick.button(30, 0); }
  if (digitalRead(15) == LOW) {
    Joystick.button(31, 1); }
    else  {
    Joystick.button(31, 0); }
  if (digitalRead(16) == LOW) {
    Joystick.button(32, 1); }
    else  {
    Joystick.button(32, 0); }
  if (digitalRead(17) == LOW) {
    Joystick.button(24, 1); }
    else  {
    Joystick.button(24, 0); }
 
  delay(5);      

}
 
Is it correct that the 15 second Restore did the process with RED LED and left the Teensy with a 1 second factory blink?

It is possible the USB Cable is not usable, or a power only cable. The following steps should show some signs of that if so and it doesn't work.

When the Teensy Loader program is open select the "Help" option for "Verbose info" that will open another window and log all USB communications it sees with the Teensy during programming.
Selecting 'Log" and "Clear" will make any messagesfrom the following very clear. If nothing shows and the Teensy is connected and running the factory Blink, the problem may be resolved with a working USB Cable.

Try this simple blink that does a few things.
> will fast blink Orange LED up to 5 seconds every 100 ms showing it started, it will stop sooner if programmed with Serial USB and it connects.
> if programmed with 'USB Type : Serial' and connected to Serial monitor - will display text
> after 5 seconds (or sooner as noted) will every 500ms, with continued USB connection prints more each second.

Code:
void setup() {
  pinMode(LED_BUILTIN, OUTPUT);
  digitalToggle( LED_BUILTIN );
  while (!Serial && millis() <= 5000) if (!(millis() % 100))    digitalToggle( LED_BUILTIN );
  Serial.print("\nFIRST Hello World at ms=");
  Serial.println(millis());
}

void loop() {
  if (!((millis() / 1000) % 20))
    Serial.println("\nHello Again");
  delay(500);
  digitalToggle( LED_BUILTIN );
  Serial.print('.');
}
 
Is it correct that the 15 second Restore did the process with RED LED and left the Teensy with a 1 second factory blink?

Yes, the red one first, then the orange one for the blinking.

It is possible the USB Cable is not usable, or a power only cable. The following steps should show some signs of that if so and it doesn't work.

No, it is not possible. The cable works perfectly fine with both my 3.6s, one of which I am using to type this post. Just to be thorough, I tried the cable that came with my Galaxy S7, which I currently use with that phone as a webcam, streaming 1080p video through that cable. Same problem. Nothing is wrong with my cables.

When the Teensy Loader program is open select the "Help" option for "Verbose info" that will open another window and log all USB communications it sees with the Teensy during programming.
Selecting 'Log" and "Clear" will make any messagesfrom the following very clear. If nothing shows and the Teensy is connected and running the factory Blink, the problem may be resolved with a working USB Cable.

Plenty of messages come in through that log window. I can post a screenshot if that would help. But nothing comes through after flashing ANY sketch to the 4.1. The onboard LEDs also do not light up, I can't remember if that's the default behavior or not. And to be clear, the USB device connected windows sound does not play after flashing, only the disconnect sound. I also can't find any trace of it in device manager and teensy loader can't see it until I press the program button again.

Try this simple blink that does a few things.

To be thorough, I tried this sketch. Failed in exactly the same way all other sketches do on this device.

New and interesting information: I have a second 4.1 so I dug that out to see what happens. Same thing. Hmm. I don't like the looks of this.

Can you program it with the File > Examples > 01.Basics > Blink program?

No
 
re p#4:
15s Restore Normal 'Process' is: 15sec press, RED LED flash, Release, RED LED ON some minute, then Orange Blink.
> just checking the long RED step was seen and not jumping to Orange Blink.

T_4.1 uses 480 Mbps USB - some cables that work at lower 12 Mbps can fail - though perhaps the phone working is good, it has happened before alternate cables work. S7 may be using slower USB?

If the Teensy 'Verbose' window is 'Cleared', then the steps above the window TEXT can be copied and pasted for Paul's review instead of a screenshot.

Quite ODD to have not one, but TWO fail. Seems like a USB cable or Port access failure would be best answer.
> What OS
> Using a HUB or not from computer? Perhaps switch the USB port.
 
I know this situation is really frustrating, but if to have any chance of figuring out what's gone wrong, I need a clearer picture of exactly what you're observing when trying various things.

I asked "Can you program it with the File > Examples > 01.Basics > Blink program?". You gave me only "No". What does that mean? Hopefully not that you're unwilling to do so? But what really matters is clearly describing what really happened. There's no point to trying if you're not going to share info that could help shine light on the real problem. It's the little details matter.

The 15 second button press to run the flash erase and restore is the most important test. You're supposed to see a quick blink on the red LED after holding the pushbutton for 13 seconds. If you release within 4 second, the red LED is supposed to turn on bright for about a minute as it slowly erases the flash memory and writes a known good LED blink program. When finished, the red LED turns off and the orange LED is supposed to blink slowly. Your computer should detect it as RawHID if you look in the Tools > Ports menu in Arduino. Because it's HID protocol, you should not see a serial port.

So far all we know about what you actually saw "the red one first, then the orange one for the blinking". This seems like the 15 sec restore process was successful. The important point is if the orange LED blinks after this process, if means Teensy was able to reboot and run the LED blink program the restore process wrote into your flash memory.

If you're able to get Teensy Loader to load a new program, I need to know precisely what happens after you reprogram your Teensy with the File > Examples > 01.Basics > Blink program. When you click Upload in Arduino, does your Teensy hear the request to go into programming mode? Or do you have to press the pushbutton? Remember, I can't see your screen. Did Teensy Loader say "Download OK" at the end of loading the code? You gave me only "No" in msg #4. Maybe that means your Teensy isn't blinking the LED after the code upload? And it was blinking before, due to running the program the restore process ran? That scenario would suggest your Teensy did get reprogrammed with something, bad code which crashes, but it was successfully running the code the 15 sec restore process wrote.

But this is quickly turning into a lot of guesswork, because I just don't have a clear picture of what you really observed. I want to help you, which is the reason I'm writing this lengthy message... essentially to beg you to please write clearly about the things you actually observed, so we can help figure out what's gone wrong.
 
I should also mention, Teensy Loader has a "Verbose Info" feature in the Help menu. It has a Log menu with an option to save all the info to a file. Sometimes that info can help.
 
OK I'm in the same boat.

Initially I had a Teensy 4.1 with 3v3 connected to the 3v3 on the Teensy (before I knew you should not do this). All was fine thought. The cutting the VUSB pad powering via 5v0 in the VIN. Eventually The board could no longer be programmed. No lights, no connected port, no PC beeping

Here are my restore steps

0. I removed the 4.1 from the breadboard and re-soldered VUSB so I can at least try to get it working with just the USB cable.
1. With the Teensy sitting on my desk and only the USB connected (no port from IDE and USB Type is "serial")
2. Press program button for 13 sec red led flashes, button released within a few sec
3. red led glows brighter
4. approx 40 seconds or so, I hear the PC beep, and the orange LED starts blinking (no activity from the loader)
5. inspection of the ports, I see hid#vid bla bla bla
6. I open blink and press program button in the ide
7. loader erases programs and PC beeps, red LED flashes 3-4 times

However:

1. the Orange LED does not blink
2. port is disabled from the arduino IDE

I also tried the above once more time, but unplugging the USB and reattaching before programming BLINK--still after programming the port is lost and blink does not run. I also restored, and tried pressing the program button on the 4.1

here is the verbose details, I didn't see any "error" looking lines.

Any ideas greatly appreciated. But, all my messing around I think I've damaged my 4.1. idk.


Code:
22:13:56.481 (post_compile 306): Begin, version=1.58, high-res time
22:13:56.482 (loader): remote connection 2272 opened
22:13:56.483 (loader): remote cmd from 2272: "comment: Teensyduino 1.58 - WINDOWS (teensy_post_compile)"
22:13:56.483 (post_compile 306): ARDUINO_USER_AGENT = "arduino-cli/0.32.2 arduino-ide/2.1.0 grpc-node-js/1.6.8"
22:13:56.483 (post_compile 306): Sending command: comment: Teensyduino 1.58 - WINDOWS (teensy_post_compile)
22:13:56.484 (loader): remote cmd from 2272: "status"
22:13:56.485 (loader): file changed
22:13:56.492 (loader): File "C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\Blink.ino.hex", 19456 bytes
22:13:56.493 (loader): File "Blink.ino.hex". 19456 bytes
22:13:56.497 (post_compile 306): Status: 1, 1, 0, 93, 0, 0, C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\, Blink.ino.hex
22:13:56.497 (post_compile 306): Sending command: dir:C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\
22:13:56.499 (loader): remote cmd from 2272: "dir:C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\"
22:13:56.501 (post_compile 306): Sending command: file:Blink.ino.hex
22:13:56.501 (loader): remote cmd from 2272: "file:Blink.ino.hex"
22:13:56.508 (loader): File "C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\Blink.ino.hex", 19456 bytes
22:13:56.509 (loader): File "Blink.ino.hex". 19456 bytes
22:13:56.515 (loader): remote cmd from 2272: "status"
22:13:56.518 (post_compile 306): Status: 1, 1, 0, 93, 0, 0, C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\, Blink.ino.hex
22:13:56.518 (post_compile 306): Disconnect
22:13:56.543 (loader): remote connection 2272 closed
22:13:57.251 (post_compile 307): Begin, version=1.58, high-res time
22:13:57.253 (loader): remote connection 2372 opened
22:13:57.255 (loader): remote cmd from 2372: "comment: Teensyduino 1.58 - WINDOWS (teensy_post_compile)"
22:13:57.255 (post_compile 307): ARDUINO_USER_AGENT = "arduino-cli/0.32.2 arduino-ide/2.1.0 grpc-node-js/1.6.8"
22:13:57.255 (post_compile 307): port = "usb:0/140000/0/E"
22:13:57.255 (post_compile 307): Sending command: comment: Teensyduino 1.58 - WINDOWS (teensy_post_compile)
22:13:57.257 (loader): remote cmd from 2372: "status"
22:13:57.261 (loader): remote cmd from 2372: "dir:C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\"
22:13:57.261 (post_compile 307): Status: 1, 1, 0, 93, 0, 0, C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\, Blink.ino.hex
22:13:57.261 (post_compile 307): Sending command: dir:C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\
22:13:57.263 (loader): remote cmd from 2372: "file:Blink.ino.hex"
22:13:57.263 (post_compile 307): Sending command: file:Blink.ino.hex
22:13:57.273 (loader): File "C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\Blink.ino.hex", 19456 bytes
22:13:57.276 (loader): File "Blink.ino.hex". 19456 bytes
22:13:57.284 (loader): remote cmd from 2372: "status"
22:13:57.288 (post_compile 307): Status: 1, 1, 0, 93, 0, 0, C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\, Blink.ino.hex
22:13:57.288 (post_compile 307): Disconnect
22:13:57.310 (loader): remote connection 2372 closed
22:13:57.310 (post_compile 308): Running teensy_reboot: "C:\Users\Administrator\AppData\Local\Arduino15\packages\teensy\tools\teensy-tools\1.58.0\teensy_reboot.exe" teensy_reboot.exe "-board=TEENSY41" "-port=usb:0/140000/0/E" "-portlabel={serial.port.label}" "-portprotocol={serial.port.protocol}"
22:13:57.313 (loader): remote connection 2372 opened
22:13:57.334 (reboot 309): Begin, version=1.58, high-res time
22:13:57.334 (reboot 309): location = usb:0/140000/0/E
22:13:57.334 (reboot 309): portprotocol = {serial.port.protocol}
22:13:57.334 (reboot 309): portlabel = {serial.port.label}
22:13:57.334 (reboot 309): LoadLibrary cfgmgr32 ok
22:13:57.334 (reboot 309): LoadLibrary ntdll ok
22:13:57.335 (reboot 309): found_usb_device, id=\\?\usb#vid_16c0&pid_0486#7518490#{a5dcbf10-6530-11d2-901f-00c04fb951ed}
22:13:57.335 (reboot 309): found_usb_device, loc=usb:0/140000/0/E    Port_#0014.Hub_#0003
22:13:57.335 (reboot 309): found_usb_device, devinst=00000006
22:13:57.335 (reboot 309): found_usb_device, hwid=USB\VID_16C0&PID_0486&REV_0280
22:13:57.335 (reboot 309): add: loc=usb:0/140000/0/E, class=USB, vid=16C0, pid=0486, ver=0280, serial=7518490, dev=\\?\usb#vid_16c0&pid_0486#7518490#{a5dcbf10-6530-11d2-901f-00c04fb951ed}
22:13:57.335 (reboot 309): hiddev_from_devinst_list: iface=1
22:13:57.335 (reboot 309):   0000000D: path=\\?\hid#vid_16c0&pid_0486&mi_01#7&fc8e91b&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
22:13:57.336 (reboot 309): found_usb_device complete
22:13:57.336 (reboot 309): hid, found devinst=0000000B
22:13:57.336 (reboot 309): hid, found devinst=0000000D
22:13:57.336 (reboot 309): usb scan found 1 devices
22:13:57.337 (loader): remote connection 2056 opened
22:13:57.341 (loader): remote cmd from 2056: "show:arduino_attempt_reboot"
22:13:57.341 (reboot 309): found Teensy Loader, version 1.58
22:13:57.341 (reboot 309): Sending command: show:arduino_attempt_reboot
22:13:57.344 (loader): got request to show arduino rebooting message
22:13:57.349 (loader): remote cmd from 2056: "comment: Teensyduino 1.58 - WINDOWS (teensy_reboot)"
22:13:57.350 (reboot 309): Sending command: comment: Teensyduino 1.58 - WINDOWS (teensy_reboot)
22:13:57.353 (loader): remote cmd from 2056: "status"
22:13:57.358 (loader): remote cmd from 2056: "status"
22:13:57.358 (reboot 309): Status: 1, 1, 0, 93, 0, 0, C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\, Blink.ino.hex
22:13:57.358 (reboot 309): hid_send_feature
22:13:57.363 (reboot 309): Status: 1, 1, 0, 93, 0, 0, C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\, Blink.ino.hex
22:13:57.363 (reboot 309): status read, retry 0
22:13:57.467 (loader): remote cmd from 2056: "status"
22:13:57.473 (reboot 309): Status: 1, 1, 0, 93, 0, 0, C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\, Blink.ino.hex
22:13:57.473 (reboot 309): status read, retry 1
22:13:57.577 (loader): remote cmd from 2056: "status"
22:13:57.582 (reboot 309): Status: 1, 1, 0, 93, 0, 0, C:\Users\Administrator\AppData\Local\Temp\arduino\sketches\7A53AFB3F018119D975D61352DCBCE69\, Blink.ino.hex
22:13:57.582 (reboot 309): status read, retry 2
22:13:57.686 (loader): remote cmd from 2056: "status"
22:13:57.693 (loader): secure mode can not be locked: this is Standard Teensy
22:13:57.698 (loader): encryption is possible on this Teensy, but not yet configured
22:13:57.704 (loader): but without secure mode locked, encryption will NOT be secure!
22:13:57.715 (loader): Device came online, code_size = 8126464
 
22:13:57.334 (reboot 309): Begin, version=1.58, high-res time
That is odd - seems it never really talked to the T_4.1 much of the dialog below is missing, and added odd notes - and it never did a 'flash'.
I just opened this NEW T_4.1 that had bootloader 1.05 and was updated on first programming to 1.07
- then performed 15 sec Restore, Verify Build and Button Press - LOG below:
23:45:32.085 (loader): Board is: Teensy 4.1 (IMXRT1062), version 1.07
Log above shows TD 1.58 in use - 1.60.3 Beta here on IDE2 on Win 11.
There is a KEY.PEM here so it went to the trouble of making an eHex and finding the HASH - that can be ignored.
Not sure of any changes from TD 1.58 that would affect this - perhaps 1.59 or 1.60 Beta would show the same loader log seen above?

Code:
23:59:49.857 (post_compile 3): Begin, pid=289860, version=1.60-beta3, high-res time
23:59:49.858 (loader): remote connection 2896 opened
23:59:49.859 (loader): remote cmd from 2896: "comment: Teensyduino 1.60-beta3 - WINDOWS (teensy_post_compile)"
23:59:49.859 (post_compile 3): ARDUINO_USER_AGENT = "arduino-cli/1.0.4 arduino-ide/2.3.3 grpc-node-js/1.9.5"
23:59:49.859 (post_compile 3): Sending command: comment: Teensyduino 1.60-beta3 - WINDOWS (teensy_post_compile)
23:59:49.859 (loader): remote cmd from 2896: "status"
23:59:49.860 (loader): file changed
23:59:49.867 (loader): File "T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\Blink.ino.hex", 21504 bytes
23:59:49.871 (loader): File "T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\Blink.ino.ehex", 21504 bytes, and 5536 loader utility
23:59:49.872 (loader): ehex is valid, key hash: 85A79CC1 B7C7F866 7F5BB3ED 0F9C9BA5 B4149EE2 72846D35 86B63863 B0699942
23:59:49.872 (loader): File "Blink.ino.hex". 21504 bytes
23:59:49.880 (loader): remote cmd from 2896: "dir:T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\"
23:59:49.880 (loader): remote cmd from 2896: "file:Blink.ino.hex"
23:59:49.880 (post_compile 3): Status: 1, 1, 0, 6, 0, 0, T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\, Blink.ino.hex
23:59:49.880 (post_compile 3): Sending command: dir:T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\
23:59:49.881 (post_compile 3): Sending command: file:Blink.ino.hex
23:59:49.888 (loader): File "T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\Blink.ino.hex", 21504 bytes
23:59:49.893 (loader): File "T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\Blink.ino.ehex", 21504 bytes, and 5536 loader utility
23:59:49.893 (loader): ehex is valid, key hash: 85A79CC1 B7C7F866 7F5BB3ED 0F9C9BA5 B4149EE2 72846D35 86B63863 B0699942
23:59:49.894 (loader): File "Blink.ino.hex". 21504 bytes
23:59:49.900 (loader): remote cmd from 2896: "status"
23:59:49.905 (post_compile 3): Status: 1, 1, 0, 6, 0, 0, T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\, Blink.ino.hex
23:59:49.905 (post_compile 3): Disconnect
23:59:49.930 (loader): remote connection 2896 closed
23:59:53.777 (loader): secure mode can not be locked: this is Standard Teensy
23:59:53.779 (loader): encryption is possible on this Teensy, but not yet configured
23:59:53.782 (loader): but without secure mode locked, encryption will NOT be secure!
23:59:53.784 (loader): Device came online, code_size = 8126464
23:59:53.786 (loader): Board is: Teensy 4.1 (IMXRT1062), version 1.07
23:59:53.800 (loader): File "T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\Blink.ino.hex", 21504 bytes
23:59:53.809 (loader): File "T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\Blink.ino.ehex", 21504 bytes, and 5536 loader utility
23:59:53.811 (loader): ehex is valid, key hash: 85A79CC1 B7C7F866 7F5BB3ED 0F9C9BA5 B4149EE2 72846D35 86B63863 B0699942
23:59:53.812 (loader): File "Blink.ino.hex". 21504 bytes, 0% used
23:59:53.829 (loader): set background IMG_ONLINE
23:59:53.841 (loader): File "T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\Blink.ino.hex", 21504 bytes
23:59:53.849 (loader): File "T:\TEMP\arduino\sketches\196B1A9E7A36E82D7541E91DE075B5C6\Blink.ino.ehex", 21504 bytes, and 5536 loader utility
23:59:53.854 (loader): ehex is valid, key hash: 85A79CC1 B7C7F866 7F5BB3ED 0F9C9BA5 B4149EE2 72846D35 86B63863 B0699942
23:59:53.857 (loader): File "Blink.ino.hex". 21504 bytes, 0% used
23:59:53.871 (loader): begin elf_guess_size
23:59:53.873 (loader): found elf file
23:59:53.875 (loader): read elf files into memory, 487132 bytes
23:59:53.877 (loader): elf appears to be for Teensy 4.1 (IMXRT1062) (8126464 bytes)
23:59:53.879 (loader): elf binary data matches hex file
23:59:53.880 (loader): elf file is for Teensy 4.1 (IMXRT1062) (id=25)
23:59:53.882 (loader): using hex file - Teensy not configured for encryption
23:59:53.890 (loader): begin operation
23:59:53.915 (loader): flash, block=0, bs=1024, auto=1
23:59:53.918 (loader): flash, block=1, bs=1024, auto=1
23:59:53.920 (loader): flash, block=2, bs=1024, auto=1
23:59:54.251 (loader): flash, block=3, bs=1024, auto=1
23:59:54.254 (loader): flash, block=4, bs=1024, auto=1
23:59:54.260 (loader): flash, block=5, bs=1024, auto=1
23:59:54.262 (loader): flash, block=6, bs=1024, auto=1
23:59:54.265 (loader): flash, block=7, bs=1024, auto=1
23:59:54.268 (loader): flash, block=8, bs=1024, auto=1
23:59:54.271 (loader): flash, block=9, bs=1024, auto=1
23:59:54.274 (loader): flash, block=10, bs=1024, auto=1
23:59:54.284 (loader): flash, block=11, bs=1024, auto=1
23:59:54.289 (loader): flash, block=12, bs=1024, auto=1
23:59:54.292 (loader): flash, block=13, bs=1024, auto=1
23:59:54.295 (loader): flash, block=14, bs=1024, auto=1
23:59:54.299 (loader): flash, block=15, bs=1024, auto=1
23:59:54.302 (loader): flash, block=16, bs=1024, auto=1
23:59:54.306 (loader): flash, block=17, bs=1024, auto=1
23:59:54.310 (loader): flash, block=18, bs=1024, auto=1
23:59:54.316 (loader): flash, block=19, bs=1024, auto=1
23:59:54.320 (loader): flash, block=20, bs=1024, auto=1
23:59:54.333 (loader): sending reboot
23:59:54.338 (loader): begin wait_until_offline
23:59:54.407 (loader): offline, waited 1
23:59:54.411 (loader): end operation, total time = 0.519 seconds
23:59:54.422 (loader): set background IMG_REBOOT_OK
23:59:54.427 (loader): redraw timer set, image 14 to show for 1200 ms
23:59:54.519 (loader): HID/win32:  vid:046D pid:C52B ver:1211  usb:0/140000/0/5/3/4/2/3
23:59:54.524 (loader): HID/win32:  vid:046D pid:C52B ver:1211  usb:0/140000/0/5/3/4/2/3
23:59:54.528 (loader): HID/win32:  vid:046D pid:C52B ver:1211  usb:0/140000/0/5/3/4/2/4
23:59:54.532 (loader): HID/win32:  vid:3554 pid:FC03 ver:0792  usb:0/140000/0/D/3/4
23:59:54.536 (loader): HID/win32:  vid:046D pid:C52B ver:1211  usb:0/140000/0/5/3/4/2/3
23:59:54.540 (loader): HID/win32:  vid:3554 pid:FC03 ver:0792  usb:0/140000/0/D/3/4
23:59:54.548 (loader): HID/win32:  vid:3554 pid:FC03 ver:0792  usb:0/140000/0/D/3/4
23:59:54.554 (loader): HID/win32:  vid:3554 pid:FC03 ver:0792  usb:0/140000/0/D/3/4
23:59:54.567 (loader): HID/win32:  vid:046D pid:C52B ver:1211  usb:0/140000/0/5/3/4/2/4
23:59:54.587 (loader): HID/win32:  vid:3554 pid:FC03 ver:0792  usb:0/140000/0/D/3/4
23:59:54.611 (loader): HID/win32:  vid:1462 pid:7E06 ver:0001  usb:0/140000/0/2
23:59:54.616 (loader): HID/win32:  vid:046D pid:C52B ver:1211  usb:0/140000/0/5/3/4/2/4
23:59:55.618 (loader): redraw, image 9
 
Back
Top