Please login or register.

Login with username, password and session length
Advanced search  

News:

Pages: [1]   Go Down

Author Topic: NEW: Temperature Monitor control strip for G4 MDD  (Read 888 times)

UnexpectedBomb

  • 16 MB
  • ***
  • Posts: 21
    • GitHub account
NEW: Temperature Monitor control strip for G4 MDD
« on: July 12, 2026, 01:18:03 PM »

Hi all,

I've been wishing I could get eyes on my MDD CPU temp for a long time, always worrying that it could be cooking without me knowing it, so I began working on a little side project that, to my knowledge, didn't previously exist: a Control Strip module that shows live CPU and case temperature under Mac OS 9 on the G4 MDD, reading straight from the machine's real hardware sensors.

https://github.com/UnexpectedBomb/MacOS9-G4-CPU-Temp

I was aware of a similar CSM existing in "Jeremy's CSM Bundle" but that one reads the PowerPC's on-chip Thermal Assist Unit (TAU). Motorola disabled the TAU on the 7450/7455 family, so on an MDD (and other Apollo-based G4s) it can't give you a real reading at all. This module ignores the TAU entirely and talks over the Uni-N / "KeyWest" I²C bus to the same chips Apple's firmware uses:

- DS1775 digital thermometer to get CPU temperature (within 0.5 °C accuracy, vs the TAU's ±12 °C spec)
- ADM1030 fan controller's local sensor to get case temperature

What it does:

- Shows CPU or case temperature right in the Control Strip, updating every couple of seconds
- Click the tile for a menu: pick the reading (CPU / Case) and the units (°F / °C) as two independent groups
- Text turns red as the CPU approaches its safe limit
- A Notification Manager alert pops up if the CPU ever exceeds the safe threshold (latched — it warns once, not in a loop) to prevent your CPU(s) from getting extra toasty
- Native look: bold text, fixed-width cell, custom Control-Strip-style icon
- Loads silently at startup like any stock module

It is strictly read-only on the hardware. It only reads the sensor temperature registers as an SMBus master. It never writes a sensor, fan, or config register, so it can't interfere with the ADM1030's automatic fan control. (I did try to add a fan-RPM readout, but that requires enabling the ADM1030's tachometer via a config write, and on my machine that audibly disturbed the fan... it was very angry with me... so I dropped it. Not worth frying anything!)

Give it a test-drive and let me know your experience; hopefully it gives you sane readings. I haven't tested on anything other than my MDD (FW400) so if there's other models it's compatible with, please let me know what hardware you used and how it went.

This was developed in parallel with another Mac OS 9 effort of mine, one that I think will be very exciting once it's done... you should be hearing about it hopefully later this month  ;)

-UB
Logged

GaryN

  • Project Patron
  • 1024 MB
  • *
  • Posts: 1650
  • active member
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #1 on: July 12, 2026, 01:49:46 PM »

I've been wishing for this for years.
I'll try it on my 2003 MDD with Sonnet MDX 2x1.8 Ghz.
I'll report back.
Logged

GaryN

  • Project Patron
  • 1024 MB
  • *
  • Posts: 1650
  • active member
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #2 on: July 12, 2026, 07:46:50 PM »

So… I may just be getting old and senile, but I cannot, for the life of me, successfully un-bin the file in the dist folder or any other .bin file in the package with any utility I have. That includes Stuffit Expander, Stuffit Deluxe, The Unarchiver and I forget what else.

What did you use to bin them?

Please forgive me. I can't help myself… the "UnexpectedBomb" jokes just write themselves…
Logged

UnexpectedBomb

  • 16 MB
  • ***
  • Posts: 21
    • GitHub account
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #3 on: July 12, 2026, 08:43:55 PM »

Hehe, I knew that username would get some laughs around here.

I cannot, for the life of me, successfully un-bin the file in the dist folder or any other .bin file in the package with any utility I have.

Sorry about that. It was a bug on my end. The .bin files were built by my cross-compiler toolchain, which writes a MacBinary header with a CRC that stricter decoders (Stuffit, Unarchiver) reject. I re-encoded the .bin as proper MacBinary II, and added a BinHex version (.hqx) as an alternative. Try now.
Logged

IIO

  • Staff Member
  • 4096 MB
  • *******
  • Posts: 4847
  • just a number
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #4 on: July 13, 2026, 06:46:05 AM »

i´ve made a max app (and vst plug-in) long ago (using a driver by somebody else) which does that, but which for some reason only works on half of my computers.

i understand that most apple computers did not have digital thermometers at that time, but i dont understand why one G4-867 reports it and another G4-867 (with the same model number) does not?
Logged
insert arbitrary signature here

joevt

  • 128 MB
  • ****
  • Posts: 168
  • New Member
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #5 on: July 13, 2026, 12:42:55 PM »

i´ve made a max app (and vst plug-in) long ago (using a driver by somebody else) which does that, but which for some reason only works on half of my computers.

i understand that most apple computers did not have digital thermometers at that time, but i dont understand why one G4-867 reports it and another G4-867 (with the same model number) does not?
Might be a bug in your code. Use Open Firmware to access the I2C to see if it reports it?
Logged

GaryN

  • Project Patron
  • 1024 MB
  • *
  • Posts: 1650
  • active member
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #6 on: July 13, 2026, 06:22:13 PM »

Well, I'll be…  You've done it!

It works on my 7450 oops, 7447-based Sonnet MDX. It's a f**kin miracle!

Thank you  Thank you  Thank you!!

Well, almost……

Everything went exactly as it should. EXCEPT: It doesn't refresh itself - unless you prod it with the cursor.
It seems to track the temps well but the Control Strip window only refreshes if you click on it.
It's acting more like an app than a CS module - the display going into the background until brought back to the front with a click.


« Last Edit: July 14, 2026, 04:02:06 PM by GaryN »
Logged

n8blz

  • 16 MB
  • ***
  • Posts: 30
  • New Member
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #7 on: July 13, 2026, 10:41:21 PM »

You’ve been knocking them out of the erm, PARC, lately.

Any chance this could be adapted for Mini G4s?
Logged

UnexpectedBomb

  • 16 MB
  • ***
  • Posts: 21
    • GitHub account
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #8 on: July 14, 2026, 05:12:55 AM »

It doesn't refresh itself - unless you prod it with the cursor.

Hmm I'll look into this. I definitely intended it to refresh automatically.

Any chance this could be adapted for Mini G4s?

I believe this is possible! OS 9 should be able to reach the Mini's MAX6642 temperature sensor chip. My own Mini would certainly benefit from that. Stay tuned.
Logged

n8blz

  • 16 MB
  • ***
  • Posts: 30
  • New Member
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #9 on: July 14, 2026, 11:29:08 PM »

With the mini g4 mouse freeze and audio issues fixed, *and* a working temp mon for the mini g4, I guess the only other thing I could desire is a Coke.
Logged

smilesdavis

  • 1024 MB
  • ******
  • Posts: 1255
  • ...
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #10 on: July 15, 2026, 01:48:13 AM »

I would love a pci mod for the mac mini so we can attach an expansion chassis :)
Logged
Gestalt: 40 47 54 55 58(new!) 65 67 69 112 514
PowerMac: 1,1 1,2 2,1 2,2 3,1 3,3 3,4 3,5 3,6 4,1 4,2 4,4 4,5 5,1
PowerBook: 1,1 2,1 etc

UnexpectedBomb

  • 16 MB
  • ***
  • Posts: 21
    • GitHub account
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #11 on: July 20, 2026, 08:00:51 AM »

a working temp mon for the mini g4

Sadly @n8blz, here's the wall I've run into:

Turns out the Mini's setup is a bit different from the MDD, whose temperature sensor can be addressed directly, which is why the CSM worked so well for it. The Mini's temperature sensor, on the other hand, sits behind its PMU. As the G4 Mini was designed for OS X only, Mac OS 9 has no way of safely prodding the Mini's PMU (which controls power, reset, fans, etc) to grab a reading from the temperature sensor. A from-scratch driver would have to be built, and it could risk permanently hurting the Mini's ability to function properly in those critical areas if anything went wrong. As of now, only OS X can safely grab temp readings on the G4 Mini, although technically you can boot into Open Firmware and also get a real reading from the temperature sensor that way too (I have done it myself to confirm).

This adventure made me realize that this temperature monitor CSM ought to be "universal" anyway, reaching as many temp sensors on as many G3/G4 Macs as possible, so I updated the CSM to now search for any reachable temperature sensor on any OS 9 machine it gets installed on. The worst that could happen is that it can't reach any sensor and displays "n/a" for its temperature reading (as is currently the case for the Mini). Additionally, it will also display the exact type of sensor that it finds. If anyone gets a reading on any hardware besides an MDD, I'd love to know about it so I can update the documentation.
Logged

smilesdavis

  • 1024 MB
  • ******
  • Posts: 1255
  • ...
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #12 on: July 20, 2026, 10:35:04 AM »

can we add a temperature sensor after the fact?
Logged
Gestalt: 40 47 54 55 58(new!) 65 67 69 112 514
PowerMac: 1,1 1,2 2,1 2,2 3,1 3,3 3,4 3,5 3,6 4,1 4,2 4,4 4,5 5,1
PowerBook: 1,1 2,1 etc

UnexpectedBomb

  • 16 MB
  • ***
  • Posts: 21
    • GitHub account
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #13 on: July 21, 2026, 11:15:55 AM »

can we add a temperature sensor after the fact?

That could work. Maybe a USB external sensor, something like this:
https://a.co/d/0aqedwdG

Would probably need driver written for it, but it's possible.
Logged

Greystash

  • 256 MB
  • *****
  • Posts: 291
  • Software Engineer, Vintage Apple Enthusiast
    • Personal Website
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #14 on: Yesterday at 09:26:46 PM »

Thank you this is great! I've long wanted a temp monitor for my MDD and PBG4 TI, right now I have a physical monitor on my MDD which is fine but not the most accurate, so this is a great addition.

I'm not sure if it's intended to work on a PowerBook G4 Titanium (1Ghz PPC 7455), but I tested this and it doesn't work.
Logged

UnexpectedBomb

  • 16 MB
  • ***
  • Posts: 21
    • GitHub account
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #15 on: Today at 02:53:42 PM »

I'm not sure if it's intended to work on a PowerBook G4 Titanium (1Ghz PPC 7455), but I tested this and it doesn't work.

Thanks for testing it @Greystash, that's really useful.

I hadn't gotten around to testing this on my own 667 MHz DVI TiBook, so I did it just now and the module actually works on it. That surprised me, because the Titanium PowerBooks are usually said to have no OS-readable temperature sensor (even Temperature Monitor under OS X shows nothing on them). But the 667 has a DS1775 sensor at I2C address 0x49 on the Uni-N bus, the same chip the MDD uses, and the Control Strip reads it fine at around 55 C. So at least some TiBooks are readable.

Your 1 GHz showing nothing is the open question. It could be that your model genuinely lacks the sensor, or that the module's detection is missing it (right now it only checks one bus channel on the Uni-N controller).

Would you be up for running a tiny diagnostic on the 1 GHz so I can tell which it is? It is here:

https://github.com/UnexpectedBomb/MacOS9-G4-CPU-Temp/raw/main/probe/tibook/dist/TiBookProbe.hqx

It is strictly read-only. It only reads sensor registers, never writes anything, and it cannot disturb the fan or the machine. After you launch the probe, and it prints a short report. The console has no scrollback, so the part I need is at the very bottom: the section marked [C] (the i2c sensor sweep) and the VERDICT line under it. A photo of the lower half of the window is perfect.

If it finds a sensor, I can almost certainly get your 1 GHz working too. Thanks again.
Logged

Opualuan

  • 8 MB
  • **
  • Posts: 11
  • New Member
Re: NEW: Temperature Monitor control strip for G4 MDD
« Reply #16 on: Today at 03:48:54 PM »

This is very useful to optimize new cooling fans in the MDD without booting to X. Related to temperature, it would be great to adjust the fan curves that (I assume) respond to the thermal sensors you’re reporting. Any plans on that side?
Logged
Pages: [1]   Go Up

Recent Topics