OpenPnP Is Now Accepting Donations!

1,775 views
Skip to first unread message

Jason von Nieda

unread,
Jul 22, 2018, 4:35:37 PM7/22/18
to ope...@googlegroups.com
Hi all,

Over the years several people have asked how they can donate to help with the development of OpenPnP, and I never had a good answer for them. I'm happy to say that today I have an answer!

I am raising money to buy a CharmHigh CHMT36VA pick and place machine. I intend to develop a complete OpenPnP driver for this machine, and then use the machine to help me improve OpenPnP's speed, workflow and capabilities.

I've created a GoFundMe campaign at https://www.gofundme.com/help-openpnp-grow to raise a little more than half the funds. The rest I will pay for myself to show I'm serious :)

If you've always wondered how you can help, now is your chance! If you can throw a few dollars at the campaign that will be a big help! And even if you can't, rest assured that everything I learn, change, improve and release will be Open Source and available to everyone!

If you are curious why I'm buying and converting a commercial machine instead of building one myself, the simple reason is that I want to make OpenPnP good enough to be used on commercial machines. I feel that the Open Source nature of OpenPnP already makes it powerful, but I want to see where it's deficiencies are when faced with a fully capable production machine. 

My hope is still to someday take all I've learned and produce an inexpensive machine geared towards hobbyists, but I feel there is more I need to learn about the current affordable desktop pick and place machines on the market.

Thanks for reading, and thanks for donating!

Thanks,
Jason

alexander...@gmail.com

unread,
Jul 22, 2018, 4:48:05 PM7/22/18
to OpenPnP

Hi Jason.

Great idea... I would be very interested to learn why you selected the CharmHigh CHMT36VA in terms of whether you saw characteristics of this machine that were better than other machines you considered or were better for a potential OpenPNP driver?

Thanks.

Alex

TheCunningFellow

unread,
Jul 22, 2018, 5:23:20 PM7/22/18
to OpenPnP
Good luck.

If 40 of us just throw in $50 you'll be there in no time :)

Of course some of the guys that use their OpenPNP machines commercially and brag about how many 100's or 1000's of boards they make might put in more than $50 :)

evilwulfie

unread,
Jul 22, 2018, 5:26:22 PM7/22/18
to ope...@googlegroups.com



3500$
NOT TOO BAD. i HAVE THE SAME QUESTION
--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/f180c882-fc2d-429e-ae66-d084293cd6b4%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Jason von Nieda

unread,
Jul 22, 2018, 5:27:00 PM7/22/18
to ope...@googlegroups.com
Hi Alex,

Thanks!

I chose the CHMT36VA for a couple reasons:

1. Very similar in features to what people are generally using with OpenPnP. 2 nozzles, 2 cameras, drag feeders, vacuum sensors, tape peelers.
2. Good reviews on the machine and it seems to pretty much work. I wanted a good baseline to compare OpenPnP against.
3. Closed loop motion, which will help me focus on the software and not messing with inaccurate hardware.
4. Relatively affordable at about $3500 shipped. I was willing to spend about $4000 max to make this happen, and the GoFundMe is a way to make that hurt a little less.
5. And last, but not least, SparkFun bought one back in November and they seem to like it. I have a ton of respect for SparkFun and if they think it's good I feel like it's probably good.

So it seemed like a good balance of functionality and price, and with SparkFun's recommendation I felt secure it would actually show up, and function :)

I researched quite a few machines in the price range. The choice really came down to the CHMT36VA or TVM802A and I felt that SparkFun buying the CharmHigh tipped the scales. Here are my rough notes from my research:

SparkFun's choice. They probably researched it a bit.
$2800 + $640 DHL = $3440
Juki nozzles
29 drag feeders

Clone of Qihe TVM802A
26 feeders
dual vision
$3260 shipped

Clone of Qihe TVM802B
Same as above, but with 46 feeders
$4190 shipped

They say same as above, but includes the PC built in.
But also description says "Closed-loop Servo Stepper Motor (Flexible S deceleration, 80V high voltage drive and S curve acceleration control )"
The description on Qihe's site says the same, but doesn't for the two machines above, so maybe the X gets you faster motors.
A $3590 shipped
B $4590 shipped

No cameras
25 feeders
$2000 before shipping

CHMT36 is no vision, with touch screen. Looks like a clone of the TM-240
29 drag feeders
$2200 before shipping

CHMT36VA is the Sparkfun machine
Same as above with vision, no touch screen, PC required
$2980 before shipping
Probably better to buy direct from CharmHigh tho

48 feeder with vision
$4100


56 feeder with vision
$4550

Looks like the TVM920 base
Embedded Linux
Uses Yamaha CL feeders but doesn't include any
T528P 2 nozzles, 28 feeders $3998 before shipping
T530P4 4 nozzles, 30 feeders $4998 before shipping
not a lot of details, but clearly dual vision

