Unbricking The Da Vinci And Installing Custom Firmware

We’ve seen a lot of projects based around the Da Vinci 3D printer, all deserved, because the Da Vinci is honestly a terrible 3D printer; it has chipped and DRM filament cartridges, a terrible software interface, and completely closed firmware. The first two shortcomings have already been taken care of, and now the door is open for open source firmware on the Da Vinci printer.

[Jason] bricked his Da Vinci when upgrading the firmware, and like any enterprising tinkerer opened up the enclosure and took a look at the electronics board. He found an ATSAM3X8E, a very capable ARM Cortex-M3 microcontroller. This is the same processor in the Arduino Due, making it possible to write code for the Due and upload it to the Da Vinci controller.

After installing Atmel Studio 6, he noticed the printer controller showed up in the device manager, making it a snap to upload updated firmware, unbricking his printer.

With the ability to upload firmware, the problem quickly becomes writing new open source firmware, or at least porting existing firmwares; there are a few people across the internet trying to reverse engineer the board schematic from the PCB. Once that’s done, it should be a trivial matter to make the Da Vinci an open device, and teaching a lesson to every company that thinks they can sell a closed device in what is ultimately an open ecosystem.

67 thoughts on “Unbricking The Da Vinci And Installing Custom Firmware

    1. I think it’s debatable to call the cartridges DRM-ed. They do have chips, and the people that hacked them managed to get the chips to work by simply changing the remaining filament length data stored, and that value isn’t encrypted last I heard.

      It’s not really a business I’d want to support if I could avoid it. I really need to read up more about it to see if the mechanical structure is good. But having to work around bad firmware, possibly bad electronics and terrible software, in a supposedly finished product, to make it work well puts me off.

      1. The mechanics of the machine are not crap by any measure. Could they be a bit better sure. But consider all parts are machine stamped and injection molded. There is little that will be out of alignment. The electronics are also not bad, they just need a new firmware. That being said the 1.0 board version has the spots necessary for dual extrude un populated. At the same time it will be quite straight forward to drop in a ramps based system. There are at the present a limited number of us working on this machine and already it has become a printer that, well just works. Straight out of the box it is ok to good. With some slic3r or other slicer magic it is very good considering the cost. I don’t have to babysit it or whatever all the time. I hit print and go. I bought it to “get my feet wet” while working on my printer build. Given all my toys and useless crap bought over the past years this has seen the most use by far. And even after the quad or 5 extender build is done it will continue to get used daily. It is not perfect and all issues are covered on the forums linked above.

    2. No, they are NOT DRM.
      Here’s the difference.
      Cubify uses an encrypted hardware EEPROM in the cartridge. That is DRM since it’s illegal to break/hack that encryption under DCMA laws.
      XYZ is not using any encryption on the cartridge and thus why it can be hacked and is not illegal to do so.
      It’s not evil- even though everyone flips out. They are trying to make it easy and reliable. The chip contains default temps and other info, along with length on the cartridge. This is just so you don’t run out.

  1. it would be nice to get custom firmware on the 3DS cube gen2+ it doesn’t even remember the wifi pass word why have wifi and forget the pass makes no scene. also i have a secure wifi key that is 26 characters long so this is a non trivial problem for me. this artificial gives me hope that my machine will one day be cracked.

  2. Jason was not the first to do this. There is another blip about this on the da vinci forums at http://voltivo.com/forum/davinci
    For such a new printer we have a fairly active population. And you will be very hard pressed to find a printer with this large a volume for 500 dollars printing this well, within minutes of un-boxing it. Sure XYZ may suck for the closed repietier they use and cause they have not released the slic3r code they use, and for the chipped filament, but this printer is the right product at the right price at an excellent time to draw in many people to 3-d printing.

    1. Thanks Josh. AFAIK I was the first to tell of a brick and how to undo it. I did not publish exactly how – although I did detail software/drivers needed- because it will (at least how I did it) erase the serial and that may cause some warranty issues if the need to send the printer back occurs.

      Kieth

  3. “it should be a trivial matter to make the Da Vinci an open device, and teaching a lesson to every company that thinks they can sell a closed device in what is ultimately an open ecosystem.”

    – Company sells the ‘ware
    – You immediately void warranty
    – No more warranty burden on company
    – You write new, actually usable firmware
    – Bloke shopping for 3D printers goes “uh, crappy factory firmware, but good free one, I can just buy this printer then”
    – Company sells the ‘ware

    You have taught them a serious lesson, mate.

    1. But at the same time the new firmware ignores all the DRM nonsense and makes buying ordinary filament possible. Which was going to be a big income stream in Company’s plans.

      The razors / blades, now better known as the inkjet method of business, really pisses people off. And yet it lets people get hold of stuff they otherwise wouldn’t be able to afford, by subsidising the basic item. Still I understand this, but it annoys me too. I suppose it’s just the excessive profit on cheap things like ink or plastic filament that does it. Even though without it you wouldn’t have the cheap printer at all.

      It’s interesting that people don’t seem to consider the good deal they got on the printer when they’re moaning about the ink. It’d be interesting to see some psychological research into this.

      1. Kodak inkjet vs other inkjets of it’s time- Kodak had the idea of selling a printer that was more expensive, but had super cheap ink. It flopped. In th end, the inkjet world seems to win.

          1. I personally bought a 3DS cube because it was close to where i live and easy to get a hold of. shipping other machines to perth is a hight mare given it is half way around the world from the produces primarily in America / Europe. when i did need a 2d printer a while back thought my only concern was ink cost and i basically ignored the price of the machine and bought the one with cheapest ink i could find locally.

          2. We are not dumb. We are just not gifted with the technical know how. Myself I wish I was smart enough to Hack my Da Vinci AiO, but alas my brain is just about worn out.

      2. I hate the inkjet method of business. I also lump it in with mobile phones and new cars. It is a market where the sellers purposely try to create as confusing a “deal” as possible, because by confusing the customer they can get more money out of them.

    2. What Warranty. I am one of the poor 3d ignorant sods who fell for the spiel XYZ put out that the AiO was the be all and end all of 3D printers. I purchased it from Technology Outlet in the UK (big mistake). They sell all types of 3d Printers and certainly know nothing about the da vinci Printers. When I sought advice on the correct calibration settings for the printer they told me to use a piece of A4 paper. I commented that there were a lot of thicknesses of A4 paper. After some other technical questions that could not be answered I concluded I was wasting my time. I have been getting Error 40 codes which apparently is a corrupt SD Card problem. And now after month and no reply to my requests for support from XYZ, the belt tension mechanism has broken. Technology Outlet have gone on a long festive break. Not that they would be any help. My Xmas happiness is down to Gorilla Glue. I have glued the parts back together and hope it will work. I hate these parasites who steel the open source ideas and and try to stop others from benefiting from them. Typical thieves and plagiarists, paranoiac about being ripped of themselves.

      1. The SD card only holds the demo print files the system doesn’t need it. You could load another with better files or just format the one in the machine and see if that helps, or maybe it just shook loose.

    1. Annabotten please ban this troll so hard. I think the readership of HAD has stabilized enough so that you can require a login and passwd to post comments. That will better allow you to block worthless trolls like this.

  4. “…teaching a lesson to every company that thinks they can sell a closed device in what is ultimately an open ecosystem.”

    Really? You haven’t been alive long, have you? I mean, if the very nature of Linux didn’t teach that lesson (along with the multitudes of hardware that had to be reverse engineered and open-source drivers and such written – especially web cameras and video cards) – nothing will.

    The fact is, the “masses” that want to buy and print with a 3D printer, don’t want to print things they’ve designed (heck, learning how to design things is just “too hard” and takes “too long”, and “oh, new shiny”, and “when’s the next episode of XYZ showing?”) – no, they want others to design those things, they just want a “custom” (???) iPhone case, or other bauble coming out of the magic box – because it is easier to do that than to actually go to a store and pick it up (or, forbid, wait several days for it to be delivered – they want it “right now dammit!”).

    No – this will likely lead (provided that the “masses” actually want a 3D printer, which remains to be seen) to where its always led: A mass market, low-cost 3D printer DRM’d and locked down to hell and back (possibly with non-replaceable parts, maybe assembled in such a manner that disassembly will cause it to break so that it can’t be fixed) – and then the much more expensive “pro-level” printers for the designers. Of course, the software for designers will be extra (because it has to insert the DRM for the models so that open-source software won’t work). You’ll probably have to always be connected to the internet to use the hardware/software (both the designers and the end-users) – just to make sure nobody is doing anything “wrong”.

    Hmm – while I never got to use one, this makes me think of the Objet 3D printer systems…

    Then there will be the rest of us, playing merrily outside of the walled garden, but unable to sell our wares to those inside; in other words, we’ll be locked out of the system that we helped create.

    This will likely, again, only happen if there is a mass rush on people wanting to buy, own, and use 3D printers; I still don’t think 3D printers are there yet for most people (mainly because 3D printers take a while to print a bauble, and the quality isn’t as good as a store-bought item).

    1. “probably have to always be connected to the internet to use the hardware/software (both the designers and the end-users) – just to make sure nobody is doing anything “wrong”.

      Hmm – while I never got to use one, this makes me think of the Objet 3D printer systems…”

      Objet (now owned by Stratasys) does not require this.

      1. Just because something you call something ‘bricked’ because YOU don’t have the capability to fix it, doesn’t mean that someone else doesn’t have the capability. Therefore, your definition is stupid.

      2. This. I recall that “bricked” used to have a preceeding coarse word attached to it with a hyphen (ie, “$h17-bricked”), and the definition was certain… if it was bricked, it was dead.

        As to the modern misappropriation of “bricked” it really needs a different word that conveys the idea of something having gotten far enough out of whack that “primates are stumped, but higher life-forms ought to be able to rescue it with enough time/money/resources”.

        Those two ideas are two very different things. This degree of laziness in spoken/written language really galls me. Also, get off my lawn…

        1. I n reality there is no such thing as bricked, unsolder the flash (if needed), stick in a flash writer device and re-flash with a copy of the default factory. To a hacker it ain’t broken until someone smashed the silicon with a brick and even then …

          1. “Bricked” is (was) the term for something you can’t fix. For example, a single chip microprocessor with a fused link for access to programming the flash. If you blow the fuse before you program or with bad code loaded, you have a brick. Or a device with a software loader and no other way to access after the chip is in epoxy and you overwrite the loader. Yes, there have been devices like that. A device that is programmed during die test and the JTAG lines are not bonded out to pads. You can interface through serial but you wipe out the resident u-boot. Bricked. You get the picture I’m sure.

    1. Right? No one is forcing anyone to buy this printer. XYZ just chose to use this business model. But this business model is precisely the reason that this printer is really top quality for it’s price. People are willing to pay more overall to get things cheaper now (or better things for same price). Look at your average Rent-a-Center, there’s no shortage of business for them.

      I don’t know how many times I’ve heard people complain about the cell phone business model. You either get your phone cheaper now, but pay for it (and then some) over the life of your contact, or you pay for the phone up front with no contract. People want it both ways and you can’t.

      Yes, ink jet printer ink is expensive, but how else do you think you can buy a new printer for $30?

      I just hope that when people open source some new da Vinci software, the number of people that use it stays below a level that XYZ can absorb. Otherwise one of two things will happen:
      XYZ goes out of business since they can’t stay afloat without the residuals. (No more great printer at that price point.)
      XYZ increases the cost to cover the losses. (No more great printer at that price point.)

      If people want to have their cake and eat it, too, (get subsidized 3d printer price without paying it back on the filament) they better hope that enough people are willing to cover for them.

      That being said, if I had it I would definitely reflash it with open source firmware given the chance. The primary reason that I went with another printer instead of the da Vinci was community support.

      1. I always feel it is best to invest in those who you feel most aligned with. When a few folks game the system everyone ultimately loses. I mean spend the couple extra bucks and buy a printer with saner firmware. That extra money might just go towards those printers getting even better someday.

        Or buy the da Vinci and let the other printers wither, and die. Yeah, that would be the best thing to do. Everyone pursuing their own selfish interests is what makes this world so great.

      2. Hey Mike, It would be nice if XYZ would just either develop their own slicer that was not a POS or partner with one that works well then there would be no need to hack the system at all. Over all though I am happy with my Davinci. I just wish I could change the temperatures using their software. I recently got an ABS cartridge and it did not adjust to the higher temperatures needed for ABS and the prints either did not work or came out as much lower quality than the PLA prints did.

  5. I just got my Da Vinci on Friday. I immediately unboxed it and after fixing a small problem with the y axis not homing on start up (see below) I was able to print one of the demo prints on the first try. I would say that the quality is on par with the Cubex duo I have at work. And that is after adding a 3rd party heated bed.

    I need to tension one of the y axis belts and the x axis belt. When I first powered on the printer the x axis homed and then the y axis returned and started grinding. I moved it back out and replicated the results again. I read a few amazon reviews of people having wires pop loose during shipping so I opened the back panel and traced the y endstop. It was plugged in. I checked the continuity on all the wires which was fine. Then used a magazine to interrupt the photogate SUCCESS! I tried to re-align the bracket. But it can’t be done. So I used some tape to extend the tab a little bit. Sad that I would have to do that but for the price it’s hard to argue about something so small. So I loaded my sample cartridge and printed the keychain. It started to print fine. I noticed that the y axis belt is loose on the right side. I think this sloppy belt is causing the other side to not reach the end stop. Luckily it looks like I just need to pop off a side panel and loosen 2 screws to tension the belt.

    I haven’t tried the software yet but I was aware of the issues when I ordered. I was not going to order the davinci at first until I found out it was easy to reflash the cartridge. I am currently planning to work with the printer as is for a little while and then replace the electronics with ramps/raspberry pi combo.

    All in all I would say the printer itself is worth the money as a ready to go out of the box printer. The construction is pretty sound. I am very impressed with the extruder. I’m not a fan of the drm’d cartridges (especially after the $99 cubex cartridges at work). But I have the parts to work around that. If they fix the software or somebody can get an open source software to work I think the da vinci could easily develop a large market share

  6. “We’ve seen a lot of projects based around the Da Vinci 3D printer, all deserved, because the Da Vinci is honestly a terrible 3D printer;”

    Seriously Brian, do you even *read* what you write?

    1. A few weeks ago he wrote the following in regard to the Da Vinci:
      “The Da Vinci printer from XYZprinting is turning out to be one of the best buys in the world of cheap, consumer printers”

      I tipped and bought one because I thought it was a good sign that it was featured by Hackaday

  7. “The da Vinci 1.0 3D Printer will revolutionise the way you live.
    da Vinci allows you to create and customise your home with the push of a button”….

    The opening sales blurb from DaVinci does not sound like their business plan is geared toward penetrating the “open ecosystem” / hacker / nerd / nerdette market, but rather the mass, disposable income ,market. As stated in others comments, if you dont’t like it, take your money elswhere… as in vote with your dollars. Oh, and if you can buy an adequate 3D printer on the cheap and reset the cartriges and reflash the firmware, good on ya.

    But, I don’t think your market impact will “succeed in “teaching a lesson to every company that thinks they can sell a closed device in what is ultimately an open ecosystem.”. Last I looked, the Borg-Gates and his minions aren’t on the soup line.

    1. “Teaching a lesson to every company that thinks they can sell a closed device in what is ultimately an open ecosystem.”
      Come on. I bought it for the convenience of plug-in/turn-on. It worked out of the box and still does. I love it!
      However, I’ve never seen a design I couldn’t improve, especially my own. It’s mine now and I will do with it as I will. I realize there are repercussions (warranty) but I used it to print my new printer. Too cool.
      There is a line between cheap/selfish and innovative/creative and you sir are responding to someone that is on the cheap/selfish. Let him live alone.

      d

    1. If I had a second printer I would have already done so, but this thing seems to get no break for the work. But a ramps/mega is in the plans, the sticking point is the LCD at this stage. That and just getting a free moment to do so. The goal is to do it as a direct drop in “kit” with matching plugs for the da vinci and matching plugs and wires for the ramps.

  8. $28 for 240m (600g) of plastic in a chipped cartridge doesn’t seem ridiculously more expensive. I know ~$30 will get me 1kg but that extra subsidy in each cartridge got me a nice printer for under $500. And the continued income stream for XYZ allows them to improve the design (built in scanner, dual extrudes, etc.)
    I just don’t see the evil in this.
    They aren’t preventing anybody from buying an open source design. They are giving beginners who don’t want all the open source work ( fun for some, pain for others).
    Then again, this is the hackaday blog so it my point may be meaningless.

    1. Actually, you’re preaching to the choir. I expect the negative responses are from someone that doesn’t have a working printer.
      I love my xyz, I hope they put out new products, I hope to improve my xyz and I have bought a few cartridges and I like knowing I’ll be printing instead of fiddling with the filament.
      d

  9. Loving my DaVinci, especially knowing I can hack the carts. Changing colors is real easy and they really aren’t much more expensive than other sources, but colors and options are limited. Going forward, I’ll hack chips and refill empty carts with 3rd party stuff. Working on a 3d printable frame/spool (will just move the chip) and arduino based refill station (wind spool and set variables, reset chip, etc). Then I’ll have cartridges for pretty much anything I want.

  10. It would seem that rev ‘G’ is the best option for cart reset compatibility (from browsing the threads here, YMMV). I likely won’t get an actual test until I get the cart frame and reset/reload dock built out. I saw a link to the Arduino reset source floating about. Connectivity seems to 5v, Gnd, and a DataPin. I should have plenty of chips from “proprietary-empties” to play with by then.

    In passing, I should mention that the only real issue I have with DaVinci is that the calibration was just a bit off – first layer or two in one corner would just scrape the buildplate. Easy fix, sweet prints now. Some de-lamination issues, mostly related to my own impatience; fast speeds + thick layers = delamination

  11. I wish most of you people out there wold quit arguing about the aio printer. I have one and I am a noobie. I have contacted xyz and i am getting the run around , screen shot this and that , how ever the scanner is the problem. if they would only get some decent software for the scanner they may be will have a home run and no one would complain

  12. Hi Guys,
    I am trying to help a friend who purchased a 1.0 from a Box dropper beginning with K in March. They have stated that they no longer sell this printer, refer to the manufacturer, who won’t respond. That “issue” aside, the thing had the heater plate replaced and shortly after failed to light up the display correctly. After several further restarts, the main processor chip let forth the magic smoke and died. We sourced a replacement main board, and after checking the power supply voltages carefully powered her up. Voila! all seemed to be ok. Unfortunately after another bunch of restarts trying to get a test print running, it repeated the process and blew yet another processor chip up.
    So, obviously there is some intermittent issue shorting out or applying excess voltage the chip, and I am guessing it is the extruder or less likely the power supply is randomly going over voltage. That’s one issue perhaps for a different thread, but more pertinent to this forum, if I replace the processor chip on the board (surface mount, but available and achievable), can I load fresh code using some of the techniques/comments mentioned above?
    Thanks,
    Glenn.

  13. I just picked up a DaVinci Jr, which I’m quite happy with. I gave it a go because of the price and 10% discount for Barnes and Noble members. It’s also a bit sexier than the threaded rod, “I made this myself” McGyver style look. I also wanted something that I could still print with, because I always seem to sabotage my own efforts when I try a new idea on my RepRap. On one hand, I want to keep it as-is, ready to print, something my kids can easily use (my 9 year old has gotten it down pat already), and the price of filament isn’t that far off from what it was when I build my first 3D printer. But on the other hand, I want to pop this open like a porn star and see how far she’ll go and do it cheap.

    1. Love my second hand ‘Davinci” and Repetier is awesome! Time and patience is the key!……If you jump it, it is not a brick!!!

      Follow the steps, all is not lost! You can bring it back…..not to XYZ of course!!!!

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

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