Teensy 3.2 Reset button working, blink/serial monitor not working.

Status
Not open for further replies.
Hello all,

I received my Teensy 3.2 today. Out of the box it seemed to work fine. Ran Blink, successfully uploaded fast blink. Fast forward a few hours, after soldering in pins, and uploading a few other programs to test (including a relatively large synthesizer program ~80% of memory) the Teensy is no longer running the Blink sketch, or appearing in Teensyduino (Arduino IDE) as an available Serial Port. Have tried rebooting computer, and doing Teensy reset (hold reset button while plugging in, with Arduino closed).

However, the Teensy loader does still appear to be recognizing the board (it is reacting when I press the reset button on the hardware, reporting successful program loading).

I'm not sure how to interpret this issue. I don't believe I did hardware damage while soldering on pins. My primary interpretation is that I'm not actually flashing blink successfully and the synthesizer program is still on the board, despite what Teensy is reporting. It seems strange that loading would still be recognized/successful but the actual program wouldn't seem to run.

Any advice would be much appreciated.


Thank You.

UPDATE: Arduino does seem to recognize Teensy as an HID port for a few seconds after I press the reset button:


Screen Shot 2018-08-23 at 4.29.26 PM.jpg
 
Last edited:
the button in teensy is programming, not reset. to reboot it just cycle the power or add a button to the reset pad, or just program it with the IDE so it gets back of program mode and boots up
 
tonton81, I'm not sure what you mean. I have power cycled the Teensy repeatedly (for example every time I plug/unplug it). Shouldn't sketches run immediately after programming? This was the behavior when I first programmed it, before the issue started.
 
yes, theyll run immediately after programming or power cycling, but pushing the button puts it in program mode so your actual code is not running
 
What I would suggest trying.

Open up some simple sketch like, the blink program... Or setup some simple Hello World program to be different:
Code:
uint16_t loop_count = 0;
void setup() {
    while(!Serial && (millis() < 5000)) ; // wait up to 5 seconds for
    Serial.begin(115200);
    pinMode(13, OUTPUT);
}
void loop() {
    loop_count++;
    digitalWrite(13, !digitalRead(13));
    Serial.print("Hello World ");
    Serial.println(loop_count, DEC);
}
Have the Teensy plugged in, with Teensy 3.2 as the current board type And Serial as the USB type. In Arduino, click the verify button (or use the Sketch->Verify/Compile) command. Hopefully the program compiles and the Teensy program shows up on the screen.

Now have the Teensy program on the screen where you can see it. Now push the "Program" button the teensy. When you do this you should see the Teensy program show a quick progress of programming your teensy. Hopefully this completes successfully. After this completes. Your system if has not already done so, should assign assign a comm port. You should then select this port in the tools->Port menu. At this point you should be able to reprogram the Teensy without having to press the program button.

Your screen shot does not show enough information like what type of machine/OS is installed. I am guessing NOT windows from the top of it... Nor can we see what the USB type was set to.

Also if the above does not work, you should post a picture of your current setup, as maybe it will show something like a short caused by soldering pins or other like issues. Likewise unplug everything you can from the setup, to help minimize what things might be causing the problem.

And if there is some specific program you are having issues with, please post code...
 
Perhaps I didn't explain myself with enough clarity in the initial post: I understand how to flash, and succeeded in doing so both via the Teensy Loader when I first received the board (loaded fast_blink), and via Teensyduino (blink sketches and also the synth program I mentioned).

The problem is that the board no longer appears to be running the programs I flash (e.g. blink), even after I successfully flash (and Teensy Loader reports that blink is loaded), and I power cycle.

I have attached some pictures of the soldering. There is no obvious damage or short.

IMG_4374.jpgIMG_4376.jpgIMG_4375.jpg
 
Don't see anything obvious.

But again, it sometimes is hard to give any specific advice without knowing exactly what was programmed on it and what some of the settings like USB Type is.

Example: There have been many reports over the years of Teensy not working, when it turned out that their setup code started off with something like:
Code:
void setup() {
    while (!Serial) ;
...

The code would hang at the start until the program detects a Serial port connected. Other times code would work after the Teensy was programmed, but not just plugged in. Sometimes this was caused by some other hardware that needed to be init and the Teensy started up so quick the other hardware was not ready for it. It worked fine on warm reboots, like what happens when you program it as the other hardware had been powered up and as such was ready....

There are many other ways things could die at startup, like C++ global objects with their constructors assuming some other things had been initialized before it was...

So again hard to know what is going on....

Which is why again I would start off with some simple program like the example Blink that ships with the board, Make sure the options for T3.2 are correct. Sometimes I choose a different board and then choose the correct one again...
 
Kurt, Blink is what I am trying to upload and not having success with. To clarify things, I've uploaded a video of the problem:

 
So far I see that you have programmed the board with a compiled hex file, but not necessarily that it corresponds to a simple correct blink program.

Probably does, but again I would start again from sources. Example the Teensy->Tutorial2->Blink.
Code:
/* LED Blink, Teensyduino Tutorial #1
   http://www.pjrc.com/teensy/tutorial.html
 
   This example code is in the public domain.
*/

// Teensy 2.0 has the LED on pin 11
// Teensy++ 2.0 has the LED on pin 6
// Teensy 3.x / Teensy LC have the LED on pin 13
const int ledPin = 13;

// the setup() method runs once, when the sketch starts

void setup() {
  // initialize the digital pin as an output.
  pinMode(ledPin, OUTPUT);
}

// the loop() methor runs over and over again,
// as long as the board has power

void loop() {
  digitalWrite(ledPin, HIGH);   // set the LED on
  delay(1000);                  // wait for a second
  digitalWrite(ledPin, LOW);    // set the LED off
  delay(1000);                  // wait for a second
}

I would probably unplug whatever you had plugged into +3.3v/GND/vBat?
I would use default settings? USB Type->Serial CPU->96mhz, ...
And would do the full upload to the board. And see if it blinks...

If not, I would probably use something like voltmeter or logic analyzer and check the voltage on Pin 13, to see if it changes every second.
 
Status
Not open for further replies.
Back
Top