Welcome! Log In Create A New Profile

Advanced

Marlin heated bed support on gen6 deluxe

Posted by pete-theobald 
Marlin heated bed support on gen6 deluxe
January 26, 2012 04:27PM
Hi everyone,
I'm trying to get the heated bed on the gen6 deluxe from mendel-parts. The board has a 4 pin connection for the heated bed but theres no documentation so i've had to do a bit of guesswork to figure out how to wire it up. The thermistor has 5v across it and this remains when I unplug the second power supply so I think i've got this in the right place. The heater is connected to the other two pins and i haven't seen a voltage across it yet. Pronterface is showing the temperature as 0degrees but i'm not sure if this means anything as the marlin firmware doesn't have a command to read the bed temperature. Thermistor resistance is ~130k.
Has anyone got this working? I know the usual method is to connect it directly to the power supply but i'll have to do some rewiring to get it working.
Pete
Re: Marlin heated bed support on gen6 deluxe
January 27, 2012 05:05AM
Seen from the electrical side, a heated bed is pretty much the same as the heater in the extruder. Just more wattage and a lower temperature. So, the electronic sub-circuit and the way to connect the bed is likely also the same.


Generation 7 Electronics Teacup Firmware RepRap DIY
     
Re: Marlin heated bed support on gen6 deluxe
January 27, 2012 05:26AM
Thanks Traumflag. I wish it was that simple. I think i have it wired up correctly but I think the issue is in firmware. Pronterface isn't showing the heated bed temperature even though i've got the thermistor connected. I found a couple of references in the firmware from the mendel-parts site that refer to the bed heater but activating them all didn't change anything. There aren't any M codes for reading the bed temp though and I have a feeling that the heater isn't being activated as the firmware sees the temp as below the 5 degree min. I think that might be caused by the firmware not attempting to read the bed temp. Any ideas would be appreciated!
Regards
Pete
Re: Marlin heated bed support on gen6 deluxe
February 02, 2012 02:12AM
Can you post pictures of the board? I designed a draft version of Gen6 with heatbed support and sent it to Camiel at Mendel-Parts. Never heard back from him...

If it's the design I did, I'll update the Gen6 wiki with wiring and firmware support for the "Deluxe" edition.
Re: Marlin heated bed support on gen6 deluxe
February 02, 2012 07:26AM
My electronics are identical to this board [docs.google.com]
I worked out the wiring by looking at the PCB but it needs updating. I'm sure the issue is in firmware. Pronterface has a bar graph for the bed temperature but it doesnt turn the bed power on. It doesnt read the thermistor temp back either and it is definitely connected and has a voltage across it.
Pete
Re: Marlin heated bed support on gen6 deluxe
February 02, 2012 07:49PM
Hm, that's a totally new layout (not mine). Almost every IC and jack has been re-positioned. It's a shame Mendel-Parts doesn't follow the open-source license and keep their documentation and code up-to-date. Oh well, the Printrboard will be out next month; much better platform.

If you can follow the traces from the heatbed and thermistor leads to the Atmega m644p, you can count which pin number they're connected to. Then it's a matter of altering the pins.h file in Marlin with this information.
Re: Marlin heated bed support on gen6 deluxe
February 05, 2012 06:04PM
I'm guessing there wopn;t be any proper support coming from mendel-parts. Camiels just posted a pretty unhelpful statement

Quote
Also we are a webshop, that means no pickup anymore, no coming by for chatting (during week) etc, its very simple: from the past we have learned this just takes up hours of time everyday, which we dont have. And also I have decided that alot we do here is top-secret from now on and therefor visitors are not welcome anymore.
I really hate to say that, it goes in against things i believe, but trust me, we have todo that at this time, to get catched up on orders and to avoid spies here...


I'm not sure how this fits in with the open source community here but I definitely bought this believing iit was open source...
Pete
Re: Marlin heated bed support on gen6 deluxe
February 07, 2012 08:43AM
Sounds like paranoia. And also a slap in the face at anyone who went seeing him recently sad smiley


Most of my technical comments should be correct, but is THIS one ?
Anyway, as a rule of thumb, always double check what people write.
Hi all,
I have a gen6 deluxe. I cannot get it working properly. I cannot seem to find the right firmware. none that i have tried, mainly marlin, gives me major problems. Heatbed does not work, neither thermistor registers any temperature and I cannot get all the X,Y and Z motor to function correctly through pronterface.

Just since i see you talking about the gen6.d (there is no information on it at all that i can find) I was hoping someone could push me in the right direction.
Re: Marlin heated bed support on gen6 deluxe
February 15, 2012 08:39AM
Hi Geraldine,

