• Models
  • Contests
  • Slicer
  • Login
  • Start Here
    thingiverse-iconprintables-iconcults3d-iconmakerworld-iconmyminifactory-icon

    3D GO

    3D ModelsContestsCollectionsSaved ModelsOn a mobile device?

3D GO

Privacy Policy
Jetpack - Chamber heater for the Core One 3D Printer File Image 1
Jetpack - Chamber heater for the Core One 3D Printer File Image 2
Jetpack - Chamber heater for the Core One 3D Printer File Image 3
Jetpack - Chamber heater for the Core One 3D Printer File Image 4
Jetpack - Chamber heater for the Core One 3D Printer File Image 5
Jetpack - Chamber heater for the Core One 3D Printer File Image 6
Jetpack - Chamber heater for the Core One 3D Printer File Image 7
Jetpack - Chamber heater for the Core One 3D Printer File Image 8
Jetpack - Chamber heater for the Core One 3D Printer File Thumbnail 1
Jetpack - Chamber heater for the Core One 3D Printer File Thumbnail 2
Jetpack - Chamber heater for the Core One 3D Printer File Thumbnail 3
Jetpack - Chamber heater for the Core One 3D Printer File Thumbnail 4
Jetpack - Chamber heater for the Core One 3D Printer File Thumbnail 5
Jetpack - Chamber heater for the Core One 3D Printer File Thumbnail 6
Jetpack - Chamber heater for the Core One 3D Printer File Thumbnail 7
Jetpack - Chamber heater for the Core One 3D Printer File Thumbnail 8

Jetpack - Chamber heater for the Core One

Philip Sørensen avatarPhilip Sørensen

May 27, 2026

printables-icon
DescriptionCommentsTags

Description

This chamber heater fits neatly into the corner of your printer without extensive modifications to the printer chamber. It is intended to be controlled by an ESP32, which communicates with the printer via the PrusaLink API so that the heater functions fully automatically once installed.

The model is released as a project-in-progress. The control system, safety layers, automatic printer integration, and the internal mount of the heater are all complete and ready for use. However, the ESP32, the relays, and the dedicated PSU, which are intended to be mounted on the back of the printer, do not yet have a finished mount. Permanent mounting of the external electronics will follow when I am able to return to this project in a couple of weeks, but the heater is fully functional in the current state. For now, I have included a case for the LR7843 MOSFET modules, but that is all you'll get at the moment :)

Important notices before you begin

Before you begin this project, please read and understand the following: I am not a qualified electrician, so proceed with this project at your own risk. While I have done my best to make this project safe for others to follow, please consider that this is a high-power electrical installation. There is potential danger both from electrical shocks and from fire hazards.

Only proceed with this project if you accept liability for all damage that may result. Be critical of my implementation, and seek advice from someone qualified if you are unable to judge the safety of the project yourself.

Features

This design has the following advantages:

  • Allows the installation of a chamber heater without major changes to the body of the printer

  • Features a 200W heater controlled with ESP32

  • Stable temperatures are maintained via a PID loop informed by three thermistors:

    • Temperature of the air at the top of the chamber

    • Temperature of the air at the heater outlet

    • Temperature of the heater case

  • Includes PrusaLink API integration, which ensures that

    • The heater is only used when printing in materials that require high temperatures (ASA,ABS,PC,PA, etc.)

    • The heater automatically starts when the printer starts

    • If the printer stops for any reason, either because the print finished or because it encountered a problem, then the heater shuts off automatically.

  • The code also provides optional wifi control of the heater, which allows you t

    • Read out all relevant telemetry remotely (temperatures, heating power, printer state, etc.)

    • Take manual control of the heater for testing purposes

    • Override or trigger a safety abort.

When you print in materials that require high chamber temperatures, then this heater will significantly shorten the heatup time and allow you to much more easily reach your target temperature. A faster startup is obviously great, but holding a higher chamber temperature also reduces the warp of your prints and it should also significantly improve the layer adhesion of some materials.

Safety design

As mentioned above, I hold no qualifications, and I can provide no guarantees of safety. However, to maximise the safety of this design, I have implemented the following design features: 

Use of 24V power: First of all, I decided to use a 24V heater. This is much safer to work with than mains power because 24V is too low a voltage to shock a human. However, please understand that high-power currents might still cause damage if any wires are accidentally short-circuited. The drawback of using 24V power instead of mains power is that the heater needs a separate power supply (PSU), but I decided that the added safety is worth the extra space that the PSU takes up.

Heater control: To minimize any danger of fire or damage to the printer, I have given the heater several redundant layers of protection:

  1. Primary PID control: The heater is controlled with sensor data. In principle, this should prevent the heater from ever reaching temperatures that can damage it or its surroundings. This is implemented in software through the PID loop, which checks the air temperature in the chamber and at the heater and adjusts the power accordingly.

  2. Secondary temperature limits: In addition to the target temperatures, the software also checks that the case stays within safe limits. This is particularly important for protection against fan failure:

    1. To protect against fan failure during heater startup, where the case and the air starts with similar temperatures, the ESP32 is instructed to throw an abort if the case rises faster than the outlet temperature. This aborts the heater and locks the fan to max power.

    2. To protect against fan failure in the middle of operation, where the outlet air temperature is much hotter than the case temperature, the power is intended to be limited by the case temperature. This means that the power will be immediately limited or cut entirely if the case starts rising.

    3. The fan will remain on as long as any component is hotter than 40C, or indefinitely if an abort has been triggered.

  3. Hardware thermal switch: If the software somehow fails to regulate the temperature, then the heater has a thermal switch in contact with the case. This means that the heater will be automatically by disabled once the case exceeds the limit of the switch. This switch is reusable and automatically resets once the temperature has dropped. This acts as a redundant hardware control system, which maintains the case at a safe maximum temperature regardless of what the software does

  4. Redundant thermal fuse: If somehow all of the above fails, and the temperature above the heater exceeds the safe threshold, then the heater is also equipped with a thermal fuse that will permanently disconnect power from the heater.

PrusaLink as a deadman switch: In addition to the above temperature control systems, the PrusaLink integration acts as a deadman switch for the heater. This means that the ESP32 checks every five seconds that the printer is still printing. If the printer for any reason fails to confirm that it is still printing, then the heater is disabled. Therefore, the heater both automatically turns off when the print is finished, and it also disables itself if the printer encounters and error.

Passive safety: The LR7843 modules can only allow current to reach the heater if they receive a voltage on the control side. Because the ESP32 is powered via USB-C from the printer, this means that the heater circuit defaults to a closed state. In this way, the LR7843 modules can only be activated if the printer has power and the ESP32 has power. Power loss of the printer ensures automatic shutdown of the heater. 

Galvanic isolation: It was very important to me to ensure that no problem in the 24V heater circuit could damage the printer. Therefore, this project uses LR7843 optocoupled MOSFET modules. The optocoupling means that there is no direct electrical contact between the 24V heater system and the electrical system made up of the ESP32 and the printer. Instead, the LR7843's communicate the control signal through an optical signal that ensures no voltage or shocks can leak back into the printer or the ESP32.

ESP32 and software

I used an ESP32 microcontroller to manage this heater upgrade. This is great for the job because it is easy to use, dirt cheap, and it has build in wifi for PrusaLink integration. It also has the built-in components which are necessary to read thermistors and regulate the heater and fan with Pulse Width Modulation (PWM).

I used an ESP32-S3, where is S3 indicates their high-performance version. Many other ESP32 variants exist. Probably the S3 specification is not necessary, and I'm sure most of the other variants work just fine for this project. If you buy something other than an S3, then just make sure that it has wifi, at least 3 good ADC channels (for thermistors) and and least two PWM channels. (Maybe they all have this - I didn't check)

I wrote the firmware from scratch (no vibe coding) in the Arduino language. You can find the firmware on my github page:
https://github.com/philip-soerensen/esp32-chamber-heater-core-one

The instructions for how to set up the ESP32 are on the GitHub page. Once the firmware is installed on the ESP32, it can be powered from the USB-C port on the printer (or any other USB-C power supply) and function completely without user interaction.

