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

Solved Matter Control & Arduino are not connecting.

Discussion in 'Troubleshooting' started by BrooklynBay, Jan 1, 2021.

  1. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    424
    Likes Received:
    49
    I don't think that it matters but my original 4988 steppers were green, and worked in the 1.6 board. The new 4988 steppers are red, and were acting up in the plus board. My original green steppers wouldn't work in the plus board. Other than the color, they should be identical in the way that they function.
     
  2. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,629
    Likes Received:
    7,312
    The Original RAMPS can use Pololu A4988 or the Texas Instruments DRV8825 with no other changes (just swap the drivers). The TMC2130 is a different beast and while you can adapt the RAMPS 1.4 to use them, they are not a drop-in swap for the A4988/DRV8825. The color of the board differs between manufacturers, but other than that it doesn't signify much :)
     
  3. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,629
    Likes Received:
    7,312
    The real differences in the stepper drivers (in my opinion) is the way they handle microstepping and once you get beyond 1/32 microsteps you are splitting hairs for a printer like the Robo R1 series. It may be better technically, but you are not going to see it.
     
  4. Rod Smith

    Rod Smith Member

    Joined:
    Nov 7, 2017
    Messages:
    87
    Likes Received:
    33
    $20 for all that is suspiciously little money. You seem to already be running into the adage, "you get what you pay for," and trying another ultra-cheap (and I mean "cheap" in its pejorative sense) bundle may just be throwing good money after bad.

    I disagree with this. I've posted on this forum, and written a much longer Web page, about my own electronics upgrade, which involved installing a 32-bit BigTreeTech SKR Pro v1.2 board, TMC 2208 steppers, and TFT35-E3 display, on my Robo3D R1+. I agree with Mark that the printer's performance (in terms of print speed or quality of finished prints) hasn't improved, but that was never the point of the upgrade. What has improved is usability, and in a big way. Prior to the upgrade, I was constantly frustrated by factors such as the awkwardness of Marlin configuration, the X-axis gantry going out of level with the bed, and thermal runaway false alarms when I tried to change the target temperature before the original set temperature was reached. The upgrade has fixed all these problems, mainly because it ditches Marlin in favor of the vastly superior (IMHO) RepRapFirmware. As a bonus, the printer is now much quieter -- the TMC 2208 stepper driver chips are much quieter than the stock Allegro A4988s. I also now have a Web-based user interface (Duet Web Control, or DWC), which is RepRapFirmware's "killer feature." (I'd previously been using OctoPrint, which IMHO is a little klunkier and more trouble-prone than DWC.)

    That said, I recognize that the upgrade I did is not for everybody. For one thing, it's expensive -- I spent about $150 on it, although something with 90% of the benefits could be done for half that price, or maybe only a third if you don't want an LCD control panel. Another problem with my upgrade is that it was time-consuming -- re-wiring everything (to new hardware with different connection points and even connector types) took time, and the software setup took time, too. If you already know Marlin, you'll need to learn RepRapFirmware equivalents (or stick with Marlin and its limitations, which reduces the benefits). OTOH, learning to set up RepRapFirmware for your printer will force you to learn things about your printer that you might not otherwise learn, and that knowledge may be useful in the future. There's definitely a much steeper learning curve to going with a 32-bit control board and RepRapFirmware than with trying to replace defective hardware with close equivalents.

    Given the level of problems you're experiencing, @BrooklynBay, I'd say it's at least worth considering a more radical shift than what you've attempted to date. In theory, it'll be more effort to set up; but starting with a (relatively) clean slate may be better than trying to fix something that's badly broken, as yours seems to be. OTOH, there are costs in both time and money to a more radical shift, so I certainly understand if you want to keep trying to get a Robo3D-style Arduino/RAMPS setup to work. If you do decide to do something more extreme, then you must be prepared to learn the setup details -- learn how each motor and sensor works, and how they all fit together in the firmware configuration. If you're willing to do that, then upgrading to 32-bit electronics and RepRapFirmware may be satisfying, and will serve you well in the future, if you go on to buying or building other 3D printers. If you just want to get your printer working, then a close electronics replacement may be your best option -- but an ultra-cheap $20 Amazon special is a gamble, IMHO.

    Another option worth considering is ditching (or at least shelving) your Robo3D printer and buying an entirely new one. Getting a decent one would cost more than even my $150 electronics upgrade, but maybe not a lot more. As yours is a pre-R1+ model, possibly even a prototype, it's old and enough of an oddball that it will be difficult to get working well, even with help by people like Mark who know this hardware well. A Creality Ender 3 kit costs $216 and an Ender 5 costs $400. These are popular printers that will likely work reasonably well out of the box (although both will require at least a little assembly).
     
    mark tomlinson likes this.
  5. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,629
    Likes Received:
    7,312
    Let's just say the "bang for the buck" in upgrading the controller is not going to be there for most folks.
    I am not saying it isn't better... it can be, but maybe not worth the cost to everyone. As you mentioned there are other decent economy grade printers out there and that might be a better option. I have a couple of other FDM printers (MonoPrice, SeeMeCNC and Creality) and they are not bad. Don't expect that they will be 100% trouble free.

    All of mine have been upgraded in one way or another and doing that sort of upgrade forces you to learn the printer better and if you keep it that can't be a bad thing :)
     
  6. Rod Smith

    Rod Smith Member

    Joined:
    Nov 7, 2017
    Messages:
    87
    Likes Received:
    33
    Disclaimer/Warning: Fans of Marlin are advised to avert their eyes to the vicious things I'm about to say....

    Broadly speaking, I'd agree; but it depends on what you want to do. My main reason for suggesting considering such an upgrade, which I sort of circled around but didn't express very clearly, is this: @BrooklynBay is having terrible problems with the 8-bit/Marlin ecosystem. If I've followed and counted correctly, he's already bought three 8-bit replacement boards (an all-in-one board, a clone Arduino, and a genuine Arduino), and none has worked. He's now talking about buying a fourth board (along with a bunch of accessories), but if my suspicions are correct, that one won't work any better. Chances are at least one of the first three boards is technically OK, but something about the 8-bit Marlin installation and configuration process is tripping him up. That doesn't surprise me. Marlin is incredibly primitive to configure and install, which makes learning it difficult, especially for people who don't have experience with software development. That's what you're doing when you configure Marlin: You're altering the source code to the firmware, recompiling it, and installing it at a low level!

    IMHO, what @BrooklynBay needs to do to get the printer working is to do a deep dive into firmware configuration. That's certainly possible with Marlin and a Robo3D R-series printer, but when it's not known which of those boards is actually working, it'll be harder; and Marlin is terrible (terrible!) from a user configuration point of view. We (more you, @mark tomlinson, than I) have already walked @BrooklynBay through some of this, but the sort of deep dive I'm describing will require more learning. At this point, then, the question becomes: Is it worth it to learn Marlin? RepRapFirmware is MUCH easier to configure than Marlin, and provides ease-of-use advantages over Marlin once it is configured. (See my Robo3D upgrade Web page for more on this subject.) Spending $50-$150 on the required hardware, and more time on modifying wiring and whatnot, is admittedly a downside to this approach -- maybe enough to make this option less desirable than staying the course with RAMPS/Arduino/Marlin. There's also the downside that a Robo3D R-series printer set up in this way will be unlike most Robo3D R-series printers, so getting help on this forum may be harder (although RepRapFirmware forums may be good substitutes.) Thus, it's a judgment call what to do; but if this next $20 expenditure doesn't help, how much more will @BrooklynBay spend on 8-bit hardware before chucking the printer in the nearest dumpster in frustration?

    Having used both systems, I can say that I much prefer RepRapFirmware, and that requires a 32-bit board. Configuring RepRapFirmware is still primitive compared to, say, configuring a 2D paper printer; but it's not at the stone-age level of primitiveness of Marlin. Configuring RepRapFirmware does not require diving into C++ source code files, using software IDEs, or uploading locally-compiled firmware via a USB port. Instead, most configuration is done by editing text files on the printer via a web browser. Initial setup will likely require a USB connection (although there are ways to do it without that), but that's it. This can still be confusing, but not as confusing as Marlin. The biggest configuration advantage to sticking with Marlin is that, in theory, there are ready-made configurations that should work with few or no changes for Marlin. Switching to RepRapFirmware would require experimenting and tweaking a bunch of settings. (I've shared my configuration on my Web page; but as @BrooklynBay has a pre-R1+ model, it will need a few changes from mine.) Note that I'm quite familiar with software development; I've released two open source software projects and I work for a technology company, where I write code, among other things. I'm not scared of IDEs, C++ source files, or configuring USB ports. Even so, I dislike Marlin. Somebody with less expertise in these areas than I will have an even harder time with a real deep dive into Marlin.
     
  7. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,629
    Likes Received:
    7,312
    Yea, the best way to get the 8-bit stuff is via the all-in-one kits.
    Those I have had good luck with in terms of working bits.
    The standalone boards... Nope.


    I also poke code for a living :) Been with Oracle for a really long time (I started in '94)
    I also work a number of open sauce projects* and was working with Marlin for a while, but they are (or were) too disorganized so ... I faded on them. Decent software and Scott Lahteine does try to herd the cats, but the disorganization shows.


    *most of that you can find on SourceForge or GitHub if you are interested.
     
    #67 mark tomlinson, Jan 9, 2021
    Last edited: Jan 9, 2021
  8. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    424
    Likes Received:
    49
    The all in one board should be a 32 bit system. The two clone boards, and the orginal board are 8 bit systems. The defective board has a CH341 I believe but showed up as a CH340 until windows stopped detecting it. It only shows an error message saying that a USB device has failed to function. The other 3 boards work, the machine doesn't function correctly. I think that it has to do with the RAMPS 1.6+. My previous RAMPS 1.6 worked better than the 1.4 which came with the machine. That board always had broken solder joints developing by the bed connector. The Amazon special is my 5th attempt to get this working. It should arrive at the end of the week. If this doesn't work then does anybody have a working Arduino/Ramps already configured, and ready to swap in? Robo once sold them on their website. Maybe another parts website might have some left over. I saw a nice CR-10 large format 500MM machine on Amazon but it's around $749 so it's not cheap.
     
  9. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,629
    Likes Received:
    7,312
  10. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,629
    Likes Received:
    7,312
  11. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    424
    Likes Received:
    49
    The second link is what I bought from Micro Center for $39 last week.
     
  12. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    424
    Likes Received:
    49
    Is it possible to access the files on the Arduino through Windows without using the Arduino IDE? Matter Control is able to read the step file from configuration.h when you click EEPROM. When Matter Control displays custom g-code, is that stored in a printer configuration file along with custom printing profiles?
     
  13. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,629
    Likes Received:
    7,312
    No. There are no "files" on the Arduino per se. The firmware source code is compiled into a binary image (unreadable by people) and loaded over. Even the items stored in the EEPROM are just data. I can't speak at all for what MatterControl is doing (I never use it) and if you want specifics on it you need to go over here:

    https://forums.matterhackers.com/category/20/mattercontrol

    That is where MatterHackers supports the slicer and they should be able to answer any specifics.

    I can see how MatterControl can recreate some of the configuration.h data since a fair bit of it is stored as values in the EEPROM (things like Max Temp, thermistor types, steps per axis, etc) , but not all of it is (this is because some of what is in the CONFIGURATION.H are compiler directive variables and they control how other parts of the source code are compiled so there is nothing about them to store in the EEPROM). For example if the #define PIDTEMP is not there and is perhaps commented out (//#define PIDTEMP) then none of the code related to PID control is actually compiled.
     
    #73 mark tomlinson, Jan 10, 2021
    Last edited: Jan 10, 2021
  14. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,629
    Likes Received:
    7,312
  15. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    424
    Likes Received:
    49
    The $20 Amazon kit came today. I swapped the RAMPS from that kit onto the Arduino in my machine which already has the firmware installed. The X,Y, and Z axis steps seem to function correctly. They were making large, abrupt steps with singing steppers when I had the other RAMPS installed. The limit switches also seem to be functioning correctly when I click the all movements function to center & align everything.

    The last & only thing which is not working is the feeder stepper motor (E0). It was humming & vibrating with the other RAMPS, but with this one it does nothing. I tried another cable which is wired differently (the colored wiring is in a different order), and it hums with a small rocking motion but never makes a rotation. This shows that there's power going to the servo but it's not wired correctly. I don't know why the pin out would be different with this RAMPS than with the previous working RAMPS but it needs to be rewired or possibly the firmware needs editing.

    Just as a test, I unplugged the X servo, and connected it to the feeder. It hummed & rocked but never turned a revolution. I tried a spare servo with a different pin out cable, and it did the same thing. I wanted to test the output from the RAMPS E0, so I plugged it into the X servo, and it worked so I know that the new RAMPS definitely works correctly.

    My spare servo, and the feeder servo were known good servos before I had the issue with the Arduino & RAMPS burned out so this part is a mystery. It's hard to believe that everything else as far as a Arduino, RAMPS, wiring, and firmware are working but it can't extrude filament. The E0 stepper driver is working because it was able to move the X stepper from the previous test. Maybe I'll try swapping stepper drivers next.
     
  16. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,629
    Likes Received:
    7,312
    Make sure you had the extruder up to temperature before trying to get the extruder stepper to run.
    Marlin will not let it run cold.

    Also make sure your stepper motor wires are landed correctly. If one pair is reversed it will only twitch -- not run.
     
  17. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    424
    Likes Received:
    49
    I swapped the E0 driver into the Z axis slot on the RAMPS, and both servos wouldn't move. I didn't adjust the set screw to allow more current. It was left on the original setting. When I tried the driver on the X axis, it only had a little power to move the X axis in one direction but not in the other direction. The first driver worked perfectly in both X & Z axis. I know that these A4988 chips are cheap, but they are usually adjusted correctly from the factory. I have a 5 pack of extra ones, and they seem to work correctly.

    Getting back to the non functioning E0 servos. I had the extruder set at 235 C before extruding so I know that it didn't have a cold extrusion. No errors were displayed. All of the pins on the cables were inserted correctly, and made contact. I could change the pin configuration on a spare cable to match what I have now, then test it. The cable in the machine is a new cable. It was only used for about a week before the machine burned out. The original issue with the machine before it burned out might have been a defective stepper driver. It would print fine for an hour until it stopped extruding. I'll be lucky if I could get it to extrude at all the way things are going now.
     
  18. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    424
    Likes Received:
    49
    Success! I didn't do a test print, but it looks like the extruder servo is working correctly. I reconfigured another cable to match the color code on the servo & board ends, and swapped a different A4988 driver into it. The issue was with both parts. Adjusting the set screw on that chip didn't make a difference. It had a weak output when I installed it with declining power until it finally failed. The one week old cable probably got damaged when the machine burned out. The short originally started from the E0 stepper, so I guess that I'm fortunate that it only damaged the cable, and not the actual stepper servo. The cable has fine wiring.

    On a side note, the Amazon parts kit appears to look like somebody opened it previously, but it's hard to say if it got used or not. Amazon should have stated that it was a return instead of advertising it as new. Maybe this is why it was so cheap. There was no anti static bag around the board, the box wasn't sealed, the Arduino, RAMPS, and 5 stepper drivers were already assembled but the jumpers weren't installed. This might be the reason why the previous person returned it. They didn't get it to work without the jumpers, but this is only speculation. It might be the reason why one driver wasn't working. They might have damaged it in some way. I didn't try to attach the LCD which came with it or test the Arduino yet. I hope that those parts are good. I guess it's still a good deal for $20 even if some things don't work.
     
  19. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    424
    Likes Received:
    49
    I did a test print. The part came out rough for several reasons. I have an issue with the hobbed gear. The replacement gear is a slightly smaller diameter, and doesn't apply the correct amount of force against the filament. I think that my filament has moisture. I heard popping noises while it was printing. My power supply might have gotten damaged when I had that short. It took longer than usual to get it to go to the correct temperature. I could crank it up to a higher temperature but the hot end fan was preventing it. The temperature suddenly shot up when I stopped the hot end fan. This issue was similar to what I had before I replaced the power supply a couple of years ago. The internal set screw is already on maximum. I didn't test it with my voltmeter but I suspect that the voltage is low. It will take time, and a lot of parts to get it back to working order. Thanks for all of your help.
     
  20. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    424
    Likes Received:
    49
    I was looking at different listings for hobbed drive gears. The tooth spline count varies as well as the diameter. Some people mentioned that they had to adjust their E0 step rate when they bought a slightly different drive gear while other people said that they had the same results without adjusting any steps. What is your opinion? I'm using a Flexion extruder, and the step rate is 83.19.
     

Share This Page