Problem upgrade TronXY XY-100 to hotbed

Hello everyone,
I am from Romania and I'm new here and the new owner of a 3d printer. I recently purchased a Tronxy xy-100 printer that works normally. I have problems with larger diameter (100mm) worck that did not print correctly. So I went to buy a 120 / 120mm hotpad. After making connections, the temperature indicates 0 C and can not be set either from the printer or from the PC software.  Problems with the printer motherboard? Problems setting jumpers? Where is the problem?
Thank you in advance for clarification on how to resolve the situation.


  • Did the printer have hot bed support before you upgraded? If not you need to upload a new firmware with hot bed support. See M105 response in log. If it shows B: firmware has hot bed compiled in.
  • Thanks for the reply.
    No, he did not have a hotbed. I bought the hotbed.
    so you need another firmware.
    Unfortunately, I do not really understand how to do it with    "See M105 response in log. If it shows B: firmware has hotbed compiled in."    I'm a beginner in this area.
  • If it did not have a heated bed I do not think that is supported out of the box. So you need the firmware from your manufactorer and add the heated bed and compile and upload it to use it. I think they use marlin firmware in some kind. Last days another user had the same problem but it seems the original firmware is for download so you just need to edit the heated bed settings. But that is marlin stuff, which is not our software. With marlin documentation it should be easy to solve.
  • Okay, I guess I got it right now. That's how it is. The motherboard is Melzi 2.0 PCM card ATMEGA 1284P P802M mainboard X3A.
    I'm going to look for a way to rewrite the included hotbed firmware from another TronXY printer.
    If I succeed, I will post the way to solve it.
    Thank you for the answer.
  • Good news, the firmware software is repetier version 0.91.
    Now I'm trying to overwrite the firmware in the processor with the hot-bed information, but I had some problems with the programming parameters. The motherboard is Melzi 2.0 v5. Now I want to ask if the firmware was written by REPETIER (version 0.91) or by Tronxy? After editing the configuration program, compilation stops at a DDR output error. Beginning in this area, I can not see where I'm wrong. I also send you a printscreen with the reported error.
    With anticipated thanks,
    Imagine n linie
  • We at least wrote the original firmware. Possible that tronxy did add modifications, can not say that. But should not needed.
    DDR error is often if you use a pin number that does not exist on melzi. The default is for mega2560 which has much more pins. So find the function the pin belongs to and give it a number of the melzi or disable the feature if you do not have that part.
  • After some unsuccessful compilation attempts for the configuration file, it is now worse, even if it did not write anything in the printer. Good thing I did before anything, a beckup of everything in the printer (eeprom and flash). The printer no longer connects to the server or the repetier host, without restarting the system. Even so, it's not a stable connection. The printer connects and disconnects from the server. The green link icon does not appear, it appears rhythmically red with a orange connection scale.
    Regarding the compilation error, I think it refers to pin 31 which is assigned to the hot bed according to the schema, if I did not misunderstand it. I also wrote to Tronxy asking for their configuration file <configuration.h> but I have not yet received an answer.
  • #define HEATER_0_PIN       13 

    #define HEATER_2_PIN       -1

    // bed was 10 in older versions,but 12 seems to be correct

    #define HEATER_1_PIN     12 

    You see for melzi heaters are pin 12 and 13. 31 is for sd card select.

    If you succeeded uploading it might overwrite eeprom with new values giving it a new baud rate. That may also why server doe snot understand responses and reconnects.

  • Sorry for the delay, but I was gone. As I said, I tried multiple program sources to compile but without a favorable result. I've also changed the Arduino software with an older version (someone said on a Forum that programming does not work with version 1.8.8) and errors have changed, but ... they're still there. So I do not have a valid source program. Version 1.6.x gives other syntax errors (eg, lack of character ")" in the UI.imm program). The source I got from the github site. In addition, we also marked the Sanguino variant in the Arduino processor list as described:

     „The instructions work fine... no idea what your doing..

    I downloaded latest Arduino 1.6.9 onto my old Windows Xp machine

    Extracted the zip to the desktop

    Ran the IDE, as expected no Sanguino files

    Open up the menu File|Preferences

    At the bottom is a field Additional Boards manager URLs:



    Click OK

    Open up the menu Tools|Board:|Boards manager...

    This will open the manager. Scroll down till you see Sanguino

    Click more info, this will reveal an install button.

    Hit install.

    Close the Board manager.


    Sanguino is now in the list of boards at the bottom.

    Select it and new menu item is now visable in the Tools menu. Processor

    Now select the type of Processor 644p at 16mhz or 1284p at 16mhz are聽

    normal for Sanguino boards, though you can get 20mhz versions, for that聽

    you will need to edit the boards.txt file

     I tried compiling with all 644 and 1284 tipes of processors without any results. There are always errors, some of them the same, some of them different. 

    So I did not have the way to enter the commands suggested by Repetier. 

    Finally, I do not understand how it can happen that using the Repetier dedicated software to write a source program, does it have syntax errors? Normally, at least from a syntax point of view, it should be correct. I read all the data in the printer (stored in EEPROM) and typed them correctly. Normally, I should have obtained the original printer source program without syntax errors.

     In addition to all of the above, I'm not too initiated in this type of programming. But I have read a lot about, and still read in the hope that I will succeed what I have proposed.

    Therefore please, if someone has the valid and proven source program for the Tronxy xy100 or p802 printer, let me download it. The difference between them is the size (100/100 or 200/200 mm) and with / without a heat bed.

    The hardware I have:

    Melzi 2.0-V5 motherboard with separate sockets for two fans.

    The software installed is Repetier version 0.91.

    The processor is 1284, but I do not know if it is 8 or 16Hz.

    I have to mention that the printer works perfectly in the parameters described by the manufacturer, but I also want to implement the heatbed.

    Sorry for the message perhaps too long, but I think this is one of the goals of a forum, learn from the mistakes and ideas of each one.

    With great respect for everyone.

  • I found this link by Google.
    You need to login to download
    I looked inside the Zip. Firmware Repetier 0.91
    heated bed enabled in configuration.h
    X-Y dimensions are 130 by 130mm.
    Heated Bed thermistor type might need to be changed.
    Good luck
  • Thanks ROCO for your involvement and for your effort to solve my problem. I downloaded the documentation and the file from the link that you indicated. I am open the configuration.h file with Repetier-Firmware configuration tool for version 0.91 and, surprise .. motherboard instead of Melzi, is declared Megatronics 2.0.
    Printer dimensions are 200/200/120 instead of 150/150/100.
    No heated bed in configuration.
    Display controller is set PiBot .... which as far as I know it is with 4 key.
    However, Arduino does not compile the source. It is right that I tried with version 1.8.8. But I will also try with version 1.6.x which I have not downloaded yet.
    If I got it right, you said you edited Configuration.h with Repetier-Firmware configuration tool and you saw parameters other than mine. I'm starting to wonder very seriously whether the Repetier-Firmware configuration tool does not have an online problem. I do not even know there is one that can be downloaded. You would be grateful if you could develop what I have been saying and if you can tell me where I'm wrong.
  • Problem is that Printer manufacturers use uncontrolled forks of Firmware.
    They also change Hardware as they want so it can (and will) happen that you buy two identical looking
    printers with different hardware. So upgrading that printers can get hard if you don´t have good electronic skills.
    Repetier Firmware can only handle known Hardware and lives from Informations coming from users.
    Keep in mind that Firmware is (up to now) free of charge and we (all of the users ) cannot expect repetier buying
    all available printers respectively the electronics hardwareto get all tested.It´s simply impossible.
    I´m fighting myself with a cheap delta printer and i just can say : buy cheap,get cheap not to say ugly...
    in my case it ended up changing the electronics  .

    but that was offtopic.

    so may be you find help here:

  • edited January 2019
    We are looking at something else.
    i opened the zip with WinRar
    I looked at configuration.h with Arduino program 
    #define X_MAX_LENGTH 130
    #define Y_MAX_LENGTH 130
    #define Z_MAX_LENGTH 130
    #define MOTHERBOARD 63  - according to the pins.h file included in the zip that is Melzi. (In json is type 701)
    #define HAVE_HEATED_BED 1
    The defined items are what are used when you flash the board.
    I see where you came up with the other dimensions, that is in the text at the end of the configuration.h the json string. I don't know why its different. That is what was supplied in the zip file.
    I only use the online configuration when I start from scratch. Minor tweaks I do in Arduino and then burn the file to the board. I really never look at the json string when I modify the file in Arduino. So some of my configuration.h might not match that part. Like steps/mm, acceleration, dimensions, etc.
    I had assumed you were doing it differently, just using Arduino to modify configuration.h and then upload to the board.
    There is no issue with the online tool to my knowledge and it works very well. I just don't use it when I am tweaking my firmware. I stay in Arduino to modify and burn. Whatever works for other people is fine with me. But I think a manufacturer generated firmware might have some modifications or customizations that you might not see in the online tool. I could very well be wrong, but that's how I see it. I just make sure to verify all the important settings before I flash the firmware. and I run eeprom_clear before I flash it.

    Regarding the json string and configuration.h there is an old thread about this in the forums I just found from 2016

    This info is from 2014:
    from Repetier,287030
    This is an excerpt , the whole thread is more informative.

    You can still make changes manually. But you should be aware that Configuration.h now contains data twice. The top part is for the firmware to compile and is what gets used. At the bottom is an embedded json string with the configuration data as used in the online configurator. If you upload it to the configurator it takes only the json string, so if you reexport a config it is based on these data throwing away your manual changes in the top part. If you always change json and top part in parallel you lose no data on reconfiguration. You will see the names used are mostly self explanatory, only make sure not to destroy the format integrity or uploading will silently fail.

    So, to finish my long post. I am guilty of doing the same thing that the creator of that zip file did,I did not update in parallel both parts!
    I find this interesting now that I have read about it a little. I learned something new today.

  • Mein Englisch wird hierfür wohl nicht ausreichen. Deswegen schreibe ich das ganze auf deutsch, in der Hoffnung, dass mir dennoch jemand helfen kann.

    Auch ich habe meinen Startt mit einem Heizbett ausgerüstet.

    Sämtliche Versuche eine passende Firmware über Arduino aufzuspielen sind misslungen. Ich benutzte dazu Arduino 1.0.5 und Arduino 1.8.5 . Beide jeweils mit den entsprechenden Erweiterungen für das Sanguino-Board.

    Einzig über "Cura für Startt" und einer entsprechenden hex-File, welche es bei imakr zum Download gibt, konnte ich die Firmware auf 0.92.2 updaten, wodurch das Heizbett nun zumindest in der Firmware enthalten ist.

    Leider bleibt es aber ohne Funktion. Auch wenn ich es manuell ansteuere, heizt es nicht auf, bzw. wird nicht angesteuert. Ebenso bleibt die Rückmeldung des Temperaturfühlers auf konstant 25° stehen. Dort zeigt sich keinerlei Veränderung. Eine Messung mit dem Multimeter ergab, dass der Fühler aber ordnungsgemäß arbeitet.

    Vielleicht kann mir hier jemand weiter helfen, da meine Kenntnisse mit Arduino sehr beschränkt sind.

    Eine Möglichkeit das ganze zu lösen, wäre eine funktionierende hex-File, denke ich.

  • Es gibt einen fake Sensor der immer genau 25°C zurück gibt. Offenbar hast du den Typ gewählt und nicht den richtigen Sensortyp.

    Wenn du heiz, lass dir im host/server die Ausgangsleistung anzeigen. Wenn da 100% steht versucht er es zumindest. Manche boards haben für den Heitbettausgang einen eigenen Stromeingang, das solltest du auch mal Prüfen. Wenn da dann nicht anliegt kommt auch nichts raus. RAMPS boards gehören zum Beispiel dazu.
  • edited January 2019

    Wie gesagt, ich selber habe den Sensor leider nicht gewählt. Es war eine Version der Firmware, welche ich fertig aus dem Netz geholt habe.

    Zum Einsatz kommt bei dem XY-100 das Board "Melzi 2.0 V5"

    Bei dem Melzi gibt es keinen separaten Versorgungsanschluß für das Heizbett. Ich kann über Repetier-Host das Heizbett mit 100% ansteuern, aber an dem Ausgang des Boards wird kein Signal ausgegeben. Ich gehe davon aus, dass die Pin-Zuordnung für das Heizbett nicht stimmt. Das soll wohl ein Problem mit der Repetier-Firmware sein, was ich mittlerweile in einigen Foren gelesen habe.

    Da ich es leider nicht auf die Reihe bekomme, eine angepasste Firmware über Arduino auf das Melzi aufzuspielen, habe ich leider auch nicht die Möglichkeit, den Sensor bzw. die Pin-Zuordnung für das Heizbett zu ändern.

    Somit suche ich nach einer anderen Möglichkeit, meinen Tronxy MIT Heizbett zum laufen zu bringen.

  • Ok, wenn es nur ein binary war dann ist natürlich schwer zu sehen was da eingestellt ist. Beim Quellcode hätte man ja einfach die Einstellung ändern können. Es gibt natürlich noch den Weg die Konfiguration komplett selbst zu machen, aber dazu muss man wissen was wo angeschlossen ist.
  • Hallo,

    nach fast einem Jahr hab ich mich mal wieder mit dem "Kleinen" beschäftigt. Ich habe jetzt über einen Arduino nen Bootloader auf das Melzi aufgespielt. Anschließend Repetier über USB in einer abgeänderten Version geflashed.

    Jetzt funktioniert fast alles. Druck über SD-Karte geht, mal abgesehen von Haftungsproblemen, die ich noch in den Griff bekommen muss. Das Heizbett wird wie gebraucht angesteuert.

    Leider kann ich jetzt nicht mehr über USB drucken. Sobald ich es versuche stürzt "Cura für STARTT" grundsätzlich ab.

    Auch eine manuelle Steuerung über RepetierHost ist nicht mehr möglich, da keine Verbindung mehr zum Drucker aufgebaut wird.

    Woran könnte das jetzt liegen?

  • edited January 2020
    schau mal ob sich der USB-Port geändert hat (macht windows ganz gerne)oder die baudrate nicht mehr übereinstimmt.
  • Habe ich bereits überprüft. Port stimmt noch und die Baudrate ebenso.

    Hatte schon vermutet, dass es an den Treibern liegt, da ich für den Arduino (China-Clone) andere Treiber für den CH340 installieren musste. Also alles deinstalliert und neu eingerichtet. Das war aber nicht die Fehlerquelle.

    Somit bleibt mir nur die Vermutung, dass irgendwas an dem Bootloader verkehrt sein muss. Da hab ich aber keine Ahnung, wie ich das überprüfen könnte.

Sign In or Register to comment.