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

Solved Marlin 1.1

Discussion in 'Troubleshooting' started by Bd182, Mar 8, 2019.

  1. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    The BLTouch device seems like a good idea. Did I read that it's supported in Marlin 1.1?

    There are PAGES of old comments about installing Marlin 1.1. It seems like I read that installation was a breeze IF you got Configuration.h right. Well, it doesn't look like that's gonna be easy.

    Is there some bottom line final configuration of Marlin 1.1 (or 2) for the R1+?
     
  2. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    Marlin 1.0.x (which all Robo firmwares were based on) and 1.1.x below 1.1.9 are all deprecated (in this sense meaning no longer supported). There are two threads on this forum that are of 1.1.9 which was the last stable version of 1.1.x and 2.0.x. The advantage of 1.1.9 is that it is still 100% Arduino IDE and a bit easier to configure, in my opinion, but 2.0.x is newer (no new features from 1.1.9 but 32-bit compatible, which really doesn't matter if you are using a RAMPS / Arduino board pair or combo board). While 2.0.x for 8-bit boards can be compiled in the Arduino IDE, it is an advantage to switch to the new compiler setup using Google Atom, hence my opinion that 1.1.9 is easier to configure and compile.
     
  3. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    I was thinking of going to Marlin 1.1 to access mesh bed leveling. Has someone posted a configuration file for our printers to use that version of Marlin? Or, do I have to puzzle it out by myself? I'll never make it. It's 2,000 lines long!
     
  4. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
  5. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    I am beginning to look more closely at changing my firmware, and towards that end I've downloaded the stock Robo firmware and the Marlin 1.1.x version. I thought I would build and install on one of my spare Arduino boards to get a handle on the procedure, and be sure I can get back to ground zero if I am unsuccessful in an upgrade. I can verify the Marlin 1.1 build, but the stock Robo build gives me hundreds of errors, no matter which version of Arduino I use.
     
  6. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    Did you read the FAQ link about uploading the firmware and make those changes?
     
  7. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    If you mean "Updating firmware with Arduino", then yes. The errors appear when I tell Arduino to verify the downloaded package, even with Arduino version 1.6.8. I can take this up with Robo tech support if you don't know what the problem might be.
     
  8. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    I have no clue since only you know what errors you are getting :) Maybe attached a text file with them and we can have a look.,
     
  9. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    There are over 500 errors, leading me to believe there's something seriously flawed in the posted firmware. Jason at Robo says he knows nothing about it. It's worrisome to have no ability to replace the firmware in case a Marlin 1.1 upgrade goes south.

    Top of the error list:

    In file included from sketch/Marlin.h:21:0,
    from sketch/temperature.cpp:32:
    pins.h:562:39: error: pasting "/* BED*/" and "_RPORT" does not give a valid preprocessing token
    #define HEATER_BED_PIN 8 // BED
    ^
    sketch/fastio.h:45:44: note: in definition of macro '_WRITE'
    #define _WRITE(IO, v) do { if (&(DIO ## IO ## _RPORT) >= (uint8_t *)0x100) {_WRITE_C(IO, v); } else {_WRITE_NC(IO, v); }; } while (0)
    ^
    sketch/temperature.cpp:591:9: note: in expansion of macro 'WRITE'
    WRITE(HEATER_BED_PIN,LOW);
    ^
    sketch/temperature.cpp:591:15: note: in expansion of macro 'HEATER_BED_PIN'
    WRITE(HEATER_BED_PIN,LOW);
    ^
    pins.h:562:39: error: pasting "/* BED*/" and "_WPORT" does not give a valid preprocessing token
    #define HEATER_BED_PIN 8 // BED
    ^
    sketch/fastio.h:34:51: note: in definition of macro '_WRITE_C'
    {DIO ## IO ## _WPORT |= MASK(DIO ## IO ## _PIN); }\
    ^
    sketch/fastio.h:68:23: note: in expansion of macro '_WRITE'
    #define WRITE(IO, v) _WRITE(IO, v)
    ^
    sketch/temperature.cpp:591:9: note: in expansion of macro 'WRITE'
    WRITE(HEATER_BED_PIN,LOW);
    ^
    sketch/temperature.cpp:591:15: note: in expansion of macro 'HEATER_BED_PIN'
    WRITE(HEATER_BED_PIN,LOW);
    ^
     
  10. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    The original Robo firmwares for all versions of the R1 (Beta, R1, R1+PLUS) all are based on Marlin 1.0 which was abandoned quite some time ago by the Marlin developers. If I recall correctly, you needed a version of the IDE of 1.6.8 or older to get it to compile correctly. In IDE version 1.6.9 Arduino.cc changed one of the libraries used in Marlin and renamed a variable which killed compiling without source code changes. There are several threads here on what to change in what files to change them to get newer IDEs to compile the very old Marlin code.
     
  11. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    I don't care so much about Marlin 1.0, except as a backup for failures of the transition to 1.1. As a new user, perhaps I'll just run with what I have for a while before I risk unnecessary trouble.

    I am able to verify the Robo3dR1-119_bugfix you posted in December. Should that be a pain free upload and ready to run?
     
  12. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    You need to save the entire error/warning list as a text file and attached that to a post assuming you want me to fix the error.

    A really smart idea. If you do not need a feature in a firmware release do not change your working firmware.
     
  13. WheresWaldo

    WheresWaldo Volunteer ( ͠° ͟ʖ ͡°)
    Staff Member

    Joined:
    Feb 18, 2015
    Messages:
    5,905
    Likes Received:
    3,593
    It is not a plug and play firmware. No single version of Marlin is. I specifically used 1.1.9 on my R1 and now on my R2 becsuse I wanted to use Unified Bed Leveling (UBL) as Auto-Level in every version of Marlin sucks and even though the approach Robo used for the Z endstop is novel the implementation is not so much and it makes Marlin Auto-leveling suck even more.

    But you need to be familiar with UBL in order to set it up.
     
  14. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    It's the bed leveling that I'm frustrated with. I've turned it off in favor of manual leveling. How do people get educated on how to implement a Marlin update?

    I'll attach my error list, but I do not expect you to deal with it. I just wondered why there were so many problems. There must be a "global" answer.
     

    Attached Files:

  15. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    pins.h:562:39: error: pasting "/* BED*/" and "_RPORT" does not give a valid preprocessing token
    #define HEATER_BED_PIN 8 // BED


    Pins.h is incorrect or the motherboard definition is incorrect so that the wrong "bits" of pins.h is getting picked up.

    Post the configuration.h you are using (and I assume this IS from 1.0, not 1.1)
     
  16. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    All files came from the official Robo firmware download on the Robo page.
     

    Attached Files:

    • pins.h
      File size:
      67.3 KB
      Views:
      0
  17. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    Oops, you said Configuration.h....
     

    Attached Files:

  18. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    Downloaded R1+v3 firmware
    Used the configuration.h you provided
    used the two files from SDBASE.ZIP (as noted int he FAQ post, required for newer versions of arduino compiler)
    compiled with 1.8.8 of the arduino IDE
    output as shown below:

    Sketch uses 111902 bytes (44%) of program storage space. Maximum is 253952 bytes.
    Global variables use 4145 bytes (50%) of dynamic memory, leaving 4047 bytes for local variables. Maximum is 8192 bytes.
     
  19. Bd182

    Bd182 Member

    Joined:
    Jan 25, 2019
    Messages:
    66
    Likes Received:
    1
    Mark-

    Thanks for taking the trouble to suss this out. I am not aware of a FAQ post on this topic or a "SDBASE.ZIP" file. Can you share a link to this FAQ?
     
  20. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338

Share This Page