1. Got a question or need help troubleshooting? Post to the troubleshooting forum or Search the forums!

Unresolved "Multiple Definitions" Error with Robo's Posted Firmware

Discussion in 'Troubleshooting' started by mattgraham, Mar 28, 2015.

  1. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    Robo3D's website has the firmware files and instructions on their site:
    http://help.robo3dprinter.com/Wiki/RoBo_3D_Firmware

    I am following these instructions perfectly, but upon compiling the firmware for upload I receive an "multiple definition" error in the Arduino software. I see others have posted this exact same problem, but I don't see any solutions posted.

    A small portion of the error is listed below. The actually error is MUCH MUCH longer, but it is all the same problem; multiple definitions conflicting (see attached).

    /Users/matthewgraham/Documents/Arduino/libraries/Auto_Level_7_17_8mm/vector_3.cpp:25: multiple definition of `matrix_3x3::create_look_at(vector_3)'
    vector_3.cpp.o:vector_3.cpp:25: first defined here
    Auto_Level_7_17_8mm/vector_3.cpp.o: In function `vector_3::vector_3()':
    /Users/matthewgraham/Documents/Arduino/libraries/Auto_Level_7_17_8mm/vector_3.cpp:25: multiple definition of `matrix_3x3::transpose(matrix_3x3)'

    Any help is much appreciated!
    Matt
     

    Attached Files:

  2. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    Which INO file did you open.
    What was the folder name it was in?
     
  3. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    Hey Mark,

    I downloaded the file "Auto_Level_7_17_8mm.zip" and extracted it to the Arduino Library folder. So the names are identical (as you had pointed in an older post).
    "Samsung ▸ Users ▸ matthewgraham ▸ Documents ▸ Arduino ▸ libraries->Auto_Level_7_17_8mm"

    From their I open the "Auto_Level_7_17_8mm.INO" file in Arduino software. The only other INO file in the same extracted folder is "Marlin.INO"

    Thank you for offering to help!
     
  4. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    I downloaded that same file.
    Extracted it to a folder on my desktop of the same name
    launched the Arduino IDE
    browsed to the Auto_Level_7_17_8mm folder on my desktop
    opened Auto_Level_7_17_8mm.ino
    Clicked compile. Got this:

    Build options changed, rebuilding all

    Sketch uses 115,274 bytes (45%) of program storage space. Maximum is 253,952 bytes.
    Global variables use 4,408 bytes (53%) of dynamic memory, leaving 3,784 bytes for local variables. Maximum is 8,192 bytes.


    Compiled fine and was ready to upload.

    I can't upload it, I do not have that printer. It seems to work though. Recheck your steps.
    Notice what I did NOT do. I did NOT put this in as Arduino library code.
     
  5. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    If it matters I used the Arduino IDE version 1.6.1
     
  6. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    I just repeated the steps you outlined, and it worked! What is the best way to tell Robo3D to redraft their instructions? Contrary to what their instructions, I guess you have to open "Auto_Level_7_17_8mm.INO" from the extracted folder that is NOT in Arduino's Library.

    I am in the middle of a 16hr print, but will try uploading the firmware to the printer tmrw. I assume it should work just fine now that I have verified it compiles.

    Thank you again Mark!
     
    mark tomlinson likes this.
  7. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    I have, perhaps sadly, never reviewed their instructions. I do a lot of embedded coding of which arduinos are included and that is just how I have pretty much always done it. @Harry can perhaps get better instructions staged.
     
  8. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    So I have successfully updated the firmware, but now the printer is not leveled correctly, and will not autolevel. Before the firmware update, it would move around the entire bed to autolevel. Now it just immediately starts printing. Seems strange since the name of the firmware is "Auto_Level_7_17_8mm." Any thoughts?
     
  9. jbigler1986

    jbigler1986 Active Member

    Joined:
    Feb 13, 2015
    Messages:
    534
    Likes Received:
    128
    What software are you using? If it's Mattercontrol go to the start Gcode and move the M109 line to the top of the gcode.
     
  10. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    Yes I am in MatterControls. I add M109, but it didn't work. Here is the Start G-Code:

    G28 X0 Y0 Z0
    G1 Z5 F5000
    M109 S[temperature] ; I did not add this
    G28 ZO
    M565 ZO
    G29
    M109 ; I added this line


    I have the starting G-Code from actually running the print attached.
     

    Attached Files:

    #10 mattgraham, Apr 8, 2015
    Last edited: Apr 8, 2015
  11. jbigler1986

    jbigler1986 Active Member

    Joined:
    Feb 13, 2015
    Messages:
    534
    Likes Received:
    128
    This is what the Gcode should look like. See what I was talking about?

    M109 S[temperature] ; I did not add this
    G28 X0 Y0 Z0
    G1 Z5 F5000
    G28 ZO
    M565 ZO
    G29
     
  12. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    Ok, I made that change. When I click print, the first line in the G-code terminal is:
    ->N1 M110 S1*96

    mattercontrol's status says "Currently Printing" but the printer isn't actually doing anything at all. and the g-code terminal is not showing any more codes being sent to the printer.
     
  13. jbigler1986

    jbigler1986 Active Member

    Joined:
    Feb 13, 2015
    Messages:
    534
    Likes Received:
    128
    Close Mattercontrol and turn off printer. Then start again. Also make sure that your part isn't to big.
     
  14. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    Nevermind that last post. I closed Mattercontrol and restarted. Now I click print and now it says "waiting for extruder to heat to 0C."

    The part is very small.
     
  15. jbigler1986

    jbigler1986 Active Member

    Joined:
    Feb 13, 2015
    Messages:
    534
    Likes Received:
    128
    So you are good now?
     
  16. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    No, the printer just sits there waiting to heat to 0C, which is not the desired the temperature.
     
  17. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    Ok I restarted the computer and printer, and now it works!!! Thank you so much for the help!

    Why did the M109 command have to be first?
     
  18. jbigler1986

    jbigler1986 Active Member

    Joined:
    Feb 13, 2015
    Messages:
    534
    Likes Received:
    128
    If it takes longer than a minute to heat up using the stock settings, it will skip the auto level routine with the stock settings
     
    #18 jbigler1986, Apr 8, 2015
    Last edited: Apr 8, 2015
  19. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    probably because 'MatterControl'
     
  20. mattgraham

    mattgraham New Member

    Joined:
    Feb 23, 2015
    Messages:
    19
    Likes Received:
    1
    Interesting. Well thank you again for your patience and help!
     

Share This Page