Thanks,
Jason



Marek T.

unread,
Jul 22, 2018, 5:38:27 PM7/22/18
to OpenPnP
Would be more interresting about the Openpnp development if you buy the machine with bottom multi-cameras system for simultaneous allignment (like two camears for two nozzles) and with some belt conveyor.

Jason von Nieda

unread,
Jul 22, 2018, 5:42:55 PM7/22/18
to ope...@googlegroups.com
Hi Marek,

Sure, those features would be awesome, but I have to start somewhere. Multiple bottom cameras and conveyer are much more expensive, in a commercial machine. 

I do want to do work on multiple bottom cameras eventually, or maybe imaging multiple nozzles at the same time with one camera, but those are advanced features that don't affect most OpenPnP users. 

My goal here is to get the most bang for the buck for the majority of users :)

I do think this project will be of benefit to lots of people running production jobs, though, since one of my goals is to improve the speed and processing time of OpenPnP.

Thanks,
Jason


Marek T.

unread,
Jul 22, 2018, 6:05:36 PM7/22/18
to OpenPnP
Hi Jason,

Hmmm, you say "(...) then use the machine to help me improve OpenPnP's speed (...)"..
Vision allignment is a factor dramaticaly lowering the speed of pick&place. So using multiple camera would speed it up like not many other things else.

Borey which is real Chinese manufacturer from Beijing not virtual maker (still didn't discover who in real is Charmhigh), produces not specially expensive machines with multi cameras system. Don't remeber now how much over $3600 it is.
They even for two nozzles system (however their minimal configuration is probably 4) uses two cameras at front row of the feeders and another two cameras at rear row, of course to limit volume of Y moves and increase the speed..

Conveyor you are absolutely right increases the price really visible (and cost of shipment at occasion). And not used so often by people from here probably.

Machine which you want to buy - I don't feel it may give more opportunities to development than the one which you probably have. But OK for sure you know better :-).
Just this Charmhigh is nothing specialy impressing. Except that they have some CE papers for most of their machines - so it may be interresting for EU importing people.

But I absolutely agree that donations for Openpnp is good idea no matter for what you want to use that money :-) :-).

br
Marek

TheCunningFellow

unread,
Jul 23, 2018, 5:15:19 PM7/23/18
to OpenPnP
1/2 way to the goal in 24 hours.  Woo Hoo.

Maybe let it run to see if you can't get a machine with more features as others have suggested.

Jason von Nieda

unread,
Jul 23, 2018, 8:29:22 PM7/23/18
to ope...@googlegroups.com
Yes! Very impressed with how many people have jumped in, and very thankful! If tomorrow is anything like today this will be wrapped up quick :)

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

TheCunningFellow

unread,
Jul 25, 2018, 3:35:47 PM7/25/18
to OpenPnP
only $75 to go.  Probably be there by the time the other half of the world wakes up :)

Brynn Rogers

unread,
Jul 25, 2018, 4:11:02 PM7/25/18
to OpenPnP
There, I put you over (at) the top.

I was going to donate $50, but you were $65 short of the goal.    Congrats!

Brynn

Jason von Nieda

unread,
Jul 25, 2018, 6:51:02 PM7/25/18
to ope...@googlegroups.com
That did the trick, and then some!

Thank you everyone! I'll be getting in touch with CharmHigh tonight and will get the order going. Hopefully within a week or so I'll be starting to make some progress. I've got a lot of improvements planned for OpenPnP and this machine is going to speed things up immensely. 

My plan is to work on the CHMT36VA driver first, and once that is finished I'll start working on general OpenPnP improvements. First on the list will be finally finishing up the JobProcessor rewrite and bug fixes which will get us faster placement, less errors and job stops, better planning, better error recovery, and lots of other small updates. From there I'll move on to various performance improvements and then start working through the issues backlog.

It won't all happen in a day, but I expect the development pace to pick up quite a bit over the next few weeks!

Thanks again everyone!

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

evilwulfie

unread,
Jul 25, 2018, 7:05:17 PM7/25/18
to ope...@googlegroups.com
I am considering getting the CHMT48VB.  There is a review saying the lower cost machine is good and has quirks
associated with a low cost machine. The only regret they had was not enough feeders.

https://www.sparkfun.com/sparkx/blog/2586   <  review


https://www.robotdigg.com/product/1099/Benchtop-CHMT48VB-pick-and-place-machine?gclid=EAIaIQobChMI3PGZ8PG23AIVEpF-Ch3ZRAVjEAkYASABEgKb9fD_BwE       < machine

58 feeders seems like all i would ever need plus trays. Jason do you think that openpnp would port to the built in linux computer
in the upgraded machine ?

Its not that much more and i sure would hate to need more feeders for jobs and not have them.

Jason von Nieda

