User avatar
BaronWilliams
Posts: 159
Joined: Tue Jul 15, 2014 8:30 pm

Feature Request: FlashForge Dreamer Printer Support

I am using Simplify3D both at work and at home. It's great software. I am using three different kinds of printers: a FlashForge Dreamer, a MakerBot Replicator 2, and a MakerBot Replicator 2X. The MakerBots have direct printing support in Simplify3D. The FlashForge Dreamer does not.

I had to create my own profile for the FlashForge Dreamer to get Simplify3D to create compatible G-code. Creating the profile was pretty simple. I can now print using the G-code Simplify3D creates, and the prints come out great.

The main problem is that Simplify3D does not know how to communicate with the FlashForge Dreamer over USB or WIFI. I am forced to save my G-code and use the FlashForge FlashPrint software to send Simplify3D's generated G-code to the printer.

I would love to be able to print directly from Simplify3D when using the FlashForge Dreamer, as I can already do when using the MakerBot Replicator 2 and 2X.

Simplify3D supports older FlashForge printers, such as the FlashForge Creator, but the Dreamer is new and is incompatible with the older printers. FlashForge changed the way G-code is sent to the Dreamer. Unlike their older printers which accepted G-code in real time, requiring a USB connection throughout the entire print job, the Dreamer accepts all the G-code as one large data packet, which is fast, and then after it gets all the G-code it then starts printing it. This has the advantage of allowing you to unplug the USB cable while the Dreamer prints your object. I like this new way of printing. Things are less likely to go wrong.

The Dreamer also supports sending the print job over WIFI, and it works the same as with USB, in that you send the entire print job at once, and then after the printer gets the entire print job it starts printing it.

I don't know the details of how the Dreamer receives the G-code. If someone has a USB data sniffer, they could probably easily figure out how the G-code is sent to the Dreamer. Most likely, the Dreamer has encapsulated the entire print job as standard G-code inside of some wrapper packet. I imagine they probably use a single packet with data length, maybe a checksum also, and then the G-code as its data.

It would be great if Simplify3D could add support for printing to the Dreamer over USB and WIFI. As far as the profile goes, I have already made my own witch works great and uses the proper G-code. I can help with adding support for a profile for the Dreamer, if needed.
JoeJ
Posts: 1435
Joined: Sun Feb 16, 2014 10:52 am

Re: Feature Request: FlashForge Dreamer Printer Support

If FlashForge ever publishes the specification for how to communicate with their machine, then I bet you would have a much better shot at getting USB support for the Dreamer. Right now, it's a proprietary communication protocol with no published documentation. I doubt they will be adding support for something like that
User avatar
BaronWilliams
Posts: 159
Joined: Tue Jul 15, 2014 8:30 pm

Re: Feature Request: FlashForge Dreamer Printer Support

I will try to talk with FlashForge and see if this information can be published.

If FlashForge releases this information it will benefit FlashForge in the long run. FlashForge isn't making money from their protocol or their FlashPrint software. They are making money from their hardware. The more open their USB communication protocol is the more printers they will sell. This is guaranteed. Some people simply will not buy printers that can't be used in an automated way with custom printing software. Period.

By having a communication protocol that's not published FlashForge limits the usefulness of their Dreamer printer. For example, if I as a software engineer wanted to design a program for Wal-Mart that automatically creates custom G-code on the fly to 3D print products ordered by customers, I wouldn't be able to use the FlashForge Dreamer printer with my own custom product 3D printing software at Wal-Mart because the printer's protocol is not published. I would have to purchase thousands of printers from another manufacturer that does publish their protocol. This is a very obvious case where an open protocol wins a big purchase order.

It's a mistake when hardware uses proprietary or non-published communication protocols, especially when they are not selling their software. This is a mistake a lot of manufacturers make. I as a programmer have many times chosen not to purchase hardware that doesn't have readily available information on its communication protocol, or at least a free SDK so that I can make custom software to use the hardware. But in this case the Dreamer printer is my own personal printer. I won't be making custom software for it, I have no need to, at this point in time. But for my current client, this would be a requirement.
BruceG
Posts: 5
Joined: Tue Jul 22, 2014 3:57 pm

Re: Feature Request: FlashForge Dreamer Printer Support

I just got a Dreamer; would you be so kind as to share your settings as I'm fairly new to both the Dreamer and Simplify 3D?
Any tips on what works or doesn't work would of course be very appreciated.

Thanks in advance for anything you choose to do.
User avatar
BaronWilliams
Posts: 159
Joined: Tue Jul 15, 2014 8:30 pm

Re: Feature Request: FlashForge Dreamer Printer Support

BruceG wrote:I just got a Dreamer; would you be so kind as to share your settings as I'm fairly new to both the Dreamer and Simplify 3D?
BruceG, I put my current FlashForge Dreamer Simplify3D profile here: FlashForge Dreamer Simplify3D Profile
BruceG wrote:Any tips on what works or doesn't work would of course be very appreciated.

Thanks in advance for anything you choose to do.
First of all, like all 3D printers, the wrong slicer settings, or bad build platform leveling, or even bad filament, can mess up prints really bad. But once you have everything set just right, the FlashForge Dreamer produces some of the best quality 3D prints I have seen for an FFF printer. I use the MakerBot Replicator 2 and 2X also. The quality of the prints on the FlashForge at 0.10 mm resolution is really fantastic when you have everything set just right. I can't get the same quality with the MakerBots. I think it's because their build platforms shake too much while printing. Their build platform and it's foundation are constructed of plastic mostly. The Dreamer's build platform and foundation is almost entirely made of metal and is very sturdy.

I use Simplify3D to create G-code for the Dreamer because it normally creates it very fast and does a great job, better than nearly all other slicers. But I use FlashPrint to send the G-code to the FlashForge Dreamer printer over USB because Simplify3D doesn't know how to talk to the printer over USB.

One quirk the Dreamer has, if G-code file names are too long, they will not print. So watch out for that problem. For example, if you tried to print a file called this_is_my_really_super_cool_print_job_I_made_last_night.gcode, the Dreamer will give an error. I ran into this problem yesterday, when trying to print something with a long file name I downloaded from http://www.thingiverse.com. It doesn't matter if you send the print job over USB or put it in the SD card. Either way, the Dreamer doesn't like long file names and will refuse to print it. It doesn't tell you the name is too long, it just doesn't print it. It took me a long time to figure out what the problem was. I tried changing slicer settings, using different slicers, etc., and finally I tried changing the filename to a short name, and then it printed.

Return to “General Discussion and Tips”