ATTiny85 SoftwareSerial printing Garbage to Serial Monitor

Hi Everyone,

I have been struggling to figure out why my ATTiny85 is printing out garbage (please see attached screenshot) to the Serial Monitor, I am using the Arduino Uno as ISP to program the ATTiny85. The program uploads just fine, but when I bring up Serial Monitor, It just prints a Diamond with enclosed Question mark instead of the String specified in the program. Any Help is Appreciated.


Computer has wrong baud rate set

Chip is not running at the speed you think it is (by default, they run at 1mhz, until you do burn bootloader to set the fuses to tell it to run at 8)

or (unfortunately common) the internal RC is so far away from 8mhz that it's not working. Look up

or you're using a version of SoftwareSerial that doesn't work very well. I recall other posts wherein there was a version of SoftwareSerial that didn't work right on ATTiny's at 8mhz (and did work if the oscillator was tuned weirdly)...

You might also think about the ATTiny841, which has not one, but TWO hardware serial ports (see first link in sig for more info on that chip and the core for it)

Thank You for the quick Response! DrAzzy.

"Computer has wrong baud rate set" by that do you mean when I pull up the Serial monitor? If so, then I do have the baud rate set to 9600.

"Chip is not running at speed you think it is" I did burn the boot loader to set the fuses to tell it to run at 8MHz.

"The internal RC is so far away from 8MHz that it's not working" I am not sure what you mean by this, can you please explain? and point toward a solution if possible.

"or you're using a version of SoftwareSerial that doesn't work well" I am using the version that comes with Arduino IDE 1.6.7

Thanks Again for the Help.

Search ATTiny85 tuning - there are sketches you can run that will use a known reference (several schemes exist) to calibrate the internal clock - these give you a value that you can put in OSCCAL to tune the internal oscillator so you get the right frequency.

I've never done it, since I use 841's when I need a tiny with serial.

I have made some notes about ways to tune the internal osc.

Tuning AVR

BTW: if you only need debug output from your tiny, you can use this tiny core. It comes with TinyDebugSerial, so you don't need SoftwareSerial

Or you may use an external 8mhz oscillator.