unread,
Jul 25, 2018, 7:48:29 PM7/25/18
to ope...@googlegroups.com
It's tough to say if it would port over. The big question is whether the controller is similar to the 36VA or if it's a whole different product. I've found that Chinese products from the same manufacturer often use completely different designs, because they are often made by completely different teams. 

I'd suggest trying to see if anyone has one and get some photos of the internals. That would give us a start. I intend to do the same with the 36VA when it arrives. 

Jason


John Plocher

unread,
Jul 28, 2018, 5:03:12 PM7/28/18
to OpenPnP
The '48VB is a big machine - unboxed it weighs at least 60lbs and is ungainly as hell, which makes trying to even find the internals hard.   They are well and truly internal to the system, and not user serviceable in any way.  There is no obvious way to get past the 1/4" milled aluminum work surface or thru the heavy gauge sheet metal case into the guts of the machine without major disassembly, which risks introducing alignment issues on reassembly. 

The difference with the 36 is that presence/absence of this internal controller and a 2nd bank of feeders.  The 36 uses an external PC/program, which makes it easy to replace the drivers; the 48 has an embedded turnkey linux system of some sort, with nothing exposed.  I don't see any reason why the underlying machine would be different (cameras, drivers, etc), so the heavy lift is getting access to the embedded system and upgrading/replacing it with something running OpenPNP

FWIW, the included CHMT system UI is usable, especially if you replace their crappy cad to P&P converter program.  The SFun example ULPs are a good starting point if you are going this route...

  -John

evilwulfie

unread,
Jul 28, 2018, 5:08:45 PM7/28/18
to ope...@googlegroups.com

Here is a picture of the board from the manufacturer.
computer board.JPG

ma...@makr.zone

unread,
Aug 13, 2018, 3:54:48 AM8/13/18
to OpenPnP
Hi Jason


The machine might send the entire job information to the machine which the machine autonomously executes. Not sure about this yet, but evidence leads to this conclusion.

When I first looked at OpenPNP I was surprised that it always waits for the machine to complete a path segment before it continues (M400). This is most apparent when you're used to jogging in Pronterface where multiple fast jogs are combined into one smooth move whereas OpenPNP rattles the machine (which can be quite brutal with a tuned machine).

As long as no vision or vacuum sensing is used there is no need for waiting every time. Most Gcode (-like) controllers can queue up many commands. Waiting for each command on the host obviously slows the machine down as the motion planner cannot optimize subsequent moves and keep feed-rates and accelerations up using junction deviation etc. There are also delays in the serial communication back and forth.

