1
\$\begingroup\$

I'm using one of my old laptops as a server. I'm running the laptop without battery in case of a need for a hard reset. When I need a hard reset, I want to be able make this happen with a toggle of AC power. The problem is, when AC power lost and come back, the laptop can not be powered on automatically. Unlike desktop computers' BIOS, most laptop's BIOS including mine does not have such power settings and no "wake on lan" option.

So I decided to hack the power button. If I touch a 1 uF capacitor by parallel, laptop powers on. This is good. If I solder this capacitor in the same place, the laptop is not getting up when AC power come back.

Why would it happen?

Edit

The laptop expects power button released in the firs place, and then pressed for a short time. What I did causes "pressing button as soon as the AC power comes" effect. That was why battery led is flashing when I solder the capacitor to the pins of the power switch.

Edit2

Answer is added: https://electronics.stackexchange.com/a/145588/20285

\$\endgroup\$
1
  • \$\begingroup\$ @Passerby All capitals. Comment deleted. \$\endgroup\$ Dec 28, 2014 at 5:07

3 Answers 3

4
\$\begingroup\$

As I understand that the problem is holding power switch "pressed" as the power comes, the laptop thinks there is a problem. So I made a circuit that waits for a short time, "presses" power button, releases it when computer is turned on. Working circuit

This circuit is tested and working: http://youtu.be/eg2waRuW1ME

\$\endgroup\$
6
  • \$\begingroup\$ could you please provide full circuit? \$\endgroup\$ Nov 18, 2018 at 7:19
  • \$\begingroup\$ This is the full circuit. If you clarify the missing information, I'll gladly try to help out. \$\endgroup\$
    – ceremcem
    Nov 18, 2018 at 16:11
  • \$\begingroup\$ Circuit is missing ground wires. p.s. I am newbie, so it is a bit hard for me to detect ground wires by myself. \$\endgroup\$ Nov 20, 2018 at 13:27
  • 1
    \$\begingroup\$ You may consider Q1.e as Gnd. Circuit receives its initial power from power button switch pins, so you should first measure the voltage between the power button switch pins and use the lower voltage one as your Gnd (which will be connected to Q1.e of this circuit). Then find a led in your laptop which turns on (and stays on) once the computer is powered up and use the led's anode as the input (R2). \$\endgroup\$
    – ceremcem
    Nov 21, 2018 at 2:45
  • \$\begingroup\$ Hi @ceremcem I want build your circuit and YouTube video seems like has a private access. Can you open it? \$\endgroup\$
    – crossmax
    Nov 26, 2021 at 0:17
2
\$\begingroup\$

Probably because the capacitor is discharged when you attach it, but from then on it's charged up.

It sounds like the button is an active-low connection - connects a signal wire to ground when you press the button. You will need to identify which wire is which (a simple multimeter on continuity test should allow you to find the ground pin) and then arrange a circuit that will connect the signal wire to ground when you need to. The simplest arrangement would be an NPN transistor:

schematic

simulate this circuit – Schematic created using CircuitLab

A more rugged circuit that doesn't care which pin of the switch is which, is to add a small (reed) relay to do the switching:

schematic

simulate this circuit

This also has the advantage that the control system is completely separate from the laptop system (galvanically isolated). You would need to generate the control signal at the right time though. A small microcontroller would be the simplest circuit (maybe something like an Arduno Micro, or an ATTiny board), although any circuit that creates a single pulse when it gets power (preferably after a short delay) would work. I'm sure something using the 555 timer could be crafted.

For instance, using an Arduino board, the code to drive it would be as simple as:

void setup() {
    pinMode(3, OUTPUT);
    digitalWrite(3, LOW);
    delay(1000); // Initial 1 second delay
    digitalWrite(3, HIGH); // Press the button
    delay(100); // Small delay of 0.1s
    digitalWrite(3, LOW); // Release the button
}

void loop() {
    // We don't need to do anything else.
}

That would fit into any small ATTiny chip without a problem - really really simple to do. Power on, a 1 second delay, the output pin 3 gets a 0.1s pulse, then nothing else until the next time it all powers on.

\$\endgroup\$
1
  • \$\begingroup\$ Thank you for your detailed answer but the problem is not capacitor is staying charged, because it isn't. \$\endgroup\$
    – ceremcem
    Dec 27, 2014 at 13:16
1
\$\begingroup\$

The laptop power button circuit is capable of operating with a pulse type signal. When you momentarily touch the capacitor across the switch it takes a while to charge the capacitor and this can create a voltage pulse to the switch inputs that is long enough to trigger the wake up circuit.

On the other hand when the capacitor remains connected it gets charged up by the bias voltage applied to the power button circuit. So when the AC voltage disappears for a short time the capacitor may be staying charged and not creating the necessary pulse to trigger the wakeup.

It is also possible that when AC voltage is applied after being down for a longer period of time that the capacitor charges in a way to not create the necessary voltage pulse to trigger the wake sequence.

Here is what I suggest that you try:

Make the capacitor value much larger and wire it right across the power switch contacts. Most likely one side of the power switch is connected to the laptop GND. If the capacitor ends up having to be an electrolytic type make sure to put it's negative lead toward the GND side of the power button. Then also add a Shottky type diode (i.e. BAT54 type) from the positive lead of the capacitor (anode side of diode) that can discharge the capacitor when the AC power goes down. For this to work you will need to find a DC voltage plane inside the laptop that goes to GND when the AC power is lost. The cathode of the diode would connect to that voltage plane. To be safest take a voltmeter and take a reading of the voltage across the power button. This may be +5V or +3.3V. The safest this is to find a matching DC voltage plane and connect the diode to that.

\$\endgroup\$
2
  • 1
    \$\begingroup\$ Thank you for your answer, and this was the closest one to the solution. But as I understand, the problem is different. Here is the facts that you could regenerate: Try to unplug the power adapter from your laptop, press and hold the power button, plug the adapter. Laptop won't turn on. Because it first expects the power button released, an then pressed for a short time. \$\endgroup\$
    – ceremcem
    Dec 27, 2014 at 13:20
  • 1
    \$\begingroup\$ You are exactly correct regarding the need to release the power button first. My job involves making the on chip firmware that controls this behavior I should have remembered this detail. \$\endgroup\$ Dec 27, 2014 at 17:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.