Contribute
Register

MacTester57's iMac G5 17" (A1058 Model)

Status
Not open for further replies.
Hi MacTester,

Could u pls post a schematic of how you would isolate two amplifiers (or isd1820) to work with one pair of iMac speakers, shared with the 5v amp used by osx.

I want to try something here but need a rough idea of how I should proceed without blowing anything up.



Thanks,

Ersterhernd
 
Hi Ersrerhernd

That's what I did:
20150109-9141.jpg


I've tested it with a general purpose relay. The proper TAKAMISAWA A5W-K relays arrived today... Note:
- The trigger output must stay hi during the duration of the chime
- Only one speaker is used for the chime

Good luck

After I've soldered the definitive 12V plug for the NUC and secured the HDMI connector with a big piece of shrink tube, I did a new system test. Result:
- The screen is OK :D
- The NUC still runs unstable with the iMac PSU - it crashes sometimes, after PM was activated during the boot process... :banghead: I've tested the PSU again under load (11.87V, stable DC line on the oscilloscope).

Ersterhernd and Kiwi:
could you please measure your 12V rail on the iMac PSU? I assume, that 11.87V is not enough, because intel says, that the voltage range is 12-19V (24 on the internal header). That would mean, that 11.87V is out of spec...

MacTester

BTW: I've just scored this on Ricardo:
iMac G5 20".png
 
Last edited:
Ersterhernd and Kiwi:
could you please measure your 12V rail on the iMac PSU? I assume, that 11.87V is not enough, because intel says, that the voltage range is 12-19V (24 on the internal header). That would mean, that 11.87V is out of spec...

MacTester
11.63V

And that was while running a CPU Test, and with Brightness turned way up.

I had many similar issues at the beginning, have a read of these. But my guess (second post) is that the Arduino is signalling a power down on the PSU, even if for an instant then things will crash. You can verify this assumption by grounding the ATX PSU power on signal, bypassing any signal from the Arduino

EDIT : Scratch my above comment I saw your source code that you do use the delay function on the NUC Power State Detection. My other comments stand, look to debug you code, see what could cause PSU to be deactivated

http://www.tonymacx86.com/imac-mods/107859-kiwis-next-project-imac-g5-13.html#post773673
http://www.tonymacx86.com/imac-mods/107859-kiwis-next-project-imac-g5-16.html#post812078

If the assumption is true then remember you can debug the code from a second computer hooked up by USB to the Arduino.

Kiwi

BTW: Good Score, and thanks for the Fan Info
 
Mactester I have a psu from an A1058 here that I just recapped.

It reads 12.19V on the voltmeter.


A 20" iMac? Hmmmm this is gonna be interesting... :thumbup:



Cheers!
 
ersterhernd, kiwi, thanks for your feedback!

A short system test report:

The PSU is definitely not the culprit: I've made an ATX to iMac adapter cable today and tested with a standard ATX PSU. Same result. The NUC mostly hangs somewhere during system boot... :banghead:

