Linux Baudrate in EEPROM
Linux Baudrate in EEPROM
I've just assembled a Rostock Max and I'm having some trouble with the firmware. Linux can't run at a baudrate of 250000, so I need to change it. It can be changed in configure.h, but only if the EEPROM is disabled. In the EEPROM settings, there is a spot where the baudrate can be adjusted, but it's a single digit rather than the actual baudrate. I believe it was a 7. Can someone here tell me what digits correspond with what baudrates?
Re: Linux Baudrate in EEPROM
I could be wrong because I'm recalling this from past Repetier FW usage, but I don't think there are any baud rate codes.
From quickly checking the source it seems you should just enter the baud rate (it's stored internally as a long int, so it wouldn't make sense to use that much space to store a single digit).
So, try entering 115200.
From quickly checking the source it seems you should just enter the baud rate (it's stored internally as a long int, so it wouldn't make sense to use that much space to store a single digit).
So, try entering 115200.
My Thingiverse profile: http://www.thingiverse.com/edwardh
Re: Linux Baudrate in EEPROM
That's what is in configuration.h, but the baudrate setting there is overridden by the eeprom. In the Eeprom.h file there is an entry for EPR_BAUDRATE. It is set to 75, not 7. I just looked at it again.
Configuration.h
Eeprom.h
Configuration.h
Code: Select all
Overridden if EEPROM activated.
*/
//#define BAUDRATE 76800
//#define BAUDRATE 57600
//#define BAUDRATE 115200 //uncoment this line for Linux and comment out the 250000 line
#define BAUDRATE 250000
Code: Select all
#define EPR_BAUDRATE 75
Re: Linux Baudrate in EEPROM
That is not a "code," but something equivalent to a storage location in the EEPROM. Again, I can't remember the EEPROM dialog exactly, but did you try to just enter 115200 from the Repetier-Host GUI?
My Thingiverse profile: http://www.thingiverse.com/edwardh
Re: Linux Baudrate in EEPROM
I can't remember if I tried that or not before I disabled the eeprom. If I enable the eeprom and change the setting in the gui, will it be saved even though I can't communicate/connect with the printer?
I'll try it out and see what happens. Thanks.
I'll try it out and see what happens. Thanks.
Re: Linux Baudrate in EEPROM
Yeah, changing EPR_BAUDRATE is A Bad Idea.
g.
g.
Delta Power!
Defeat the Cartesian Agenda!
http://www.f15sim.com - 80-0007, The only one of its kind.
http://geneb.simpits.org - Technical and Simulator Projects
Defeat the Cartesian Agenda!
http://www.f15sim.com - 80-0007, The only one of its kind.
http://geneb.simpits.org - Technical and Simulator Projects
Re: Linux Baudrate in EEPROM
Okay, I set up the Rostock with the default firmware again and verified that I am unable to change any eeprom settings besides off or on. I've attempted to set the baudrate in the printer settings, but that seems to be a setting for repetier host. There is a firmware eeprom configuration button, but its greyed out because I can't connect. If I hit the connect button, I get 7 commands waiting. If I send the command to change the baudrate value in the eeprom ( M206 T2 P75 X115200 ) I have 8 commands waiting. After reuploading the firmware with the eeprom disabled, I tried to send the command again. I got an error saying that eeprom support was not compiled in. There has to be a way to upload firmware with the eeprom baudrate set at 115200, right?
Re: Linux Baudrate in EEPROM
I've found the answer. It was much simpler than I was expecting it to be. I changed the EEPROM_MODE to 2. Then I reset the board and it uploaded my configuration.h settings to the eeprom. I sure wish that had been in the manual.
From the Repetier-host documentation:
From the Repetier-host documentation:
#define EEPROM_MODE 1
A value of 0 would disable the EEPROM usage. Any other value from 1 to 255 enables it and determents if the values from the configuration file are copied to the EEPROM at the first start, or if the old values are kept. The trick is quite simple. The first byte in EEPROM is compared with the EEPROM_MODE value. If it has a different value, the values in your „Configuration.h“ are copied to EEPROM and byte 0 is set to the mode. After the next startup, the firmware sees the value is the same and will use the values already stored in EEPORM,
A correct initialization is important for a good function. If you have used an other software, that also writes to the EEPROM, your data gets corrupted and you should make sure, the values are reinitialized. From version 0.80 onwards the firmware stores a checksum, so most corruptions are detected automatically.
If you have followed the first installation example, you have already written values to your EEPROM. It is a good idea to change the EEPROM_MODE to 2 now, so you overwrite it with the configuration you will now define.
Re: Linux Baudrate in EEPROM
If you happen to have two computers, one windows and one linux, you can switch baud rates between them using the eeprom setting. Use case: I set up my Rostock on my Windows laptop (250000 baud). But I don't have enough RAM in the laptop to do a good job slicing more complex files, so that meant switching to the Linux desktop with 8GB of RAM to run Repetier and Slic3r (or whatever, I'm sure I'll move to Cura or Kiss eventually once I have a big enough block of time- i am already tired of trying and failing to make retracts work on slic3r... but I digress).
So-
1. plug printer set to 250000 into Linux desktop, set linux to tty0/115200 baud and it won't talk.
2. Plug it back into Windows laptop at 250000 and connect, it talks.
3. In windows, pull up the eeprom control in repetier, set printer to 115200, apply.
4. Unplug laptop, plug in desktop, connect. And everything works.
YMMV but it worked for me.
So-
1. plug printer set to 250000 into Linux desktop, set linux to tty0/115200 baud and it won't talk.
2. Plug it back into Windows laptop at 250000 and connect, it talks.
3. In windows, pull up the eeprom control in repetier, set printer to 115200, apply.
4. Unplug laptop, plug in desktop, connect. And everything works.
YMMV but it worked for me.