-
-
Notifications
You must be signed in to change notification settings - Fork 228
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Chamber temperature from thermistor without Enclosure plugin. #2562
Comments
Yes I agree that shouldn't be necessary to install the enclosure plugin when Octoprint already show the temperature in the UI with the chamber temperature reported with the C prefix. |
I also agree, it should be doable. I am unfamiliar with Octoprint's API, but I am guessing it probably expose the chamber temp in a similar way if it exist. Currently skimming through OctoDash code trying to figure out how these things are accessed. I never touched any TypeScript (and very little JavaScript) but I guess it should not be too hard to imitate what |
Edit: That API endpoint "just works"
@UnchartedBull I am unsure where to go if I wanted to contribute a patch to this feature. Tho maybe it would be easier for you to integrate this I guess a model needs to be created to represent the chamber data, or the one from the Same question for how to get that temperature on the display. Checking if the temperature is accessible seems to be a matter of looking up if this REST call returns status 200 or not. |
I suspect it would need adjustment to this section, as well as wherever the websocket updates this data. OctoDash/src/app/model/printer.model.ts Lines 1 to 12 in 88f5a89
|
There's a websocket involved? Sorry, I am not familiar at all with the architecture of the application 🙂 |
Yeah, octodash switched from api polling to websocket connection |
Looks like it's probably being set here: OctoDash/src/app/services/socket/socket.octoprint.service.ts Lines 224 to 235 in 88f5a89
|
"current" message do contain chamber temp! Added a "chamber" temperature in the model to match, and added the following where you pointed at this.printerStatus.chamber = {
current: Math.round(message?.current?.temps[0]?.chamber?.actual),
set: Math.round(message?.current?.temps[0]?.chamber?.target),
unit: '°C',
} Now, gotta get this on the webpage being displayed somehow! I have created this draft, so in case what I am doing is not too broken I could turn this into a PR #3654 |
@Ybalrid, yes I'm very interested. This is exactly what I'm looking for. |
Yeah, you would have to checkout my branch from the pull request and get it up and running with |
@Ybalrid |
No warranties this works for you: Assuming you're running 64bit, I have a build. But I only tested it on an Orange Pi 3 LTS running Armbain. However, I expect it to also run on Raspberry Pi OS or OctoPi on a Raspberry Pi Get this, unzip it into your /home/pi directory on your Pi, then run this command
Then, edit the /home/pi/.xinitrc file to replace the line that says "octodash" alone to That should look like this
Then reboot everything. To undo the above, you just undo the change you did to .xinitrc, and you delete the folder you unzipped. |
Unfortunately it doesn't work on my Raspberry 4 with Octopi (exec format error). |
It runs 32bit? |
@Caipitrooper try this https://github.com/Ybalrid/OctoDash/releases/download/chambertemp/linux-armv7l-unpacked.zip Replace arm64 in every file path mentioned above with armv7l and give it a spin |
Finally it works. Thank you so much @Ybalrid 👍 🥇 |
It would be great if we could see the chamber temperature from a chamber thermistor on the home screen without using the Enclosure plugin.
When checking the "Heated Chamber" box in the "Print bed and build volume" tab of the printer profile, the chamber temp shows up in OctoPrint. This is the temp I'd like to have next to the bed temp on the OctoDash home page.
The text was updated successfully, but these errors were encountered: