Simple fix when upload fails.

  • Hi guys, just got mine in today and it kept resetting while trying to program. Started at the forums and found this post.
    As a R&D engineer let me first just say the guys at m5Stack know what they are doing on the hardware side. It's an exceptions build, But looking at the schematic, i am kinda shocked they dont have a cap on the reset line.

    I tried 3 values and all worked. 0.1uf, 2.2uf & 10uf. Would not go higher than 10uf though.

    I stuck a 0.1uf cap on the reset pin to gnd, and mine works just fine now, Typically in this circuit anything =<10uf should work just fine.
    In the photo I put a 0805 cap, there. It would be best to stick a 0603 there but I didn't have any.
    You can get these locally at mouser or digikey.
    0.1uf cap at Mouser

    For those of you who dont have solder skills like this you can use a through hole cap like this one externally on the box from "RST" to "G". polarity does not matter for this ceramic cap.
    0.1uf Through Hole Cap


  • I just wanted to say that a 10 uf cap worked great for me!

  • A 100nF SMD capacitor soldered between EN (the collector of VT2) and the shield of the ESP32 module did the job for me.

    100nF between EN collector and GND

  • As a heads up - I was having the same bang your head against the wall problem as Stanszal trying to get the "temporary" capacitor fix to work. Turns out that in addition to the capacitor being needed, there may be issues with the header connections on some of the boards. None of the GND\RESET connections worked with the capacitor thru the bottom plate. Pulled the bottom plate and plugged the cap right into the MBus header GND\RST on the system board and it's worked every time - plan is to solder the CAP patch once I get a small one.

    So - besides the capacitor issue (I really hope the fabricator reads this stuff and comes up with a fix), you all need to be aware as to why soldered boards are much preferred over solderless breadboards and header stacks. Less likely to have poor connections via solder. I love the compactness and modularity of the M5Stack (part of why I picked one up to play with) but this just underscores that you need to be wary of the header pin connections on the modules. The short pins and sockets and tight tolerances to make this what it is looks prone to connection problems.

  • Messed around with the M5Stack again a bit this morning. One thing that seemed to help the pin connections between the bottom plate and MBus socket was to work across the plastic pin guides and press it down closer to the base plate board. I'd done a few more sketches to upload with the capacitor plugged into the MBus socket. When I put things back together, I couldn't get it to power on with the base plate so I tried pressing the header pin plastic spacer down to make sure I had better contact into the MBus socket. This fixed the battery power problem AND has (at least short term) allowed me to use the external temporary capacitor via the baseplate sockets and pins. Suspect it explains Stanszal's similar problem and why some other have reported the external capacitor approach not working after a while. I am going to have to keep in mind that the M5Bus header and mating pins have a very finite insertion life and to try and be sure I seat things well if I use proto-, battery-, etc., expansion boards.

  • @kentinker Installing two M3 screws of the proper length in the baseplate my help tightening it down.

    It is a pity a set of these M3 screws is not included by default.

  • ++

  • @jimit Over here in Europe, metric M3 screws are pretty easy to come by. However, I can imagine this to be more difficult in the US.

    Since, I have the optional 850mA battery module installed, it requires slightly longer screws. From what I recall, 20mm length was just not long enough. Hence, I think 25mm length is what I need. I still need to make the trip to the hardware store, though.

  • ++

  • @on4aa Yes, that crossed my mind as well. My main point in posting was because it seemed that the bottom plate pins being seated in the MBus socket was causing some of the issues others noted. The quick fix pressing the plastic pin separator down (all the way across the 2x15 set) toward the bottom PCB gave better pin to socket engagement and cleared the problem. As it was received, the available pin length to seat into the MBus header was just a tad short.

  • ++

  • @on4aa Also... took a look back at the board. The screws may help a bit but not sure it would really address things. The two screws are not located such that they will provide clamping force to seat the sub-boards fully into the MBus header. Only one is present near the GND pin for the header.

  • ++

  • @jimit I think it has. I've had no issues since giving the base board just a bit more pin length to mate with the MBus header.

  • ++

  • @JimiT
    I also tried various Capacitors with no effect. At least two methods were helpfull:
    (1) use a short USB(A) - USB(C) cable (10 cm)
    (2) remove the bottom plate while uploading (afterwards it runs with an 1m cable @921600 baud).

  • This post is deleted!

  • @jimit Hi Jimit,
    I forgot to tell, that I am using the new 2018 model (with 9DOF-Sensor and USB-C). I have no Chance to press the Reset-Button in time , because there are only a few dots when "Connecting ..."at the beginning of upload. Also pressing the Reset-Button (before connecting) during the upload has no success.
    But the Problem is not the start of the upload. Sometimes the upload continues up to 30 percent or 50 percent. Then there is a "timeout for waiting fot packet header".

    But the upload is always ok, when I ...
    (1) use a short USB-cable (I tried various 1m long cables at various USB ports (2.0 and 3.0), but no one performs)
    (2) remove the Bottom-Plate (then a 1m cable is ok).

    BTW Is there an example Code for the 9DOF-Sensor (new in 2018 model)?
    BTW The "gift" wasn't in my development kit (does'nt matter, I have enough of them).

  • ++

  • Interesting information. I only have the one device here so can't say if the "fixes" that have worked are universal. I just put together an image to help illustrate what I was talking about on the header pins for another post.

    0_1521820543767_M5Stack MBus Header Connections.png

    I will reiterate that the noted plastic spacer on the bottom board, proto board, and 850mAh battery expansion I have were not fully seated. This resulted in slightly male pins (0.5 mmm give or take) and intermittent connections with the female headers in the MBus stack. The plastic spacer being up also acted as a stop preventing full engagement with the female sockets in the header and resulted in programming problems, use of the capacitor on the RST\GND thru the base plate, and power feed problems to the Core from the base and battery packs. While I haven't used them, I suspect I'd have had intermittent issues with all other pin functions thru the header stack without my little tune up :)

    Again, may not be a universal thing since I only have one system but I'd highly suggest anyone using the system take a few moments to seat the space shown on the assorted board. My suspicion is that part of RMR's issues sound related to the pin engagement and is why it works when the base (or other boards) are pulled off.