The next step was to test, if the NUC could be affected via the CS header. So I've disconnected all 3 wires from it and started the NUC with its own power button. Guess what? It worked! The current theory is now, that high frequency noise on the CS header causes this problem. So I've tried to improve the GND wiring (direct wire from the NUC PCB ground to an M3 thread on the midplane, but it did not help.

Maybe I should add ferrite cores to the CS cable. Or connect the SMC Board and the NUC with a thick GND wire? Or maybe I should use an optocoupler for the power button input?

Kiwi: You only have a 1N4148 diode (I have a 1N5819, but that should not make any difference) between the Arduino power switch input and the NUC CS power switch input? And you have no direct GND connection between the Arduino GND and CS pin 8? Do you have the link for the 5.5 x 2.5mm NUC power cable you used? Most of the available connectors in this dimension are crap, and a stable GND wiring is essential...

MacTester
 
Kiwi: You only have a 1N4148 diode (I have a 1N5819, but that should not make any difference) between the Arduino power switch input and the NUC CS power switch input?
That is correct.

And you have no direct GND connection between the Arduino GND and CS pin 8?
Also correct, my GND is via the GND on the common ATX PSU

Do you have the link for the 5.5 x 2.5mm NUC power cable you used? Most of the available connectors in this dimension are crap, and a stable GND wiring is essential...
I did not buy the power DC Power connector, I reused one from an external 3.5" HDD drive PSU that had died. Before I used this I trialed a similar HDD PSU (a good one) and was surprised the a 2A 24W PSU was quite adequate for the job.

I also know the internal iMac chassis shares the DC GND, and I have used metal standoffs to mount the NUC, so I think (but not sure) this translates to a GND connection also. via the chassis.

Can you test one thing for me.

1. Connect the "Power On" signal of the ATX PSU directly to GND, i.e. force the PSU into an ON state, independent of the Arduino control logic.

This should identify if it is power (to NUC) connectivity supply issue, or if it is in the control logic that turns the PSU on and off.
 
Hi kiwi

Thanks for your reply

I have a 1N5819, but that should not make any difference

It did make a difference. I've just replaced it with a 1N4184 and it's running now - at least with no Arduino plugged into the SMC board. With it, it works sometimes and sometimes not. What I've discovered is the following: The voltage across CS pin 6 & 8 is 3.3V on the NUC side and 5V on the Arduino side (Arduino pullup resistors are active) This is not ideal in my opinion and I probably will use a mini relay to isolate the power switch connection between the NUC and the Arduino.

What do you think?

Can you test one thing for me.
I did that a couple of days before. The PSU deactivation circuit works fine. The PSU doesn't shut down. it's only the NUC that hangs. It doesn't crash (shut down) it just stops somewhere during all the boot messages are running across the screen (not always at the same message). The KB does still work, but the OS X boot process doesn't proceed.

NUC mounting

I've cut the original copper heatsink plate in two pieces, drilled some M3 and put M3 standoffs in. No modification on the mid plane was required. The NUC cooler fits nicely between the two pieces of copper:
20150112-1124085.jpg


And the NUC mounted. Note the additional heavy GND wire from the SMC to the NUC standoff:
20150112-1124090.jpg


MacTester
 
Last edited:
The next step was to test, if the NUC could be affected via the CS header. So I've disconnected all 3 wires from it and started the NUC with its own power button. Guess what? It worked! The current theory is now, that high frequency noise on the CS header causes this problem. So I've tried to improve the GND wiring (direct wire from the NUC PCB ground to an M3 thread on the midplane, but it did not help.
Can you determine which of the CS (actually Front Panel header) wires are causing the issue, by testing removing either the two LED wires (2/4), or the power switch (pin 6) separately. My alternate view is that feedback from LED's is causing the PSU to be switched off for a very short time

EDIT: Can you measure the voltage across the LED pins (2/4) of the FP header.

It did make a difference. I've just replaced it with a 1N4184 and it's running now - at least with no Arduino plugged into the SMC board. With it, it works sometimes and sometimes not. What I've discovered is the following: The voltage across CS pin 6 & 8 is 3.3V on the NUC side and 5V on the Arduino side (Arduino pullup resistors are active) This is not ideal in my opinion and I probably will use a mini relay to isolate the power switch connection between the NUC and the Arduino.

What do you think?
The diode is specifically added so that current could only flow in one direction. From NUC to a GND signal, either via the switch, or via a LOW output on an Arduino PIN. So even with 5V on an output via pullup resistor would not flow to the NUC. I had all sorts of weerd issues prior to adding it, because of (I assume) current flowing into the NUC.

With a diode the forward voltage drop across the diode means the NUC never gets a true 0V, but the forward voltage for this diode are within TTL logic voltage tolerances for small currents (this maybe why your other diode didn't work).

Of course a relay will work for isolation, but you will still have to deal with the external power button.

Kiwi

I am assuming you are on Pin 6 of the FP header, which in my testing is the positive side that needs to be grounded.
 
Can you determine which of the CS (actually Front Panel header) wires are causing the issue, by testing removing either the two LED wires (2/4), or the power switch (pin 6) separately

Hi Kiwi

It's the power switch (CS pin 6).

The diode is specifically added so that current could only flow in one direction. From NUC to a GND signal, either via the switch, or via a LOW output on an Arduino PIN. So even with 5V on an output via pullup resistor would not flow to the NUC. I had all sorts of weerd issues prior to adding it, because of (I assume) current flowing into the NUC.

With a diode the forward voltage drop across the diode means the NUC never gets a true 0V, but the forward voltage for this diode are within TTL logic voltage tolerances for small currents (this maybe why your other diode didn't work).

Of course a relay will work for isolation, but you will still have to deal with the external power button.

Kiwi

I am assuming you are on Pin 6 of the FP header, which in my testing is the positive side that needs to be grounded.

All that is true and logical.

I've done the following in the meantime:
  • removed the power switch debouncing cap, which I've mounted during the tests with the NUC dummy...
  • replaced the PSU (the new has slightly higher voltages, see below)
  • did some fixes in my SMC firmware

Works better now. :) The brightness slider App too! Thanks again for that, Kiwi. :thumbup:

More iMacs... :ugeek:

Today I've picked up a 20" iMac G5 (same model as Kiwi's). It's in good, running condition. Unfortunately its bottom left corner is cracked. They also had a 17" model available (same as in this project). It looks almost like new after some cleaning and the screen is perfect. Maybe I will take all its shiny parts for this project, because it's not in working condition (freezes after a while). Paid 100 bucks for both:
20150113-1134094.jpg


MacTester
 
Last edited:
Success!

I'm writing this post on the iMac G5 :) It seems, that the annoying start problems are solved now. What was the solution? I had no 100nF capacitor in my ATX deactivating circuit. After adding it, everything seems to work fine now... I guess, that the Arduino generates some very short impulses on the ATX deactivating output. They are suppressed now with the 100nF cap.

Kiwi: did you plan this cap from beginning or did you add it later because of issues?

What's working @ the moment:
- ATX control circuit
- start chime
- Brightness Control with Kiwi's slider applet (crashes sometimes, when I'm using "active corners" for display sleep). Any thoughts?
- Fan speed control (temperature sensors not yet wired, but tested before "on the bench")
- loading Arduino firmware without crashing the system (PSU stays on, full CCFL brightness)

What's not:
- The touch sensors would work, but their readings are not stable enough (they are drifting, so not usable @ the moment)

To do:
- USB 2.0 wiring (with hub)
- USB 3.0 wiring
- Connecting the WiFi / BT antennas. A new Tyco antenna is already wired below the midpane.

MacTester
 
Last edited:
Status
Not open for further replies.
Back
Top