Jump to content
Ultimaker Community of 3D Printing Experts

Simplify3d Ultimaker S5


simon-ber
 Share

Recommended Posts

Posted · Simplify3d Ultimaker S5
2 hours ago, tabiznet said:

But you dont give us access to the most important features, like being able to compile and load our own firmware.

 

Wait a second... just out of curiosity (i don't own a S5):

Why not? One can develop and install a different firmware at any time, the hardware is not "locked" as far as i know.

 

There's even a special developer mode which makes it possible to change and debug a lot of the (Python-) procedures without the need for re-compiling. There's a lot to explore.

And each printers provides an API for "remote control" (actually two - the older one for network printing and the new one for the digital factory).

 

Was anything of this removed in newer firmware versions? That would be indeed annoying... Or is it just because of the risk of losing warranty or such...?

 

  • Like 1
Link to post
Share on other sites

Posted · Simplify3d Ultimaker S5
1 minute ago, tinkergnome said:

 

Wait a second... just out of curiosity (i don't own a S5):

Why not? One can develop and install a different firmware at any time, the hardware is not "locked" as far as i know.

 

There's even a special developer mode which makes it possible to change and debug a lot of the (Python-) procedures without the need for re-compiling. There's a lot to explore.

And each printers provides an API for "remote control" (actually two - the older one for network printing and the new one for the digital factory).

 

Was anything of this removed in newer firmware versions? That would be indeed annoying... Or is it just because of the risk of losing warranty or such...?

 

Quoting an earlier post about this by neotko
"Yea your reseller did lie. They are ‘open’ up to a point but they don’t share, for example, the firmware build or how disable the firmware key (to easily build your own firmware)

 

Without access to the firmware any hardware mod will be pita since um3/s3 doesn’t allow to easily force other gcode and that means that even the heating sequence (bed, core cartridges) can’t be changed."

So yeah the hardware is locked but even if it wasn't I've got no base to start on, due to the source code not being available.

 

  • Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5
    6 minutes ago, tabiznet said:

    Quoting an earlier post about this by neotko
    "Yea your reseller did lie. They are ‘open’ up to a point but they don’t share, for example, the firmware build or how disable the firmware key (to easily build your own firmware)

     

    Well - to our luck is the quoted part "insanely inaccurate" to say the least...


    There's no 'key" or any kind of encryption - what he was complaining about was: the firmware updates are "signed" by Ultimaker with a certificate.
    The latter is IMHO a good and necessary thing for binary files that the printer receives via its internet connection (and the signing is hardly related to this topic).

    It means that nobody can plant an unsigned firmware on the printer with a man-in-the-middle attack. Oh-well - is this really a bad thing? 🤷‍♂️

    You have physical access to the printer, so who cares?

     

    OK, the "Digital Factory" / "Cloud" stuff is not Open Source - but that's what the API is good for.

    The Marlin part is Open Source software and the Linux part is accessible in developer mode and open as well.

    Not much that holds you back from developing your own firmware - or to modify the active leveling procedure (e.g.).

     

    I've modified an UM3 in the past, because i don't like the print core illumination and the loud 'beep' of the button. Was pretty easy. Just take the time and have a look (in developer mode) - it will be worth it.

    Ultimaker kindly provides recovery images, just in case something is screwed up. 🙂

     

    For some more insights from the firmware developers use the search term "Inside the Ultimaker 3". It's a few years old, but the principles are still valid. There are 6 articles (though the links  between them are broken since the forum software was updated...)

     

     

    • Like 3
    Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5
    33 minutes ago, tinkergnome said:

     

    Well - to our luck is the quoted part "insanely inaccurate" to say the least...


    There's no 'key" or any kind of encryption - what he was complaining about was: the firmware updates are "signed" by Ultimaker with a certificate.
    The latter is IMHO a good and necessary thing for binary files that the printer receives via its internet connection (and the signing is hardly related to this topic).

    It means that nobody can plant an unsigned firmware on the printer with a man-in-the-middle attack. Oh-well - is this really a bad thing? 🤷‍♂️

    You have physical access to the printer, so who cares?

     

    OK, the "Digital Factory" / "Cloud" stuff is not Open Source - but that's what the API is good for.

    The Marlin part is Open Source software and the Linux part is accessible in developer mode and open as well.

    Not much that holds you back from developing your own firmware - or to modify the active leveling procedure (e.g.).

     

    I've modified an UM3 in the past, because i don't like the print core illumination and the loud 'beep' of the button. Was pretty easy. Just take the time and have a look (in developer mode) - it will be worth it.

    Ultimaker kindly provides recovery images, just in case something is screwed up. 🙂

     

    For some more insights from the firmware developers use the search term "Inside the Ultimaker 3". It's a few years old, but the principles are still valid. There are 6 articles (though the links  between them are broken since the forum software was updated...)

     

     

    Odd, my reseller parroted the same thing as the post when I grilled them about it. Guess there's one way to find out for sure. I'll poke around my own machine. Still without the marlin profile (configuration, configuradion_adv, etc) provided in its uncompiled form they're not making it easy compared to the 2, which has its entire marlin build on git

     

  • Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5

    I have the impression, this (old) Simplify3D thread was slowly hijacked meanwhile and turned into "just leave your complain here"... but now it's too late... 😏

     

    I'm not entirely sure if the motion controller is still driven by Marlin, it's just an assumption from the early UM3 days.

    But if this is the case: The Marlin source code is available on request, that's part of the used license after all.

     

    @SandervG may correct me... i think the fastest way is to submit a request on the support page. Your reseller should be able to request it for you as well.

    Of course only valid, if open source Marlin is still used.

     

    But - t.b.h. - the Marlin part is by far the least interesting part of this firmware. It's severely stripped down AFAIK and degraded to a dumb motion controller. There's not much to learn from the sources. Very few of the hard-coded values are used (if at all).

    The Linux system is where things are buzzing... The printers configuration consists of a bunch of json-files nowadays - it's much more complex than in former days... every progress has its price. 🙂

     

    But YMMV - just out of curiosity: what would you like to change in Marlin?

    But perhaps it's better to start a new topic for deep digging in firmware modifications...🧐

     

  • Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5
    3 hours ago, tinkergnome said:

    i think the fastest way is to submit a request on the support page. Your reseller should be able to request it for you as well.

    I always make suppot requests myself. Maybe that's why it takes so long.🤔

     

    I was just curious about that.

     

    In theory, you can change and adapt things yourself. I don't know what is there and if it really contains all the important parts for you.

    directory is: /usr/share/griffin

     

    The debian linux services are registered via main.py.
    There you can find the deamons of the printer.
    Maybe for you: /usr/share/griffin/griffin/nfc/nfcController.py

     

    The phyton code is well readable and in places also documented.
    But without a software description this is something for which a lot of coffee is needed.

     

    Before I would check the possibility to restore it.
    Maybe copy everything over scp. (But I'm sure you can figure that out for yourself)

     

    I would try the firmware forums. Maybe they give support.

     

    Have fun

  • Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5

    Open can mean a lot of things. Same as closed. It's a scale really. But why the complains about some things not being as open as they could possibly be? You can change the software that's running on the machine. Hell, there are even other parties that allow you to install different SW on the printer to connect to their cloud service.

    Just because it's open, doesn't mean that we have to provide you with a consultant that holds your hand while doing it. We could do it, but it would mean that the product becomes even more expensive, since someone will have to pay for that.


    But all engineering is about making choices. It has jack shit to do with "taking away 'muh freedoms". But if you want something to be more open (and that it works), it means that you have to spend a lot of time on it. So, ask yourself, what do you think is more important?

    So we chose the middle ground here; Whenever it doesn't take an insane amount of work, we keep things open or we put them behind a bit of a config, so it's possible, but not every single user will change them (since more changes == more support requests that are harder to debug).

     

    There is indeed a certificate on the build. It's there because of common and sensible security measures. It's not there to prevent anyone that has physical access to the machine from changing anything.

  • Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5
    13 hours ago, tabiznet said:

    Quoting an earlier post about this by neotko
    "Yea your reseller did lie. They are ‘open’ up to a point but they don’t share, for example, the firmware build or how disable the firmware key (to easily build your own firmware)

     

    Without access to the firmware any hardware mod will be pita since um3/s3 doesn’t allow to easily force other gcode and that means that even the heating sequence (bed, core cartridges) can’t be changed."

    So yeah the hardware is locked but even if it wasn't I've got no base to start on, due to the source code not being available.

     

    Neotko is just a guy with an axe to grind. I don't know why he's so mad, but he's flat out wrong. He also has little to no experience with software design (or common practices), so I hink his observations should be taken with a large grain of salt.

    There is a fairly easy way to change the firmware. It's not as easy as making a complete new build, but that is it. There is an easy way to force certain g-code and the heating sequence can be changed, since the internals use D-bus, which you can expose to be accessible over the network.

    The source code is available, because it's python. It's on every machine we ship.

  • Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5
    10 hours ago, tinkergnome said:

    @SandervG may correct me... i think the fastest way is to submit a request on the support page. Your reseller should be able to request it for you as well.

     

    That is 100% correct. Marlin is still used as a motion controller, and available upon request. This can be requested via a ticket to our support team. It is important to realize we'll need to prepare it for distribution first, so it may take more than a few days before we'll be able to send it to you. 

     

    Griffin is a different part of the firmware that you can access via your printer, but not something that we release. This contains like the procedures that happen prior to a print and how it responds to ER messages.

  • Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5

    Thanks! This is good news overall.
    Anyone who wants can theoretically adapt the software.

     

    The changes are at your own risk.
    Of course the support does not have to support this.

     

    Also it is clear to have the source code is not legally equal to OpenSource.

    Personally I see no reason to adapt the software of the S5. After a sober consideration with all the consequences this makes little sense. Nice to be able to show the door to people who think they're in prison.


    I have often been told that buying an S5 printer is tantamount to incapacitation.

    Therefore I find it important to correct this with such contributions. Those who want and can, will not be stopped.

  • Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5
    37 minutes ago, UlrichC-DE said:

    Thanks! This is good news overall.
    Anyone who wants can theoretically adapt the software.

     

    The changes are at your own risk.
    Of course the support does not have to support this.

     

    Also it is clear to have the source code is not legally equal to OpenSource.

    Personally I see no reason to adapt the software of the S5. After a sober consideration with all the consequences this makes little sense. Nice to be able to show the door to people who think they're in prison.


    I have often been told that buying an S5 printer is tantamount to incapacitation.

    Therefore I find it important to correct this with such contributions. Those who want and can, will not be stopped.

    It goes a bit beyond that; You could even add services to the printer that run in their own environment. They can use the internal API's to talk to the rest of the FW. So that should make it a lot more stable, since you won't have to modify anything (you're just adding extra services, so it's a bit more alike a micro service setup). Since you're not modifying any source code, you also don't have to worry about any copyright issues.

    The only downside to this is that when you update your firmware, these extra services will be removed (so you would need to re-install them again). It's not really difficult to create a script that does this automatically. As I (briefly) mentioned before, there have been people that added a cloud client to ultimakers in this way (so basicly; a small program that pretty much does the same as the cloud client that we provide, but it uses a different format and a different end-point).

     

     

    • Thanks 2
    Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5

    That's right. That's the better way, too.

     

    Off the liver...

     

    Services that query and influence marlin could be written as Deamon.

    - Interventions during printing. Monitor and dynamically regulate the hot/cold pressure bed.

    - Integration into the company network or control center. For example: Report activity, errors and completion to service XY.

    Network and Internet are available. This is very convenient.

     

    If I may guess and lean out of the window. I would guess that Marlin runs under the user "Ultimaker" and provides access to Marlin. Then you can also do this externally via SSH.

     

    I do not know the SW architecture. Only what I have seen, free of motivation.

    Hacks in Griffin would be necessary to change the often lamented printer behavior.

    - Bypass automatic leveling.

    - Prevent NFC periphery intercepts.

    - Prevent MS deprime

     

    I myself would probably just write a cronjob that cleans up the printer from time to time and takes out the garbage.

    I am not looking for a new hobby or job. I just want to print 🙂

  • Link to post
    Share on other sites

    Posted · Simplify3d Ultimaker S5
    19 minutes ago, UlrichC-DE said:

    Hacks in Griffin would be necessary to change the often lamented printer behavior.

    - Bypass automatic leveling.

    - Prevent NFC periphery intercepts.

    - Prevent MS deprime

    Yeah, mods like that would need to happen in Griffin itself. There is obviously a limit to what you can make modifiable.

    I think that the automatic leveling can be bypassed by changing some settings in a json file though.

     

    As for the MS deprime, if I remember correctly, it is one of the things that is being worked on to change that.

    • Like 1
    Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
     Share

    • Our picks

      • New here? Get ahead with a free onboarding course
        Hi,
         
        Often getting started is the most difficult part of any process. A good start sets you up for success and saves you time and energy that could be spent elsewhere. That is why we have a onboarding course ready for
        Ultimaker S5 Pro Bundle, Ultimaker S5, Ultimaker S3 Ultimaker 2+ Connect.   
        They're ready for you on the Ultimaker Academy platform. All you need to do to gain access is to register your product to gain free access. 
        Ready? Register your product here in just 60 seconds.
          • Like
        • 11 replies
    ×
    ×
    • Create New...