Along the same lines one can imagine a controller using vacuum (=temperature) sense / wait commands (like Smoothieware's M109 although some extensions would be required in Smoothie to capture all use cases i.e. negative-going, more timeout options etc.). Vacuum wait commands eliminate lengthy worst-case dwell times and/or polling. Progress reporting (PRINT, xxx) would have to be implemented. The host then only marks down parts as "placed" when the correct (PRINT, xxx) message comes back. Similarly it would need to be able to recover from a HALT (due to M109 timeout, signalling a pick/place failure) by going back in the placement list and restart from the first unplaced part.

So what you are seeing might just be that: a controller with some such extensions. It should be revealed when you activate bottom vision for all parts. This should generate more understandable short protocol bursts. The port could go from there.

_Mark

Marek T.

unread,
Aug 13, 2018, 4:57:18 AM8/13/18
to OpenPnP
If you use vac sensors the dwell-times can be eliminated completely replaced with its dynamic checking in loop. It's not big modification.

Jason von Nieda

unread,
Aug 13, 2018, 9:08:58 AM8/13/18
to ope...@googlegroups.com
Hi Mark,

It's not the frequency of packets that has me concerned, it's the contents. I have a description of most of the packets that are used, and it looks like they mirror job setup. Most concerning, there does not seem to be a "go to x,y" command. Instead, there are commands for setting things like where the PCB origin is, where feeder 1 is, where feeder 2 is, where the bottom camera is, etc. And there's a "Run" command.

So to me it looks like the controller basically pre-configures the entire job and machine and then just says Go. 

In any case, not fully sure yet, and not to worried about it just yet. I'm sure I can still hack something together :)

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

evilwulfie

unread,
Aug 13, 2018, 9:35:57 AM8/13/18
to ope...@googlegroups.com
Jason, Did you get your machine yet ?
My machine will arrive tomorrow
I will take some pictures for you and see if i have root access to the
linux sbc

Jason von Nieda

unread,
Aug 13, 2018, 9:58:35 AM8/13/18
to ope...@googlegroups.com
Yep, arrived on Tuesday. I’ve been posting updates at https://www.gofundme.com/help-openpnp-grow (click updates), I’ll start posting them here too.

I think your machine will probably run the same software as mine, just on the embedded tablet.

It’s C++ / Qt based and looks designed for a tablet.

Jason

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Marek T.

unread,
Aug 15, 2018, 5:55:01 AM8/15/18
to OpenPnP
Hey Jason, can you share with your impressions about this "toy" quality? Placement accuracy, real speed, C axis and nozzles holders runouts, etc.

Jason von Nieda

unread,
Aug 15, 2018, 8:08:50 PM8/15/18
to ope...@googlegroups.com
Hi Marek,

Yes, I will soon. I've already posted some information to https://github.com/openpnp/openpnp/wiki/CharmHigh-CHMT36VA but not much in the way of specs.

Right now I'm focused on trying to understand the protocol. I want to get past the hump on that so that maybe others can start to help. Once past that, I'll be happy to do a full rundown of the machine.

Jason


On Wed, Aug 15, 2018 at 4:55 AM Marek T. <marek.tw...@gmail.com> wrote:
Hey Jason, can you share with your impressions about this "toy" quality? Placement accuracy, real speed, C axis and nozzles holders runouts, etc.

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Marek T.

unread,
Aug 15, 2018, 9:04:58 PM8/15/18
to OpenPnP
I've read it now. Nice done description :-).
Specially interesting (for me):
- "The nozzle tip holder takes standard Juki style nozzles, and they are retained by 4 ball bearings and a rubber band." Typically these holders have 3 balls. Interesting how they did it and how effective it is about the runout.
- "the gantry has LED stripe light across...". How it's made and look.
Maybe in future, in some free time, you could put there some more detailed info about it and maybe some pictures... Nothing urgent of course.

Marek T.

unread,
Aug 16, 2018, 10:14:23 AM8/16/18
to OpenPnP
Hi Jason,

See some photo of my glass.
Crosshair is made with laser but still not looking like highest quality - but is usable enough.
More professional plates you can find in China as part for microscope.
glass.jpg

Brynn Rogers

unread,
Aug 16, 2018, 11:19:59 AM8/16/18
to OpenPnP
Instead of using a fancy laser to etch fat lines on the glass, why not just use an awl or glass cutter to score your lines?

Marek T.

unread,
Aug 16, 2018, 11:33:46 AM8/16/18
to OpenPnP
You are right Brynn, but:
- I had closer to the laser behind the wall than to the shop with the tools ;)
- I didn't figured what the result may reach with laser nor other tool
- had no time to wait for specialized glass for microscope from China (the required printed cross glasses were not available in my country <€150)
So I don't tell that recommend to use the laser. Just only wanted to show an idea we used...
We made what we needed to do with the glass we made - and after all forgotten to order better version :-)

Marek T.

unread,
Aug 16, 2018, 11:39:16 AM8/16/18
to OpenPnP
btw: the thickness of these lines is not very important. It also maybe the circle not the cross. Even if the lines are fat it still allow to assess if the cameras are "ofsetted" properly or not.
Still it is not matter of later placement accuracy.

W dniu czwartek, 16 sierpnia 2018 17:19:59 UTC+2 użytkownik Brynn Rogers napisał:

Mike Menci

unread,
Aug 16, 2018, 1:46:38 PM8/16/18
to OpenPnP

Marek T.

unread,
Aug 16, 2018, 7:52:33 PM8/16/18
to OpenPnP
No Mike, just this one is not optimal. It's dia is 24mm, so you can use for pick it up only the biggest tips. But it's possible to find Chineses offering smaller 10mm or even customised for quite reasonable money.

Mike Menci

unread,
Aug 17, 2018, 4:55:30 PM8/17/18
to OpenPnP
Here 
Microscope Ruler plastic and view with vision - quite good to see where you are with alignment 


Mike
Camera Microscope Calibration ruler.JPG
HeadCamera_2018-08-08_22.19.35.852.png
UP-LOOKING_2018-08-08_22.19.47.011.png

Marek T.

unread,
Aug 17, 2018, 8:12:42 PM8/17/18
to OpenPnP
Mike, my glass was not to calibrate the scaling but see how the top is "in agree" to the bottom cam.

Jason von Nieda

unread,
Aug 19, 2018, 11:47:36 PM8/19/18
to ope...@googlegroups.com
Hi folks, here's the latest update:

Protocol Progress!

It's been a week of very little progress followed by suddenly a lot!  I believe I've figured out the format of all the messages that come from the machine, and most importantly, I think I have the format of the message the machine sends to report it's position. That's an important one! :)

It's late, so I'll work on updating documentation on the Wiki over the next few days. The short version of the breakthrough, though, is that it looks like commands sent TO the machine contain a single command, while reports FROM the machine contain all parameters for a given table. With this realization, the database dumps suddenly made a lot more sense and everything has started to line up. 

Finally, it seems like there MIGHT be a message that the software sends to position the machine at a specific location. I discovered this while messing with setting part positions for a job. I've not been able to verify it yet, but if that's indeed the case then I think we'll have most of the pieces of the puzzle needed to make OpenPnP work.