I got the gen6 firmware to work on windows using the software download on the mendel-parts site. The configuration works for most of it, but the heated bed definitely does not and its a new addition to the deluxe version. Few things that may help

Marlin
I don't think that the gen6 board comes with software installed. You need to install this first. The process is basically as follows
* In the mendel parts software theres a copy of the arduino programming environment. Run the program called arduino.exe
* Don't upgrade it to the latest version (You'd have to install the sanguino libraries to it which is another story)
* Connect to the arduino board which I think may be in the tools menu - There is a text file describing this process in the software folders
* Open the project called marlin.pde in the arduino environment
* Compile the project
* Upload it to the gen6 board

Pronterface
* You need to install a few python libraries to start with or it will fail to connect. WX is needed for the pronterface gui and pyserial is needed to connect to the board. You will also need tkinter to use the gui for changing skeinforge settings. There are a load of text files in the software download at mendel-parts which explain what you need to do but I had to search around for it too. It took me a couple of hours to setup and i'm very familiar with open source and python.
* You have to set the connection speed to 250,000 for it to connect. You also need to select the correct com port. Pronterface says 'connecting' when you press the connect button but it will give you another message once its actually connected.
* I'm not able to connect to it using ubuntu which is giving me loads of problems (mainly because I don't have a cable long enough to reach my windows machine!)
* The motors will only go in one direction if you don't connect the optocouplers. If you remove the belts and try to move the motors its pretty obvious if they are working or not.

I wired up the heated bed correctly using the 4 pin plug (power supply on the left and thermistor on the right I thin but check the pcb carefully as its not documented!!!!) but gave up getting marlin to turn it on.I gave up and used the two pin bed psu connector as a terminal block and left it unplugged. The bed heats up when its plugged in which is fine and it doesn't need to be too accurate. I also placed a sheet of glass (out of an old picture frame) on top of the bed as its flatter but i've had to put the voltage up to get it hot enough for pla to stick.

The other thing I do is to use bike chain degreaser to clean the bed. It works really well and makes it squeaky clean. Its also a lot safer than having acetone lying around.

Hope that helps.

Pete
Re: Marlin heated bed support on gen6 deluxe
February 15, 2012 01:36PM
Thanks Pete

* You have to set the connection speed to 250,000 for it to connect. You also need to select the correct com port. Pronterface says 'connecting' when you press the connect button but it will give you another message once its actually connected.

This tip saved me. The key is the connection speed of 250,000 and Pronterface works.

Also should note that the old verison (Camiels) of Repsnapper does link up with the firmware if you set the connection speed to 250,000. Only problem i saw with a quick check was that the temp reading stopped working. Maybe some work on the Repsnapper code?
camiel is working on a upgrade for the firmware look at his blok.
There should be firmware on eventually it according to there homepage...
I had the new orca 040 kit, and i also is hunting firmware.....
The firmware on mendelparts download page is for orca 030 out of the box but it does gives compilations errors in pin.h
Re: Marlin heated bed support on gen6 deluxe
February 18, 2012 06:45AM
Hi Soeren,
I didn't get any problems compiling the mendel-parts firmware on en6 deluxe. You can find my hole setup at [ptheobald.repositoryhosting.com]. It works as is on windows so you could just pull it in from the git repository.
I checked the mendel-parts blog and Camiel hasn't even promised to update the firmware. The gen6 deluxe page syas hes going to release new pictures but thats from december. Not someone I can be bothered waiting for...
Pete
Re: Marlin heated bed support on gen6 deluxe
February 26, 2012 05:20AM
There is a new firmware out, i just uploaded it to my gen6..
Just FYI smiling smiley
Re: Marlin heated bed support on gen6 deluxe
February 27, 2012 05:45PM
Hi Sicarius,
I just tried to compile the new firmware but i'm having problems. I tried the marlin1.0 downlaod from mendel-parts and also from the marlin github but i'm getting errors on both.

Quote

