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:
    452
    Likes Received:
    50
    I saw a few threads about similar issues but the solutions didn't work for me so I'm starting a new thread. My RAMPS board blew out my Arduino Mega 2560 in my Robo R1 (not the plus version). I purchased an MKS all in one board, and was able to get it to connect to Matter Control briefly but it stopped connecting before it was set up. The next step was to revert back to the Arduino/RAMPS set up. I was able to install the Arduino driver with Windows 7 showing that it was correctly installed (no Windows errors detected). Arduino 1.8.13 doesn't show that it's linked even though I set the USB com port to 5 which is what is shown in Windows 7. Matter Control also doesn't show that it's connected, and keeps hanging while saying that it's connecting. Cura is doing the same thing. It's not a problem with my computer because I have a Monoprice mini delta which connects, and works with Matter Control. Here's what I've done so far:

    1. Installed the Arduino software with a device driver.
    2. Swapped USB ports & cables.
    3. Set the correct port in the printer's settings, and in the print profile.
    4. Set the software to use the original Robo profile which came with it, and my custom profiles with various filaments.
    5. Tested the computer & software with another printer (Monoprice mini delta) , and confirmed that it's not a hardware issue since that machine works.
    6. Tried different baud rates.

    The only thing that I could think of is that the MKS board, and the Arduino boards are defective even though Windows recognizes. I can't install Robo firmware since it won't connect. What else should I check?
     
    #1 BrooklynBay, Jan 1, 2021
    Last edited: Jan 1, 2021
  2. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    452
    Likes Received:
    50
    I forgot to mention that this is a $10 Chinese Arduino board. The original board came from Italy. What is different with the newer version other than the location of the reset button which is hidden by the RAMPS board? The new one cost around $35, and appears to be similar in appearance.
     
  3. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    The Chinese clone boards are a lot cheaper but generally they work. The quality of construction is less on the China-made boards (and they are not QC tested) but generally if they work then they work fine and last well. The Italian boards are actual brand-name Arduinos and will 99.99% of the time work right away :) But you paid for that.

    I would start by connecting just the Arduino board to the computer -- leave the RAMPS shield off. If the board gets assigned a COM port then see if you can load something like the BLINK Arduino example to the board and have it work.

    If that works then add the RAMPS shield back on and try the firmware.


    P.S. I use a lot of the Chinese boards myself and because they are so cheap I keep spares around. If one misbehaves I pitch it in the bin and use another.
     
  4. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    If the board does NOT get assigned an IP address when connected then unless you didn't install the driver (and you did) then the board is defective.
     
  5. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    452
    Likes Received:
    50
    I installed the Arduino without the shield first to see if it will get detected. Windows shows that a driver was successfully installed but the Arduino & Matter Control software don't connect. It does assign a usb port so it shows that Windows is communicating with it. I did try running the blink test earlier but there was no communication, and I received an error message. It seems like some function work while others don't. So what's the difference between the regular $10 version, and the $35 r3? Micro Center sells both under the Inland brand.
     
    #5 BrooklynBay, Jan 1, 2021
    Last edited: Jan 1, 2021
  6. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    The only differences are the quality of the components. The Broadcom chips they use (like the BCM43362) are one of the points where the clones will save money. They use stepped down clock speeds or second run parts (that don't pas QA for other boards) and the support components (like power supply/voltage regulators/etc) are not good quality components. The 5v regulator used on the clone boards is a common failure point as are problems with the drivers not working on the serial communications chips. Some even require different drivers than what the Arduino group provides. If you absolutely want a working board -- get the more expensive one. If you are willing to sort through some failures, get the cheaper ones.
     
  7. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    As I mentioned I go through a fair amount of them (not just for printers, other embedded projects take up most of my work) and I am often willing to take a chance on the clone boards, but when I don't want to fiddle with it -- I get a genuine Arduino board :)
     
  8. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    452
    Likes Received:
    50
    I wanted to test this board with 2 other machines. In Windows, it shows an yellow exclamation point with a USB 2.0 next to it which means that there's no device driver installed. After installing Arduino 1.8.13 on both machines, it didn't show that the driver was installed for the board.

    Back to my original computer. Windows shows USB-Serial-CH340 under the device driver for that board. If I swap USB ports, it sometimes shows CH340 with a new port number, then other times it doesn't recognize it, and shows USB 2.0 with the yellow exclamation point. It should recognize the board each time but it only does it randomly. Is CH340 the correct driver to show up or should it say something else?
     
  9. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    Look here: https://sparks.gogo.co.nz/ch340.html

    for the
    1. Download the Windows CH340 Driver
    then do that and install it.

    See if that helps. If not then the Chinese board is likely defective.

    As I mentioned, one reason the cheaper boards are cheaper are ... the components :)

    In all fairness though, most of them do work.
     
  10. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    One last thing is to make sure you are using a NEW USB cable.
    That is so often the problem it is not even funny...
     
  11. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

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

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    452
    Likes Received:
    50
    Thanks for the device driver. It seemed to work to show the CH340 driver in Windows on a couple of machines but the board still won't work so I'm going to assume that the board is defective. I did try a couple of USB cables which are known to be good.
     
    mark tomlinson likes this.
  13. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    452
    Likes Received:
    50
    Here's an update. I purchased the $10 & $39 boards at Micro Center. The $10 board shows up as Arduino Mega 2560 in Windows so it might use the original chip set like the more expensive boards.

    I loaded the Arduino program onto a netbook to test at the store. The program appears to link correctly, and accept code compiling & uploading but shows errors trying to burn it to the eeprom. Matter Control still won't connect to it but recognizes the usb com number just like my previous boards. The Arduino program couldn't work with my previous boards. I didn't try the more expensive board at the store but I want to try both boards on the desktop computer.
     
  14. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    If you can load the firmware with the Arduino IDE then do that. There is no real advantage to having MatterControl load the hex file.
    However MatterControl not being able to connect is the larger issue. You may need to completely rip-out-and-re-install MatterControl. There is a page describing a clean install:

    http://wiki.mattercontrol.com/Clean_Install_MatterControl

    Worth trying that.
     
  15. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    452
    Likes Received:
    50
    When I tested it on the netbook in the store, I was able to load but not save the firmware to the eeprom. I kept getting error messages. On the desktop, I uninstalled then reinstalled Matter Control when I was testing the first two defective boards last week. Those boards were tested with Matter Control on 2 desktops & 1 netbook.
     
  16. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    Well, I will need to know exactly what you mean by:

    What exactly were you doing in the Arduino UI and exactly what error messages you were getting? That will help me sort it out.

    There is a difference in the flash EPROM (EEPROM) and the main memory in the Arduino board where programs are stored. They are not the same thing.
     
  17. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    452
    Likes Received:
    50
    I was trying to load Robo firmware then I received an error in configure about Marlin. I went to config adv and received a similar message saying that Marlin wasn't there. When I tried to upload I saw something about 662 kb of memory but 0 kb or 0%. Under the burn booter last category it also showed a similar error. I would have to try it again to get specific details. I couldn't get this far with the first two defective boards. Everything was highlighted and commenting was locked out. At least with this board I could access code instead of just viewing it.
     
  18. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    You can't burn the bootloader on the Arduino without special adapters. Do not try.
    All you want to do with the Arduino is to load the firmware into the program space. There are instructions here:

    https://help.robo3d.com/hc/en-us/articles/115000717071-Updating-firmware-with-Arduino

    When you are done compiling there will be very little free space in the program area, but that is fine.

    I will need specific steps and errors to add much value. Often you will get a large set of warnings, but that is not an error. Also check the FAQ on the section about uploading the firmware (fairly detailed steps are listed in the FAQ) to be sure you are not running into this (easy to fix) error: "exit status 1using typedef-name 'fpos_t' after 'struct'"

    http://community.robo3d.com/index.php?threads/faq-r1-r1-series-printers.19735/#post-119335
     
  19. mark tomlinson

    mark tomlinson ༼ つ ◕_ ◕ ༽つ
    Staff Member

    Joined:
    Feb 21, 2013
    Messages:
    23,912
    Likes Received:
    7,338
    For completeness I will link the instructions for burning the Arduino bootloader BUT ... you should NEVER need to do this as it comes loaded from the factory. Reloading the program the arduino is running (in your case the Marlin code) does not affect the bootloader in any way. There are times where an otherwise unresponsive Arduino can be fixed by doing this, but given the cost of cheap Arduinos... I never bother. I buy a new one. I have an AVR-ISP (I use it for non-Arduino boards that we work on) and I did this once just to see how it worked. Not doing it again...

    https://www.arduino.cc/en/hacking/bootloader
     
  20. BrooklynBay

    BrooklynBay Active Member

    Joined:
    Apr 7, 2018
    Messages:
    452
    Likes Received:
    50
    I connected to the Arduino to two different desktops running different versions of Windows & Matter Control but it still won't connect. I followed the instructions loading the firmware into the sketch folder, compiling then uploading. Matter Control still won't connect to them but they show that they are connected to com 11. Windows shows Mega 2560 on com 11. This is very strange since both of these machines were able to connect to the printer without an issue with the original board. I didn't try using the more expensive board yet, but I bought one yesterday when I bought the cheaper board. If the more expensive board won't work then are there anymore options?
     

Share This Page