So, work continues, and hopefully the pace will pick up quickly now with this breakthrough!

Thanks,
Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Jason von Nieda

unread,
Sep 2, 2018, 10:32:24 PM9/2/18
to ope...@googlegroups.com
Big news!

It's moving! With many thanks to Andreas and Robert from the Desktop PnP list, we've figured out the move command and it's working. Here's a short video showing a couple programmed moves: https://www.youtube.com/watch?v=OavdJhwXVUA

This allows us to control X and Y, but it remains to be seen if we can control C1 and C2. It seems like Z might be limited to "pick" and "place", and that's okay, since the machine puts everything at basically the same Z, but so far I haven't found  a way to control rotation. That's next on the list.

In general, the protocol is now about 99% understood, and I'm able to encode or decode any message. There are still two bytes per packet that I haven't figured out, but it's easy enough to derive what the machine expects based on traces, so it's not much of a blocker.

Code is now being posted to https://github.com/openpnp/openpnp/tree/feature/chmt36va/src/main/java/org/openpnp/machine/chmt36va, so if you are interested in jumping into the work, have a look!

Work this next week will mostly consist of integrating the code above into OpenPnP so we can make our first moves directly from OpenPnP. Hopefully I'll also find a way to control C1 and C2, too, and then we'll be on our way!

Thanks,
Jason

jltthierry

unread,
Sep 3, 2018, 1:24:59 AM9/3/18
to OpenPnP
Hi Jason,
I will follow this subject with interest, I also ordered this machine.

evilwulfie

unread,
Sep 3, 2018, 9:39:20 AM9/3/18
to ope...@googlegroups.com
I have its big brother, I have not been able to use it yet, Way too many other things going on.
but i am sure that Jason will have open pnp running on his in no time.
then i can open mine up and see if i can get root on the linux board.
then the fun begins.

Mikael Bohman

unread,
Sep 4, 2018, 4:15:41 AM9/4/18
to OpenPnP
What belt is the machine using? How big is the backlash? How high is the internal dampening? 
(A problem with my steel reinforces belt is that the belt tends to become a "string instrument" with a large surface area that emits sound effectively) 

Marek T.