C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:6:21: error: Arduino.h: No such file or directory
In file included from C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:1:
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\/LiquidCrystal.h:82: error: conflicting return type specified for 'virtual size_t LiquidCrystal::write(uint8_t)'
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\hardware\Sanguino\cores\arduino/Print.h:40: error: overriding 'virtual void Print::write(uint8_t)'
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'void LiquidCrystal::init(uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t, uint8_t)':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:70: error: 'OUTPUT' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:70: error: 'pinMode' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'void LiquidCrystal::begin(uint8_t, uint8_t, uint8_t)':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:100: error: 'delayMicroseconds' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:102: error: 'LOW' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:102: error: 'digitalWrite' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'void LiquidCrystal::clear()':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:164: error: 'delayMicroseconds' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'void LiquidCrystal::home()':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:170: error: 'delayMicroseconds' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'void LiquidCrystal::command(uint8_t)':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:258: error: 'LOW' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'virtual size_t LiquidCrystal::write(uint8_t)':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:262: error: 'HIGH' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'void LiquidCrystal::send(uint8_t, uint8_t)':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:270: error: 'digitalWrite' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:274: error: 'LOW' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'void LiquidCrystal::pulseEnable()':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:286: error: 'LOW' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:286: error: 'digitalWrite' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:287: error: 'delayMicroseconds' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:288: error: 'HIGH' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'void LiquidCrystal::write4bits(uint8_t)':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:296: error: 'OUTPUT' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:296: error: 'pinMode' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:297: error: 'digitalWrite' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp: In member function 'void LiquidCrystal::write8bits(uint8_t)':
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:305: error: 'OUTPUT' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:305: error: 'pinMode' was not declared in this scope
C:\Users\pete\Documents\Projects\Printrun\arduino-1.0\libraries\LiquidCrystal\LiquidCrystal.cpp:306: error: 'digitalWrite' was not declared in this scope

I'm too new to arduino programming to know where to start looking. I disabled everything lcd related I could find in the firmware but it hasn't helped. How did you get the firmware installed?
Pete
Re: Marlin heated bed support on gen6 deluxe
February 27, 2012 05:53PM
Theres an easy fix here [forums.reprap.org]
marlin won't compile with arduino1.0. Downgrading to arduino0023 compiles successfully. I haven't tested this on the gen6 board yet though
Pete
Re: Marlin heated bed support on gen6 deluxe
February 29, 2012 05:09PM
Heres a bit more info for anyone else trying to get gen6 deluxe working on orca 3. You need to change some values in the marlin firmware. Heres the diff but the comments in Configuration.h tell you what you need. It has to be compiled with arduino 0023 though. arduino1.0 throws errors

Quote

31c31
< #define MOTHERBOARD 5
---
> #define MOTHERBOARD 51
147,149c147,149
< #define X_MAX_LENGTH 210 // for Orca 0.4 - 245, Orca 0.3 - 210, Orca 0.2 - 200
< #define Y_MAX_LENGTH 210 // for Orca 0.4 - 215, Orca 0.3 - 210, Orca 0.2 - 200
< #define Z_MAX_LENGTH 160 // for Orca 0.4 - 185, Orca 0.3 - 160, Orca 0.2 - 120
---
> #define X_MAX_LENGTH 245 // for Orca 0.4 - 245, Orca 0.3 - 210, Orca 0.2 - 200
> #define Y_MAX_LENGTH 215 // for Orca 0.4 - 215, Orca 0.3 - 210, Orca 0.2 - 200
> #define Z_MAX_LENGTH 185 // for Orca 0.4 - 185, Orca 0.3 - 160, Orca 0.2 - 120
158c158
< #define HOMING_FEEDRATE {2400, 2400, 200, 0} // {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min)
---
> #define HOMING_FEEDRATE {3600, 2400, 200, 0} // {50*60, 50*60, 4*60, 0} // set the homing speeds (mm/min)
162c162
< #define DEFAULT_AXIS_STEPS_PER_UNIT {40.05, 40.05, 3360, 75} // default steps per unit x, y, z, e
---
> #define DEFAULT_AXIS_STEPS_PER_UNIT {32.09, 32.09, 1934, 75} // default steps per unit x, y, z, e
Re: Marlin heated bed support on gen6 deluxe
March 03, 2012 11:53AM
pete-theobald Wrote:
-------------------------------------------------------
> My electronics are identical to this board
> [docs.google.com]
> WU2ZTAtZGM3MS00NzExLThiMDctZDk4OWMzNzU4YTRh&hl=en_
> US&pli=1
> I worked out the wiring by looking at the PCB but
> it needs updating. I'm sure the issue is in
> firmware. Pronterface has a bar graph for the bed
> temperature but it doesnt turn the bed power on.
> It doesnt read the thermistor temp back either and
> it is definitely connected and has a voltage
> across it.
> Pete

I have exactly the same problem. I have gen6 and an Orca 0.3. I had to figure out many things because there is no manual and I cannot write in mendel-parts forum (my messages are in moderation ¿?).

I set bed temperature to 110 C degrees and pronterface sends the command but I cannot see the bed temperature anywehre. Moreover, the bed heater is not working and the LED of the heater is off.

I have these values in Marlin firmware:

Configuration.h
#define TEMP_SENSOR_BED 3
#define BED_MINTEMP 5
#define BED_MAX_TEMP 150

