Check out my first novel, midnight's simulacra!

InaMORata 2.0: Difference between revisions

From dankwiki
(Created page with "In 2024, I redesigned the InaMORAta to use a single ESP32 MCU and 5v ARGB fans (the previous design required two MCUs, and used 12v RGB fans).")
 
 
(13 intermediate revisions by the same user not shown)
Line 1: Line 1:
In 2024, I redesigned the [[InaMORAta]] to use a single ESP32 MCU and 5v ARGB fans (the previous design required two MCUs, and used 12v RGB fans).
[[File:PXL 20220916 080028177.jpg|right|thumb|the completed apparatus]]
In 2024, I redesigned the [[InaMORAta]] to use 5v ARGB fans (the previous design used 12v RGB fans). I also significantly simplified the electronics. We get a single tachometer signal from the 9x fans, and a tachometer signal from both pumps. Similarly, we control all 9x fans with a single PWM signal, and control the pumps independently with two more. We control the fans' LEDs as three series of 36 LEDs each, each corresponding to a row of three fans. We measure and report ambient temperature. A distinct sensor provides visual display of speed and coolant temperature. The total cost runs between $600 and $800, and is easily capable of cooling a remote 2kW machine. It's by no means a great value, but watercooling rarely is.
 
Inputs to the inaMORata are a 12V AC adapter and a G¼" tube of hot coolant. Outputs are heat, light, and a G¼" tube of cooled coolant. Additionally, MQTT over IP over WiFi provides control and report.
 