unread,
Sep 4, 2018, 4:23:48 AM9/4/18
to OpenPnP
Mikael, maybe try to use fiberglass reinforced (in my Japanese machine it's used).

Marius Liebenberg

unread,
Sep 4, 2018, 7:18:30 AM9/4/18
to OpenPnP
I fitted a dampening block on my belts to stop the vibration. It's just a piece of Teflon or similar plastic that barely touches the belt at the point where the vibration is most noticeable.

Jason von Nieda

unread,
Sep 9, 2018, 10:55:31 PM9/9/18
to ope...@googlegroups.com
The Bad News Update: Things seemed to be going well, but I've hit a showstopper that I haven't been able to get past yet. In short, I can't figure out a way to turn the nozzles to a specific angle. This is critical for OpenPnP and it seems to be missing from the command set.

The machine is semi-automatic. In normal usage, the OEM software downloads the job to the machine and then tells the machine to go.  After that, the machine only really needs the software to handle computer vision operations. Everything else is handled internally.

There are lots of commands for testing various functions, including one that turns the nozzles, but it just turns them 90 degrees and back as a test - you can't set the angle.

I've been working through various commands and undocumented fields trying to find one that will let me set the nozzle angle but so far I've had no luck. There are a couple other people working in this too, and also no luck there.

So, I've been considering three main options:
1. Replace the main controller with something like a Smoothie: This is probably the easiest option but right off the bat we lose closed loop control. We could probably add it back.

2. Write or port new firmware to the existing controller board: This would probably be a fairly significant effort but the benefit is that people could still use the machine without buying new hardware and doing a bunch of wiring. It remains to be seen if we can restore the OEM firmware.

3. Sell the machine and a buy a different but similarly priced one and try again. The most likely candidate would be a TVM802A or TVM802B. There is good evidence this would be a straightforward conversion.

For at least the next few days I'm going to continue different ideas trying to see if I can get past this barrier, but at the moment it's not looking great. I'll probably have to consider one of the above options soon.

Sorry for the bad news. Hopefully something new will happen in the next week!

Thanks,
Jason


ma...@makr.zone

unread,
Sep 10, 2018, 2:34:34 AM9/10/18
to OpenPnP

On Monday, September 10, 2018 at 4:55:31 AM UTC+2, Jason von Nieda wrote:
The Bad News Update: ...

What is the policy of trying to contact the manufacturer for help?

After all he'd probably sell quite a number of extra machines through OpenPNP's endorsement. I for one would probably have bought one, if it were "officially" supported at the time.

_Mark
 

Friedrich Mäckle

unread,
Sep 10, 2018, 2:47:11 AM9/10/18
to OpenPnP
This is actually a good idea. In my experience chinese people will usually go an extra mile to sell something.

As they make no money of their software but from the machine they will propably provide you support or even a software update with the required functionality.

Friedrich

Marek T.

unread,
Sep 10, 2018, 4:49:31 AM9/10/18
to OpenPnP
With small exception that they know how it works at all... Many times in that cases the factory buy some solution from the external design studio and just produce it.
But every changes and soft development is not performed by them.

Jason von Nieda

unread,
Sep 10, 2018, 10:37:25 AM9/10/18
to ope...@googlegroups.com
It's an option, but I'm not very hopeful. We've asked two other manufacturers for information in the past and they have not been willing to help. It's worth trying though, and I'll go down that path soon if nothing else works.

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Daniel Dumitru

unread,
Sep 10, 2018, 10:45:51 AM9/10/18
to ope...@googlegroups.com
For few moments I was thinking to search for a Chinese speaking member of group and ask him to contact them on their language hopping for better feedback.

At the second sought I think that they may fear of clonning attempt.

Probably now best tool it'a sniffer like pirate bus ..

Daniel 

bert shivaan

unread,
Sep 10, 2018, 11:55:38 AM9/10/18
to ope...@googlegroups.com
Does Sparkfun have software to run this? I came across something before I found oPNP that I thought looked like they had some open source something for it.

maybe this:

On Mon, Sep 10, 2018 at 10:45 AM, Daniel Dumitru <dand...@gmail.com> wrote:
For few moments I was thinking to search for a Chinese speaking member of group and ask him to contact them on their language hopping for better feedback.

At the second sought I think that they may fear of clonning attempt.

Probably now best tool it'a sniffer like pirate bus ..

Daniel 

On Mon, Sep 10, 2018 at 5:37 PM Jason von Nieda <ja...@vonnieda.org> wrote:
It's an option, but I'm not very hopeful. We've asked two other manufacturers for information in the past and they have not been willing to help. It's worth trying though, and I'll go down that path soon if nothing else works.

Jason
On Mon, Sep 10, 2018 at 1:34 AM ma...@makr.zone <ma...@makr.zone> wrote:

On Monday, September 10, 2018 at 4:55:31 AM UTC+2, Jason von Nieda wrote:
The Bad News Update: ...

What is the policy of trying to contact the manufacturer for help?

After all he'd probably sell quite a number of extra machines through OpenPNP's endorsement. I for one would probably have bought one, if it were "officially" supported at the time.

_Mark
 

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+unsubscribe@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/bb9ecafa-7cb4-4de0-ba36-7c581ffd2f11%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+unsubscribe@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+unsubscribe@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.

Jason von Nieda

unread,
Sep 10, 2018, 11:58:08 AM9/10/18
to ope...@googlegroups.com
No, there's nothing yet. Nathan from SparkFun expressed an interest in wanting to run OpenPnP on it, and that was kind of the genesis of this project. That repo contains scripts and information for working with the machine, but the only open source software that exists so far is what I've written in https://github.com/openpnp/openpnp/tree/feature/chmt36va/src/main/java/org/openpnp/machine/chmt36va

Jason

On Mon, Sep 10, 2018 at 10:55 AM bert shivaan <bert.s...@gmail.com> wrote:
Does Sparkfun have software to run this? I came across something before I found oPNP that I thought looked like they had some open source something for it.

maybe this:
On Mon, Sep 10, 2018 at 10:45 AM, Daniel Dumitru <dand...@gmail.com> wrote:
For few moments I was thinking to search for a Chinese speaking member of group and ask him to contact them on their language hopping for better feedback.

At the second sought I think that they may fear of clonning attempt.

Probably now best tool it'a sniffer like pirate bus ..

Daniel 

On Mon, Sep 10, 2018 at 5:37 PM Jason von Nieda <ja...@vonnieda.org> wrote:
It's an option, but I'm not very hopeful. We've asked two other manufacturers for information in the past and they have not been willing to help. It's worth trying though, and I'll go down that path soon if nothing else works.

Jason
On Mon, Sep 10, 2018 at 1:34 AM ma...@makr.zone <ma...@makr.zone> wrote:

On Monday, September 10, 2018 at 4:55:31 AM UTC+2, Jason von Nieda wrote:
The Bad News Update: ...

What is the policy of trying to contact the manufacturer for help?

After all he'd probably sell quite a number of extra machines through OpenPNP's endorsement. I for one would probably have bought one, if it were "officially" supported at the time.

_Mark
 

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/bb9ecafa-7cb4-4de0-ba36-7c581ffd2f11%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.

Friedrich Mäckle

unread,
Sep 17, 2018, 2:00:38 AM9/17/18
to OpenPnP
I talked to a german vendor (https://www.smallsmt.biz/) on the weekend and asked them how the communication is done with their machines.

He explained that they have a custom control protocol like the one you experienced and it is controlled through a dll on the windows. I could imagine your machine works the same way. It should be possible to analyze the DLL and maybe there is more hidden functions you could use?

Best, Friedrich

Jason von Nieda

unread,
Sep 17, 2018, 10:15:34 AM9/17/18
to ope...@googlegroups.com
We've examined both the control software and the firmware and there does not appear to be any hidden functions unfortunately.

Jason


Dominic Clifton

unread,
Sep 19, 2018, 10:42:29 AM9/19/18
to OpenPnP
Hi! 

Do you have captures/logs of communication between the original software posted anywhere?  If so do you have a link, if not can you post them somewhere?

Likely you can discover what commands rotate the nozzle by examining how the existing SmtMain app communicates with the machine.  I did similar things when reverse engineering the Ergodex DX1 communication protocol after Ergodex stopped issuing software updates...    Basically, get the machine to do as little as possible but include the one thing you do want it to do, using the existing software, then you should be able to replay the commands to the machine and then when the nozzle turns you know that something that was sent made it turn.  Such a replay attack will help you isolate the commands required.

You've probably seen this, but maybe there's some menus that you can use to get the machine to rotate the nozzle?
https://github.com/sparkfunX/Desktop-PickAndPlace-CHMT36VA/blob/master/User-Manuals/CHM-T36A_Undocumented.pdf

Don't give up - you've come so far so quickly.  After doing some reverse engineering myself I know it can be
frustrating sometimes but eventually you will be rewarded!

Dominic

If you're interested, here's a link to what I reverse engineered a long time ago - http://ergodex.hydraservices.com/wiki/start

TheCunningFellow

unread,
Sep 19, 2018, 3:49:07 PM9/19/18
to OpenPnP
what happens if you look at it standing on your head?

You cant send a rotation angle to the machine.  But you can send a "job" to the machine that has placements that have x/y/z/c in them.  And it uses that for C.

Are there slow things it automatically pre-pends to a job like homing or fiducial checks ?  Or when you send a job can you just send a job with a single part with a single XYZC and it goes there ?

If the later is the case - then forget trying to find how to send a C command.  Just create a job with a single part.

Jason von Nieda

unread,
Sep 19, 2018, 3:54:43 PM9/19/18
to ope...@googlegroups.com
Yep, I have captures of every single command sent by the software that I can find. I captured a session where I clicked every single button and field in the entire program, including behind the three secret menus. I (and others) have also decrypted and reverse engineered the machine's firmware and there are no secret commands we can find. It's likely not there.

No one is giving up :) We're just looking at alternate solutions.

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Jason von Nieda

unread,
Sep 19, 2018, 3:58:08 PM9/19/18
to ope...@googlegroups.com
Yea, I've considered that but then there's almost no point in using OpenPnP and you might as well use the OEM software. I could potentially hack together a series of individual and job based commands to get close, but I think it would still be hard to be able to use all the various features in OpenPnP, which is the point of the project.

It's an option, but not a very appealing one. I'm still holding out hope that we can come up with a nozzle rotation solution. In the meantime, this week I am working on the driver so that we can do everything that we do know how to do. This will let people start to experiment with OpenPnP and the machine while work continues on figuring out rotation.

Jason




--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Dominic Clifton

unread,
Sep 20, 2018, 5:33:35 AM9/20/18
to OpenPnP
Thanks for posting that photo of the CHMT48VA.

It's interesting to note that the main board, behind the fan in your photo, looks the same as the one in the CHMT36VA posted here.

https://github.com/colinoflynn/chmt36va_hints/blob/master/internal_photos/driverboards1.jpg

vs

It even has the same un-populated ICs and connectors in the same locations.

So, should the protocol not support commands that openpnp requires it leads me to that that it would be possible to write alternative firmware or patch the existing firmware for OpenPNP support that would work with both the CHMT36VA and CHMT48VA.  I've got quite a bit of experience with the STM32 line of CPUs and Java. :D  Just need a machine...

If anyone has more photos of the PCB's inside their machines (and other photos too) that would really help.

Dominic

Jason von Nieda

unread,
Sep 20, 2018, 12:45:06 PM9/20/18
to ope...@googlegroups.com
If you are interested in the firmware, or reverse engineering the machine, or any of that kind of low level stuff, I highly recommend joining https://groups.google.com/forum/#!forum/desktop-pick-and-place. That's where most of the reverse engineering work has been happening.

Jason


--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.
To post to this group, send email to ope...@googlegroups.com.

Jason von Nieda

unread,
Sep 24, 2018, 10:04:59 PM9/24/18
to ope...@googlegroups.com
Hi folks, please see below for the latest update on the OpenPnP + CHMT36VA project:

First OpenPnP Steps! I've published the first version of the OpenPnP driver for the CHMT36VA. This is not currently complete. You CANNOT run a job with it, but it allows you to move the machine around and exercise some of it's functions. PLEASE BE CAREFUL: The driver does not currently enforce any limits and you can easily destroy your machine. For more information, see https://github.com/openpnp/openpnp/wiki/CharmHigh-CHMT36VA#testing.

Work continues on trying to figure out how to rotate the nozzles. I realized I had not yet mentioned it, but much of the hard work is being done by members of the Desktop PnP List at https://groups.google.com/forum/#!forum/desktop-pick-and-place. If you are interested in helping with the technical details, check it out!

At this point it seems pretty sure that we cannot rotate the nozzle with an existing command. There is the possibility we can trick the software into rotating by sending updated job information but this is a hack and will limit the functionality of OpenPnP. Right now it seems like the most likely solution is a modified or replacement firmware, and that is what I (and others) are exploring now.

And finally, check out the attached video to see OpenPnP + CHMT36VA in action! https://www.youtube.com/watch?v=LWPcQJbo2mg

Thanks,
Jason

jt whissel

unread,
Sep 26, 2018, 2:27:57 PM9/26/18
to ope...@googlegroups.com
The way I would go about doing this is hook it up to a logic analyzer and capture the packets the machine is sending with the software they provide to reverse engineer it. That is way easier than decompiling a DLL (time wise). Another approach would be to rip out the brain box in the machine and just replace it with a TINY G or Smoothie if they don't want to help you. 


For more options, visit https://groups.google.com/d/optout.


--
From,
Jt Whissel

Jason von Nieda

unread,
Sep 26, 2018, 6:11:12 PM9/26/18
to ope...@googlegroups.com
We have already done that. That was step one :)

