How To Retrofit A Pick And Place Machine For OpenPnP, In Detail

[Erich Styger] owns a Charmhigh CHM-T36VA pick and place machine, which he describes as well-built and a great value of hardware for the money. However, the software end is less impressive, with a proprietary controller that is functional but not great. The good news is that it is possible to retrofit the machine to use the OpenPnP framework, which is open-source and offers more features. Even better, [Erich] has already done and documented all the hard parts!

The CHM-T36VA has two heads, vision system, and uses drag feeders.

The conversion requires upgrading a few hardware parts such as the cameras, replacing the controller’s firmware, then installing and configuring OpenPnP (which runs on an attached PC.)

[Erich] does not recommend this conversion for anyone who is not very familiar with electronics, or has any worries about voiding warranties. Barring that, he suspects the conversion could be done in about a day or two’s worth of focused work. It took him two weeks, including time spent fine-tuning the first production job. He says the bulk of the time was spent on configuration, but he has shared his configuration on GitHub in the hopes that it will save a lot of time for anyone using the same hardware.

After populating some 300 boards and placing over 7000 parts, he’s very happy with the results. The machine places between 600 and 700 parts per hour, so speed might not be amazing but it’s perfectly serviceable. [Erich] finds that while the machine runs a little slower than it did with the original controller, it also runs much smoother and quieter overall. In return he gets what he truly wanted: a pick and place machine whose operation and configuration is entirely open and accessible. You can see it in action in the video, embedded below.

Putting affordable pick and place machines into the hands of hackers and home shops is a huge step towards enabling people to reliably and effectively assemble more than just a handful of boards at a time. There have been some wonderful steps towards that recently, such as these re-imagined component feeders and efforts at making low-cost open source pick and place machines a reality.

8 thoughts on “How To Retrofit A Pick And Place Machine For OpenPnP, In Detail

    1. That’s very strange. I bought a CHMT560P4 to build the Neon816, and I’ve had great luck with it.

      I run the pressure a little light (maybe 60psi) and the machine sits a big heavy table that wobbles a little bit during operation. I’m not sure I’ve ever seen the components flip in the tape, except for one non-compliant vendor supplied tape where the components were rotating in place while fully covered. My miss-pick rate is so low that I don’t even bother to calibrate each individual feeder unless it causes problems, and calibrating solves the issue when it comes up.

      Some feeders are a little bit loose, but it’s never caused a problem. I’ve had to adjust one or two of the feeders when they get sticky, but that’s really a feeder issue moreso than a machine issue. I did have to calibrate the cameras when I got the machine, but I see that kind of calibration as a standard part of shipping a machine from the other side of the world.

      Also if anything, I’ve found tech support really patient with my stupid questions.

    2. Different machine (and you’re voiding the warranty anyway).

      The CHMT36VA used here is a simple machine and doesn’t use complicated feeders which is the main problem Seon was having.

  1. I have the same machine used here. I bought it just over two years ago because I needed a PNP machine for production, and everyone I knew who had one in the same $10K-$15K ballpark had serious problems with the feeders and/or software.

    I got the (much, much cheaper) CHMT36VA as a learner/testbed with the idea that if it was complete crap it could be converted over to OpenPNP/salvaged for parts. It was at that time the only vision PNP machine with videos on YouTube of people using it on production PCBs.

    However, the machine works great. In just over two years I’ve done many thousands of PCBs. The past year I don’t think I’ve had a single mis-pick or mis-place that wasn’t my fault. The clutch-based feeders haven’t needed adjusting at all (though the first few months sucked as they were being dialed-in.) I even 3D printed another 30 strip feeders so now can do almost all of our PCBs without having to manually place parts.

    That said, the stock software — though functional — is terrible and I would convert this over to OpenPNP in a second except for one issue: Speed. Compare how fast stock speed is: https://www.youtube.com/watch?v=u7ehlxtF4N4 I don’t think this is even running at 100%. Without vision it runs even faster. Some of my boards currently take close to 10 minutes — on OpenPNP they would take an hour.

    If this machine could run OpenPNP at the same speed as stock with the same accuracy it would be a no brainer.

    I think the speed discrepancy is due to the stock machine using closed-loop steppers which OpenPNP can’t currently handle. Anyone know?

    1. I wrote the smoothieware port that is linked in the article.

      A large part of the speed discrepancy is going to be the default settings I settled on when I was testing the firmware. I never actually ran the machine with the stock firmware, so I had no baseline and just left it with feed rates and acceleration that were good enough for me. Tweaking the firmware settings would bring the seek speed closer to factory performance.

      I don’t think we know if the default firmware is doing only step loss detection or actual closed loop control. The smoothie port doesn’t use the feedback at all.

      As far as motion precision, the default controller firmware generated 50% duty cycle step waveforms. Smoothie generates pulses instead, which is more common with on pcb stepper drivers. It is possible the stepper drivers in this machine are double edge sensitive, meaning we may have lost 1-bit of microstepping (or not).

      In my machine I replaced the analog cameras with HD USB models. I suspect this improved accuracy over the baseline, regardless of the possibly lost microstep.

      There may be a discrepancy in job planning efficiency between openpnp and factory, but I would be surprised if it is a major factor. It isn’t exactly a high end industrial machine.

      With openpnp you could switch to a high fps and/or global shutter camera if you wanted to.

      I would expect with optimization effort smoothie+openpnp would perform similarly to the baseline.

      CharmHigh kind of crushed our momentum by suggesting they would help to get the default firmware working directly with OpenPnP. Switching to smoothie still requires a permanent reflash or a chip rework/swap.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.