==Components==
* [[MO-RA3|Mo-Ra3]] 420mm radiator plus front cover
* 9x 140mm [https://www.arctic.de/media/4c/b3/f9/1694526877/Spec_Sheet_P14_PWM_PST_A-RGB_EN.pdf Arctic P14 ARGB] 140mm fans
* 12V AC adapter rated for at least 9A (108W)
* 12V->5V buck converter rated for at least 5A (25W) output
* [[CODI6]] (controls ARGB, distributes 12V+5V power to fans)
* 2x SATA splitters
* One SATA power cable (4 wires)
* 4x heatshrink solder tubes
* EKWB [https://www.ekwb.com/shop/ek-xtop-revo-dual-d5-pwm-serial-incl-2x-pump EK-XTOP] dual D5 pump
* Perfboard, onto which is soldered:
** Espressif [[ESP32|ESP-WROOM-32S]] microcontroller (controls fans, sensors, provides MMQT+WiFi)
** 4.7kΩ resistor
** 3x 0.1nF ceramic capacitors
** 3x 10kΩ resistors
** 3x 3.3kΩ resistors
** 3x Molex 4-pin fan headers
** DS18B20 digital thermistor
* USB-C header with pigtails
* G¼" flow sensor with visual display (optional)
 
You'll need a hot air gun and a soldering iron (plus whatever you use to assemble the Mo-Ra, and attach things to it).
 
The flow sensor is optional, but provides local visual display of coolant temperature and flow. It's about $50; I like the [https://www.amazon.com/DIYhz-displaydigital-Thermometer-Temperature-Indicator DIYhz]. If you get it, power it off one of the CODI6's fan headers. These don't tend to have any digital output, so don't bother trying to sample a tach from it (there's only two wires: 12V and ground).
 
==Microelectronics==
* Solder the ESP32 onto the perfboard
* Solder the 3x Molex 4-pin fan headers onto the perfboard
** It's best to solder all 4 pins, but you '''must''' solder the last two
* Wire the 3V3 and GND pins of the ESP32 to the right side's +/- channels
 
===For PWM speed control===
* Wire the fourth pin (PWM) of each fan header to pins 33, 32, and 25 on the ESP32
===For tachometry===
* Wire the third pin (tach) of each fan header to the other side of the perfboard
* Solder a 10kΩ resistor to the + channel to the tach pin's row
* Solder a 3.3kΩ resistor from each tach pin's row down to the next row
* Solder a 0.1nF capacitor from each of these rows to the - channel
* Wire these same rows to pins 5, 22, and 23 on the ESP32
===For ambient temp sensing===
* Solder a 4.7kΩ resistor from the + channel to some row
* Wire this row to pin 4 on the ESP32
* Solder the yellow (data) wire of the DS18B20 to this same row
* Solder the black (ground) wire of the DS18B20 to the - channel
* Solder the black (ground) wire of the DS18B20 to the + channel
 
==Power==
We have power requirements at both 12V and 5V, ultimately sourced at 12V. The 12 LEDs of each PF-14 take 0.4A at 5V. With 9 of them, that's 18W. The ESP32 will also draw 5V, but not more than a watt. Assume 90% efficiency for a total of 20.4 input watts. At 12V, we have 23W to each of our pumps (46W total). Each fan takes 0.17A of 12V, and thus 9 draw 18.36W. That's 64.36W and 20.4W, a total of 84.76W. 85W at 12V requires just over 7A.
 
* 12V AC adapter runs to barreljack on/off switch
* On/off switch takes 12V to SATA and buck converter
** The two sets of three wires are connected with two heatshrink solder tubes
* Buck converter takes 5V to SATA and USB-C pigtails
** The two sets of three wires are connected with two heatshrink solder tubes
* USB-C takes 5V to ESP32
* SATA takes 12V+5V to SATA splitter
* SATA splitter takes 12V+5V to CODI6 + SATA splitter
* SATA splitter takes 12V to 2x pumps
* CODI6 takes 12V (via fan hookup) and 5V (via ARGB hookup) to 3x rightmost fans
* CODI6 takes 12V (via fan hookup) to flow sensor
* 3x rightmost fans take 12V+5V to corresponding 3x middle fans
* 3x middle fans takes 12V+5V to corresponding 3x leftmost fans
 
We don't need to expose the 5V to the pumps, but it doesn't hurt anything. The CODI6 has a 5-pin wire, where three pins (12V, 5V, ground) go to a SATA connector, and two pins (tach, pwm) go to a 4-hole Molex fan connector. This connector doesn't carry 12V or ground like a 4-wire Molex would.
 
At this point, we have three hookups unconnected: the three Molex 4-hole connectors coming off the pumps and CODI6. Each has a tach and PWM signal, and none are drawing power. Hook them up to the perfboard's Molex 4-pin headers.

Latest revision as of 07:38, 1 May 2024

the completed apparatus

In 2024, I redesigned the InaMORAta to use 5v ARGB fans (the previous design used 12v RGB fans). I also significantly simplified the electronics. We get a single tachometer signal from the 9x fans, and a tachometer signal from both pumps. Similarly, we control all 9x fans with a single PWM signal, and control the pumps independently with two more. We control the fans' LEDs as three series of 36 LEDs each, each corresponding to a row of three fans. We measure and report ambient temperature. A distinct sensor provides visual display of speed and coolant temperature. The total cost runs between $600 and $800, and is easily capable of cooling a remote 2kW machine. It's by no means a great value, but watercooling rarely is.

Inputs to the inaMORata are a 12V AC adapter and a G¼" tube of hot coolant. Outputs are heat, light, and a G¼" tube of cooled coolant. Additionally, MQTT over IP over WiFi provides control and report.

Components

  • Mo-Ra3 420mm radiator plus front cover
  • 9x 140mm Arctic P14 ARGB 140mm fans
  • 12V AC adapter rated for at least 9A (108W)
  • 12V->5V buck converter rated for at least 5A (25W) output
  • CODI6 (controls ARGB, distributes 12V+5V power to fans)
  • 2x SATA splitters
  • One SATA power cable (4 wires)
  • 4x heatshrink solder tubes
  • EKWB EK-XTOP dual D5 pump
  • Perfboard, onto which is soldered:
    • Espressif ESP-WROOM-32S microcontroller (controls fans, sensors, provides MMQT+WiFi)
    • 4.7kΩ resistor
    • 3x 0.1nF ceramic capacitors
    • 3x 10kΩ resistors
    • 3x 3.3kΩ resistors
    • 3x Molex 4-pin fan headers
    • DS18B20 digital thermistor
  • USB-C header with pigtails
  • G¼" flow sensor with visual display (optional)

You'll need a hot air gun and a soldering iron (plus whatever you use to assemble the Mo-Ra, and attach things to it).

The flow sensor is optional, but provides local visual display of coolant temperature and flow. It's about $50; I like the DIYhz. If you get it, power it off one of the CODI6's fan headers. These don't tend to have any digital output, so don't bother trying to sample a tach from it (there's only two wires: 12V and ground).

Microelectronics

  • Solder the ESP32 onto the perfboard
  • Solder the 3x Molex 4-pin fan headers onto the perfboard
    • It's best to solder all 4 pins, but you must solder the last two
  • Wire the 3V3 and GND pins of the ESP32 to the right side's +/- channels

For PWM speed control

  • Wire the fourth pin (PWM) of each fan header to pins 33, 32, and 25 on the ESP32

For tachometry

  • Wire the third pin (tach) of each fan header to the other side of the perfboard
  • Solder a 10kΩ resistor to the + channel to the tach pin's row
  • Solder a 3.3kΩ resistor from each tach pin's row down to the next row
  • Solder a 0.1nF capacitor from each of these rows to the - channel
  • Wire these same rows to pins 5, 22, and 23 on the ESP32

For ambient temp sensing

  • Solder a 4.7kΩ resistor from the + channel to some row
  • Wire this row to pin 4 on the ESP32
  • Solder the yellow (data) wire of the DS18B20 to this same row
  • Solder the black (ground) wire of the DS18B20 to the - channel
  • Solder the black (ground) wire of the DS18B20 to the + channel

Power

We have power requirements at both 12V and 5V, ultimately sourced at 12V. The 12 LEDs of each PF-14 take 0.4A at 5V. With 9 of them, that's 18W. The ESP32 will also draw 5V, but not more than a watt. Assume 90% efficiency for a total of 20.4 input watts. At 12V, we have 23W to each of our pumps (46W total). Each fan takes 0.17A of 12V, and thus 9 draw 18.36W. That's 64.36W and 20.4W, a total of 84.76W. 85W at 12V requires just over 7A.

  • 12V AC adapter runs to barreljack on/off switch
  • On/off switch takes 12V to SATA and buck converter
    • The two sets of three wires are connected with two heatshrink solder tubes
  • Buck converter takes 5V to SATA and USB-C pigtails
    • The two sets of three wires are connected with two heatshrink solder tubes
  • USB-C takes 5V to ESP32
  • SATA takes 12V+5V to SATA splitter
  • SATA splitter takes 12V+5V to CODI6 + SATA splitter
  • SATA splitter takes 12V to 2x pumps
  • CODI6 takes 12V (via fan hookup) and 5V (via ARGB hookup) to 3x rightmost fans
  • CODI6 takes 12V (via fan hookup) to flow sensor
  • 3x rightmost fans take 12V+5V to corresponding 3x middle fans
  • 3x middle fans takes 12V+5V to corresponding 3x leftmost fans

We don't need to expose the 5V to the pumps, but it doesn't hurt anything. The CODI6 has a 5-pin wire, where three pins (12V, 5V, ground) go to a SATA connector, and two pins (tach, pwm) go to a 4-hole Molex fan connector. This connector doesn't carry 12V or ground like a 4-wire Molex would.

At this point, we have three hookups unconnected: the three Molex 4-hole connectors coming off the pumps and CODI6. Each has a tach and PWM signal, and none are drawing power. Hook them up to the perfboard's Molex 4-pin headers.