Qduino Mini - no longer providing serial output

Hi,

I have been working on a project to read a 3D accelerometer. Until a few days ago, I was able to see data by using the serial monitor window. Now, I am able to see data coming out of my RedBoard when I set the board and serial pulldown menus on the IDE, and am able to program the user LED on the Qduino, but do not see any serial data. I am using the same USB cable on the RedBoard and Qduino.

What should I try to get things going again?

Thanks,

Mark

Hi Mark,

Just to clarify, the Qduino Mini is still showing up as a serial port but you are just not getting any data over USB? Did you upload new code to the Qduino before you began to have issues with serial data or is it running the same code? Are you getting any characters printing in the serial monitor? If you are seeing garbled characters, it might just be a baud rate mismatch.

Are you perhaps using the watchdog timer, sleep mode or timer interrupts in the code you are running on the Qduino? That may be the issue as for some reason, the CDC driver for USB communication on the ATMega32U4 has timing issues when using interrupt timers. We are not sure why this is or how to fix it, unfortunately. [This comment goes into some more detail regarding the interrupt issue as well as other troubleshooting tips for ATMega32U4-based Arduinos like the Qduino.](Discuss Tutorial: Pro Micro & Fio V3 Hookup Guide - SparkFun Learn)

Thank you for responding.

The USB connection seems good, I can get board info, the Rx light flashes when I download the code again. I have downloaded my current and previous versions of the code to double check that I did not change anything. I am not using watchdog timer, sleep mode or interrupts. No characters print in the serial monitor. I am able to download simple programs to turn the user led on or off

Interesting. It sounds like the board is working just fine but something in your code may be causing the issue. As a sanity check, try running a simple sketch like [this ASCII Table example and see if that prints in your serial terminal when opened to the Qduino’s COM port and at 9600 baud.](https://www.arduino.cc/en/Tutorial/ASCIITable)

Thank you for the suggestion. The ASCII program runs fine. I noticed in the setup code it had:

while (!Serial) {

; // wait for serial port to connect. Needed for native USB port only

}

I added that to my code and things work. Why I did not need it from the start I do not know, did I traumatize the board by not always having board set to Qduino Mini when connecting to the IDE. Should I include this code in every Qduino project?

Again, thanks for your help.

That’s great to hear it was just a strange code issue. You did not damage anything by not including that while statement since it just pauses the serial stream while a port is not open. This is helpful for applications where you need to view serial data via USB with a board like the Arduino that uses a single processor for both code and USB communication since the board does not reset when you open a port. If you want to learn more about this and other fun quirks of the ATMega32U4, Arduino’s product page for the [Arduino Leonardo has some great information about how this type of board works.](https://www.arduino.cc/en/Guide/ArduinoLeonardoMicro)