View Single Post
Old 01-21-2017, 11:33 PM   #68 (permalink)
t vago
MPGuino Supporter
 
t vago's Avatar
 
Join Date: Oct 2010
Location: Hungary
Posts: 1,807

iNXS - '10 Opel Zafira 111 Anniversary

Suzi - '02 Suzuki Swift GL
Thanks: 830
Thanked 708 Times in 456 Posts
Quote:
Originally Posted by skybolt View Post
I cannot generate any serial output on Arduino Mini or Pro Mini, and cannot generate serial output on Arduino/Genuine Arduino. Same settings on ArduinoMega or Mega2560 work fine. Using serial port zero for output on all attempts. Tested Mega2560 using LegacyLCD, output was fine.
Can you turn off buffered serial output for port 0 and try again?

I cannot really do any more troubleshooting right now, as my Arduino Uno is currently installed in my Magnum, doing duty as a transmission computer. I will have to order a few Unos from Amazon and wait for them to get here. Sorry about that.

Quote:
Originally Posted by skybolt View Post
Serial output worked on November build, after a delay (10? 15? 30 seconds) or after jiggling wires.
That's.... weird. I had a bit of frustration, too, trying to get debug serial output working back in December, but I can't remember exactly what I ended up doing to get it to work. I think I sent an introduction string as the very first transmitted string.

Quote:
Originally Posted by skybolt View Post
Is there a flag to disable going to the settings screen on first boot? Or, alternatively, does it time out? I searched your input or setup routines but couldn't see where it was being invoked on first boot.
There's not really a flag, as such. The code checks for the presence of a signature word in EEPROM, when it first starts after power-on. If the signature word does not exist (like if you reprogram with a ICSP programmer, and the ICSP programmer also helpfully erases your EEPROM for you, for instance), then the code writes a set of default stored parameters, then tells itself to start off with the settings screen.

I will tell you how to disable the going to the setting screen, but I will not incorporate it into the code. Go to about line 11831, and change this line from this:
Code:
	if (loadParams() != 1) doGoSettingsEdit(); // go through the initialization screen
to this:
Code:
	loadParams();
It will preserve the EEPROM signature checking, but will not force you to go to the settings screen if you happen to power up with a blank EEPROM.
  Reply With Quote
The Following User Says Thank You to t vago For This Useful Post:
skybolt (01-25-2017)