Configuration_adv.h:
#define BED_LIMIT_SWITCHING
#define BED_HYSTERESIS 2
#define BED_CHECK_INTERVAL 2000

I don't find any other parameter about the BED so I don't know what to do.
Re: Marlin heated bed support on gen6 deluxe
March 03, 2012 12:19PM
Ok, I've found something. The pin TEMP_BED_PIN is defined as -1 that means the pin doesn't exist. Of course this is wrong. How can I know the number of this pin? confused smiley
Re: Marlin heated bed support on gen6 deluxe
March 03, 2012 12:23PM
pete-theobald Wrote:
-------------------------------------------------------
>
> * You have to set the connection speed to 250,000
> for it to connect. You also need to select the
> correct com port. Pronterface says 'connecting'
> when you press the connect button but it will give
> you another message once its actually connected.
> * I'm not able to connect to it using ubuntu which
> is giving me loads of problems (mainly because I
> don't have a cable long enough to reach my windows
> machine!)

Don't use 250000. Change BAUDRATE in the firmware to any other "standard" value. I changed it to 115200 and I can connect using ubuntu.
Re: Marlin heated bed support on gen6 deluxe
March 03, 2012 12:57PM
I found these lines in pins.h in the latest version of firmware published by mendel-parts. MOTHERBOARD 5 is for gen6 and MOTHERBOARD 51 is for gen6 deluxe.

#if MOTHERBOARD == 5
#define HEATER_BED_PIN -1 //changed @ rkoeppl 20110410
#define TEMP_BED_PIN -1 //changed @ rkoeppl 20110410
#else
#define HEATER_BED_PIN 1 //changed @ rkoeppl 20110410
#define TEMP_BED_PIN 0 //changed @ rkoeppl 20110410
#endif

I changed these pin values and now the firmware is not running.. I cannot connect to the printer. (if I change it to -1 again then I can). Maybe these are not the correct values for bed pins...
Re: Marlin heated bed support on gen6 deluxe
March 03, 2012 06:59PM
I managed to get ubuntu to connect at 250000. I uninstalled brltty which appears to do something with the serial port. I'm not sure if that was the thing that fixed it though so it would be good to hear someone elses experiences.
p
Re: Marlin heated bed support on gen6 deluxe
March 05, 2012 02:50PM
Did you solve the heated bed problem with the new firmware? Or did you solved it anyway? I'm stuck here.


Barcelona Dynamics - [bcndynamics.com]
Re: Marlin heated bed support on gen6 deluxe
March 05, 2012 03:01PM
Im using the mendel parts version of the firmware and the heated bed works. I wired up the bed correctly with the heater and thermistor and i can now control it with pronterface. The thermistor is fixed to the bed with wide kapton tape with a blob of thermal paste underneath and its pretty stable now. I compiled the firmware with arduino0023 and it works fine. I think Removing brltty helped with ubuntu so see if it helps you too. Ill also upload my software setup later so you can pull an exact copy of it
Pete
Re: Marlin heated bed support on gen6 deluxe
March 10, 2012 02:56PM
I just wired up the Gen6 Deluxe board to my Reprap, compiled the new firmware with arduino 23 and uploaded it without any problems. The manual controls and extruder heater work with repetier host but the software doesn't recognize the opto end stop switches. Do you know if I need to change something in the configuration.h file? The reason I'm using repetier host is because the version of Repsnapper that I was using with my old board doesn't work with the Gen6 deluxe board. I'm hoping to wire up the heated bed this weekend as try to get that working too.
Re: Marlin heated bed support on gen6 deluxe
March 11, 2012 12:19AM
I figured out what was going on with the endstops. They were working if I homed each axis but not when I was manually moving each axis.

After commenting out the following line in configuration_adv.h file, the endstops worked with manual moves as well:

#define ENDSTOPS_ONLY_FOR_HOMING // If defined the endstops will only be used for homing
Re: Marlin heated bed support on gen6 deluxe
March 11, 2012 03:42PM
pete-theobald Wrote:
-------------------------------------------------------
> Im using the mendel parts version of the firmware
> and the heated bed works. I wired up the bed
> correctly with the heater and thermistor and i can
> now control it with pronterface. The thermistor is
> fixed to the bed with wide kapton tape with a blob
> of thermal paste underneath and its pretty stable
> now. I compiled the firmware with arduino0023 and
> it works fine. I think Removing brltty helped with
> ubuntu so see if it helps you too. Ill also upload
> my software setup later so you can pull an exact
> copy of it
> Pete

It works now. I used the latest firmware. Thanks smiling smiley

PS: I prefer to use 115200 anyway. I think that using a standard value is better.
Sorry, only registered users may post in this forum.

Click here to login