Bill of materials

At the moment, I count a total cost of €83 from the BOM below. Prices may fluctuate, so you might either find a better or worse deal than that.

Bill of materials:

  • ESP32 Supermini Dev Board (https://aliexpress.com/item/1005010580012002.html)

  • Short USB-C cable to power the ESP32 from the xBuddy board (https://aliexpress.com/item/1005011775608905.html)

  • 2 x LR7843 Optocoupled MOSFET modules (https://aliexpress.com/item/1005006152963254.html)

  • If you also have Buddy3D Camera: USB-C splitter (https://aliexpress.com/item/1005007045809081.html)

  • 300W 24V DC power supply (https://aliexpress.com/item/1005008936305760.html)

  • Bimetalic thermal switch, 16A, Normally closed, 75C (https://aliexpress.com/item/1005005556051317.html)

  • 200W 24V DC PTC heater (https://aliexpress.com/item/1005004218891703.html)

  • At least 1 meter of large-gauge wire suitable for up to 16A @ 24V. I suggest 2 meters of 14 AWG wire from here: (https://aliexpress.com/item/1005001876813940.html)

  • At least 3 NTC 10K thermistors with 1m wire (https://aliexpress.com/item/1005009681281937.html)

  • Backup thermal fuse, 75C and 15A, (https://aliexpress.com/item/1005009345938308.html)

  • Screw block terminals. These I bought in the local hardware store, I but I believe they match the 12-piece 20A strip here: (https://aliexpress.com/item/1005006091337387.html). Unfortunately, I'm not able to confirm the match at this moment. If the don't match, let me know, and I'm happy to adjust the spacing in the model.

  • 3 x 10k resistors (https://aliexpress.com/item/1005007345052730.html)

  • Small perfboard / protoboard to mount ESP32, thermistors, and resistors. I used the following, but you might have to source something similar yourself (https://futuranet.it/prodotto/protoboard-160-contatti-a-saldare-con-linee-di-alimentazione/)

  • An AC power cable to power the PSU (you will have to cut off the head and then screw the wires directly into the PSU terminals). Example: (https://aliexpress.com/item/1005008168727108.html)

  • Assorted M3 screws for assembly

  • Jumper wires and solder kit

  • At least 10 x 2.54mm male pins (https://aliexpress.com/item/1005007385580884.html)

  • XH2.54 mounts (https://aliexpress.com/item/1005009724285837.html)

  • Thermal pad (I used a spare from the C1 kit)

- Optional: Optocoupled relay to disable the heater PSU if the printer and ESP32 is not powered. This is a redundant security feature that I have not yet implemented. The PSU output is already closed by the LR7843 mosfet modules, so adding this may not be justified. If you want to be extra careful, you can get one of these: (https://aliexpress.com/item/1005008067360081.html)

Print instructions

Since this will be near hot components, I recommend that you print everything in a material that has a very high temperature resistance, such as PCCF. You can potentially also use ASA/ABS, but if you do so, then I suggest that you lower the safety limits in the code. Do not even think of making this in PLA or PETG.

The components are easy to print, and beyond adding an extra perimeter or two to increase the margin of safety, I don't think they need any special settings.

Assembly instructions

  1. Prepare the heater cables

    The heater likely comes with both the fan wire and the heater wire crimped together into a single connector. That simplifies the connection, but would leave us unable to control fan power and heater power separately, which is a safety issue in our use case. Therefore, you will have to separate the wires.

    To do this, take a sharp knife like a utility knife or a pair of fine scissors, and carefully cut the sheath that is around the wires. Start at one end, and then slowly work up the wires. When doing so, work slowly and be very careful not to damage the wires themselves.

    Once the sheath has been removed and the two wires are separately visible, you will have to cut one of them free of the connector. To avoid soldering on the high-power line, cut the thin wire, which controls the fan. Cut it as close to the connector as you can. You will then have to solder this together with a jumper cable or similar.

    Repeat this for both the positive and negative wires. The wires should be coded, but if they are not, then be careful to keep track of the polarity.

  2. Remove the metal mounting bracket from the heater

    The heater comes with a metal mounting bracket on the side which we will not need. Remove it, but keep the screw, which will be needed later. I suggest you screw the screw back in to avoid loosing it. Be careful to screw straight and evenly - the aluminum is soft and easily stripped.

  3. Unscrew the 4 screws holding the fan in place on the top of the heater. The fan and protection grid will come loose, so be careful to not stress any wires.

  4. Assemble the printed fan mount and the mounting rail by screwing the fan mount to the appropriate holes in the rail. Use the following screws in the following two places:


  5. Place the thermistor and thermal switch into the appropriate slots in the rail.

    The thermal switch should come with a bit of electrically insulating wrap. You might have to trim this a bit to fit it in the slot. Be careful to keep enough to insulate it from electrically contacting the heater case.

  6. Cut the thermal pad to the same size as the termistor slot and place it on top of the thermistor. Make sure to remove and protecting wrapping so that it can stick properly on both sides.

  7. Carefully attach the mount to the side of the heater, where the metal mounting used to be. Make sure that the thermistor and the thermal switch stay in their slots until you have tightened down the screw.

  8. Now attach the fan mount to the fan. A few notes on this:

    8.1) Place the fan grid on top of the mount before you screw in anything. The protection grid should sit on top of everything.

    8.2) The rear left screw will be very hard to reach, as a screw driver is partially blocked from above. You could leave it out if you can't reach, but it should be possible screw it in by using a pair of pliers from the side. Once the screw has gone in a few centimeters, it will become possible to use a screw driver to finish the job. I apologize in advance for this part of the design!

    8.3) Make sure you screw all screws in very straight, and make sure that the fan is setting straight on top of the heater. The screws will bind in the aluminium if they are not perfectly straight, and you will then risk stripping the soft aluminium thread.

  9. Attach the second thermistor to the bottom protection grid, i.e. in the opposite end from the fan. I used a bit of copper wire to tie the thermistor to the grid. Perhaps a more elegant solution is possible, but this works quite well.

  10. Prepare the wiring:

    10.1) Insert the two heater power cables as well the thermal switch leads and the two thermistor wires through side port in the side of the fan mount. For now, leave the thermister wires in the of the rear end of the slot (i.e., near the rail) where they don't interfere with the rest of the cables.

    10.2) Cut off a 4-wire segment from the screw block terminals and attach the two thermal switch wires on the rear two, then attach the negative heater wire on the third slot from the rear and finally the positve heater power to the front terminal slot.

    10.3) Secure the terminal to the two mounting points on the fan mount once all four wires have been connected. The thermal switch cables should be just long enough to reach.

    10.5) Add the thermal fuse between the second thermal switch terminal and the negative heater wire.

    (Todo: add a diagram here)

    Your heater unit should now be complete, congrats!

  11. Prepare the control board:

    1. If your ESP32 didn't come with pins pre-soldered, solder them on now. The pins should face downwards.

    2. Solder the perfboard according to the schematic here:

    3. Ideally, check the connections with a multimeter to make sure you didn't create any shorts.
      ( I actually actually cought a mistake here which would have fried my ESP32 if I connected power before testing, so I highly encourage you to test first also!)

  12. Prepare the LR7843 MOSFET modules.
    If these came without pre-soldered terminals, solder the terminals on now.

  13. Testing:

    Now connect everything according to this diagram and verify that everything works before you start installing things on the printer:



    1) You can use any external USB-C power source to turn on the ESP32. It should start blinking rapidly.

    2) The ESP32 is configured to start the printer once a print with ABS, ASA, PC, or PA is started. To test this function, I suggest that you unload the filament from the printer and start a e.g. an ASA test print with no filament inserted. You may have to override a few "no filament present" warning on the printer, but it will do it if you tell it to.

    3) Once the ESP32 detects that printer has started a high-temperature print, it should engage the heater and fan. You should be able to hear and feel this. Also, note that the light on LR7843 MOSFET modules turn on when they open, so you should also be able to see these lights.

    4) If you have a multimeter, then you can do a dry run with just power on the ESP32 and no power on the heater PSU. You should be able to see voltage being applied to the MOSFET modules, but the mosfet LED's will not turn on unless there is also power on the heater PSU.

    5) Of course, throughout all this testing, be reading to immediately cut power in case you miswired something. You can immediately set fire to a wire if you attach things incorrectly, so be ready to deal with this. 

    6) If something doesn't work, feel free to contact me. I'm happy to help.

  14. Once everything works as intended, you can install the heater in your printer. To do this, proceed as follows:

    1. Remove the rear cable cover from the back of the printer. This is secured by two black screws on the inside of the chamber, behind the rear z-screw.

    2. Remove the filament sensor from the right panel by unscrewing the two screws on the handle / filament inlet.

    3. Remove the right side panel by removing the rivets. This is most easily done with a tool like a pair of small pinchers or by pressing on the rivets from the inside of the chamber. Keep the rivets, as you will reuse them to reinstall the panel later. 

    4. Remove the two rivets from the rear profile, where we will later install the heater with M3 screws.

    5. Please the air-redirecting ramp into the corner.

    6. Insert a ruber grommet in the unused hole in the back cover, where we will send all our wires through.

    7. Pull the power cables, the fan cables, and the thermistor cables through the back cover hole, and attach power cables to the heater assembly. Do this before you attach it, because you will not have space later.

    8. Attach the heater assembly to the rear profile by using two M3 screws of length M3x8 mm for the top, and M3x12 mm for the bottom. These are the ideal screw lengths, but nothing bad happens if you use a longer screw on the top or a shorter screw on the bottom. These are the locations:


    9. Install the chamber temperature probe. You can do this by unscrewing the chamber fans and guiding the temperature probe wire up between the fans. You can then fix it on top of the chamber fans with a little nylon zip tie.

    10. Close everything back up by reinstalling the side panel using the original rivets, and reinstall the handle/filament sensor.

  15. Finish up the electronics wiring, and you're good to go!

Note that the last step should really be to attach the external electronics in a nice way to the back of the printer. I still have not finished designing that - but I promise a solution will come soon :)

Acknowledgements

  • Prusa: This project would not have been possible with the publicly available CAD files which Pruse has made available for the Core One: (link here). These CAD models were used extensively as a reference, and although this model contains no parts of the original CAD, it was a major help. Thank you to Prusa for continuing to support your community in this way.

  • The Discord Community: I received lots of useful feedback from members of the Official Prusa Discord server. I especially had many good discussions with KaszpiR, who provided lots of useful suggestions.

  • The design was made in Onshape.

License:

Creative Commons — Attribution — Noncommercial

Related Models

#3DBenchy - The jolly 3D printing torture-test by CreativeTools.se preview image

#3DBenchy - The jolly 3D printing torture-test by CreativeTools.se

CreativeTools profile image

CreativeTools

90,948

Important information sign for 3D printers / Wichtiges Hinweisschild für 3D-Drucker :) preview image

Important information sign for 3D printers / Wichtiges Hinweisschild für 3D-Drucker :)

Pat_S profile image

Pat_S

3d Printer Printing 3d Printer preview image

3d Printer Printing 3d Printer

JAJMWHungFamily profile image

JAJMWHungFamily

944

Self-Watering Planter (Small) preview image

Self-Watering Planter (Small)

parallelgoods profile image

parallelgoods

73,177

X, Y and Z calibration tool for IDEX / dual extruder / dual color 3D printers preview image

X, Y and Z calibration tool for IDEX / dual extruder / dual color 3D printers

Voxel3D_NL profile image

Voxel3D_NL

207

sign: don't touch my 3d printer preview image

sign: don't touch my 3d printer

Izzodesign74 profile image

Izzodesign74

646

All In One 3D Printer test preview image

All In One 3D Printer test

majda107 profile image

majda107

64,525

axes calibrage cube-xyz for 3d printers preview image

axes calibrage cube-xyz for 3d printers

H- printed profile image

H- printed

9

7