The problem is that the machine never sends a rotation command. It sends job information and then the machine performs the job mostly autonomously. It only asks the software for help when it needs computer vision performed or there is an error.  To be clear: There is no rotation command. The software *never* tells the machine to rotate to angle A. It only sends information about the job.

To date we have:
* Captured every single command and transaction between the machine and the software.
* Reverse engineered that protocol and decoded every packet. We have a full understanding of the protocol.
* Decrypted the firmware and reverse engineered the packet handler.
* Reverse engineered parts of the OEM software.

And unfortunately none of that has revealed a command to rotate the nozzle to a specific angle.

Jason


Aurélien Frenna

unread,
Apr 23, 2019, 11:58:18 AM4/23/19
to OpenPnP
Hello, and thanks for your great work at openpnp.
I was wondering if work on CHMT36VA is still ongoing, or if you have given up due to the issue rotating the nozzles ?
Thanks !
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/openpnp/f609cb42-b2b8-4a6e-88a9-fbfee17c31a6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.

For more options, visit https://groups.google.com/d/optout.


--
From,
Jt Whissel

--
You received this message because you are subscribed to the Google Groups "OpenPnP" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ope...@googlegroups.com.

Jason von Nieda

unread,
Apr 25, 2019, 10:04:22 AM4/25/19
to ope...@googlegroups.com
Hi Aurélien,

Work is still ongoing, although now we are focused on replacing the built in controller firmware with Smoothie. This port is already done and it's working well. Unfortunately we were not able to find any way to rotate the nozzle with the built in firmware, even after extensive reverse engineering and attempts to modify the firmware. We also reached out to CharmHigh but they were not interested.

So, the status now is that by using an ST-Link programming cable you can replace the firmware with a custom port of Smoothie by Matt Baker, and OpenPnP will work with it. This makes the machine OpenPnP compatible but it will no longer work with the stock software, and there is no way that we have found to go back.

I'm still working on the camera side, which requires muxing the cameras. I've had limited time for OpenPnP in the past several weeks due to work, but things are slowing down now and I'm getting back to it.

So, yes, work is still ongoing, but we don't have a complete solution yet.

Thanks,
Jason


To unsubscribe from this group and stop receiving emails from it, send an email to openpnp+u...@googlegroups.com.

To post to this group, send email to ope...@googlegroups.com.

azal...@gmail.com

unread,
Aug 7, 2019, 9:56:21 AM8/7/19
to OpenPnP
Hello. I joined this group right now.

I bought a CHMT48VB approx. two years ago. It started causing some little problems very soon, but I was totally ignored by CharmHigh (and I am still ignored).  It happens randomly that the "Z-AXIS not return home" message appears. I have to correct then the position in job list and "continue". Hereby the remaining parts (is something was on the other nozzle) are dropped, the machine does a re-homing of its Z, and then it continues working.

In general, the original software on this machine is very braindead in several points, so I am very interested in openPnP.

From now on I will watch the progress you have. It looks really promising.

Thumbs up!
Reply all
Reply to author
Forward
0 new messages