Anycubic Cloud component + frontend card

Zero docs and zero help from them :slight_smile: just done it on my own.

Afraid not with the USB camera unless they offer LAN access:

I plugged the usb cam into the pi and used motioneye for integration

1 Like

This is what I suggest. And anything else that acts as a pi webcam server, there must be options with built-in timelapse too

Why do u need timelaps on 3d printing ? You can use any cam alo pi cam. Maybe there are other integrations like motioneye who support slow mo

I don’t want timelapse personally but someone asked me about timelapse before…

A quick google led me to these options though:

Second option is just a cron script taking images every x seconds

Good to know🫱🏻‍🫲🏽

First off, I want to say that the Anycubic 3D printer cloud integration you’ve created is fantastic. It works seamlessly and has really enhanced my Home Assistant setup. I appreciate all the effort you’ve put into making this integration as smooth as possible.

In the past I tried and failed to connect despite several short-timed attempts at reverse engineering the app, firmware, binaries and associated files. This works and it works well with my Anycubic Mono M5S



I did notice that there are quite a few options that show as unavailable for the Anycubic Mono M5s. While the integration is excellent, I think some of these options might be better suited as Diagnostic sensors, particularly those that don’t change frequently. Additionally, since the M5S operates entirely over MQTT, it’s either online or offline—there’s not much in between. I also feel that raw codes, while valuable, might not be ideal for direct display on the dashboard but could be better utilized in the background or as attributes.

For instance, you might consider changing certain details to be attributes of the primary sensor. For example:

  • Print State: Printing
    • Approximate Completion: 7h
    • Current Layer: 2
  • Project: [Project Name]
    • Percent Complete

I’d be happy to help out or provide further feedback if you’re interested. This integration has a lot of potential, and I’m excited to see where it goes next!

Thanks again for your hard work!

Thanks @adamoutler ! I actually use some of your add-ons too so thanks for your hard work :slight_smile:

Yeah I’ll have to excuse myself with some of the entity naming etc, I’ve kind of added things whenever I worked them out so there’s a lot of tidying up to do in terms of removing redundant/old sensors like the raw ones.

My next steps were to work out which sensors are needed for which printers and make them more specific - right now that’s pretty much only the case for ACE sensors which I did exclude from printers without ACE support.

Would be great if you can download the diagnostic data for your resin printers and DM me that. Also if you enable debug mode in the config flow you’ll get raw mqtt data in your log, if you send me that I can see what needs handling/fixing

I might create a GitHub issue with all the sensors I plan to remove or consolidate in case any of the current users have something to say about them

1 Like

In the past couple of days Anycubic decided to release an update to break the way I was authenticating before.

They’ve actually gone to the trouble of hiring “NetEase Yidun” NetEase Yidun-One-Stop Security Solution who market themselves as anti-cheat developers for the games industry.

The new login method uses a complex javascript catcha method which I am unable to work out for now.

Current login tokens will work fine, until you get logged out in which case the previous versions will no longer work to auth.

I’ve released 0.1.0 which changes the way it logs onto the cloud, but unfortunately it requires more manual user intervention to extract the token from Anycubic’s website - the steps are all in the readme with a screenshot.

It’s pretty disappointing they’ve gone to this effort to be honest, and my multiple attempts to reach out to Anycubic via different routes have shown they have no interest in helping/working with me and appear to be actively working against me. Given how much data their app scrapes from users and sends to their servers every minute I guess I shouldn’t be surprised though…

Anyway, it’s working again now, and we’ll see if they keep up this game or not, and how much I can take before I sell my printer :sweat_smile:

1 Like

I looked at the source on the Anycubic cloud website. Looks like they’re using Casdoor oauth2. When I signed into the website, it logged me out of Home Assistant and I was notified my 3D printer was offline so I guess I invalidated my old login with the new.

It also upgraded my account upon login and I was forced to “forgot my password”, perform 2 CAPTCHAs, receive an email, enter a code,then change my password.

They’re still sending your password to their server though which makes me wonder why. They send the clientId along with a riskToken… maybe riskToken is client secret.

I looked into it and Casdoor has a python API which can be used, but it also requires a client secret to log into Casdoor.

The current method of login describes in release notes is to hijack the session from the browser and copy the token into HA. You need a client secret to renew tokens and stop session jacking.

The token is a JWT, HS512 token. Token expiration is measured in hours. Token will expire in exactly 90 days from time of receipt. There is a refresh token which can be used to create new tokens for reauthorizing.

1 Like

Might be worth it to ask for a Client Secret for Home Assistant, or for read-only username/password APIs. Session jacking is annoying

1 Like

I’ve tried to speak to anycubic several different ways and it’s pretty impossible, I have a pending ticket about it right now and their discord account has also promised me they’ve forwarded my messages up the ladder, but I have little hope anything will lead anywhere.

Casdoor is the established login method I implemented and was using before, the new addition is Netease Yidun captcha/protector.

This adds a new cookie which is included in all requests to the auth server. The cookie is created after calling an API at yidun’s servers using several heavily obfuscated javascript modules.

After trying to reverse engineer this new captcha for a few hours I gave up, as even if I managed to get something working they could change it at a moments notice.

Token jacking is sad but it works for now…

All I would need from anycubic is to whitelist my.home-assistant.io in their referrers for the makeronline oauth server, then I can simply use oauth with the integration and still use all their captcha stuff…

Oh and regarding the website logging out your integration - anycubic only allows one login at a time.

There appear to be 3 login slots each user can have - slicer, mobile app, website, each using a different casdoor clientid.

I’m using the website clientid in the integration, but in the past I’ve also had either the slicer or mobile app get logged out when I was developing the integration. I haven’t had that happen for a while though so I suspect anycubic now allows one login session per client id/app

Don’t forget the printer itself. They’re pretty liberal in the logs. I think I might be able to get those credentials.

Just added my Anycubic Kobra 2 Pro and it works perfectly. TYSM! Was waiting for this badly

1 Like