MakisM1 wrote in post #18743628
There is a micro switch in the rails of the hotshoe. It detects the presence of an external flash and blocks the deployment of the onboard flash. Make sure that it is not pressed by some dirt etc.
This is the most common cause for your problem.
That's correct. A micro switch is there to prevent the on-board flash from popping up whenever a flash is mounted in the hot shoe. If you look under the left hand "rail" of the hot shoe, you can probably see the switch.
A firmware update certainly won't make any difference (but it's usually good to keep it up to date for other reasons).
First see if you can lift the flash with your fingernail while pressing the button. On rare occasion it might be a problem with the latch mechanism or some gunk that's caused the flash itself to get stuck enough that the springs to pop it up aren't strong enough to overcome. If you can't lift the flash with a fingernail, it's one of these things causing the problem. Cleaning around the hinges and perimeter of the flash... or adjusting the latch mechanism would be needed.
More often the problem is that the micro switch gets stuck. If you are able to open the flash manually pretty easily, it's probably the switch. Usually it's just because the "leaf spring" above it isn't allowing the micro switch to fully return. The switch itself also has a small spring built in to cause the tiny "pin" of the switch to pop back up and return to the position where it will allow the on-board flash to open. But that return spring is so small it's not very strong and won't be able to overcome the leaf spring if that's preventing the pin from popping fully back up. Use a wooden or plastic toothpick to gently move that leaf spring upward, and see if that doesn't solve the problem.
But sometimes it's gunk that's gotten into the tiny switch keeping it from popping up. In that case, it will probably require a little disassembly to fix. It's actually pretty easy, but there are some very small, easily lost parts. With most hot shoes, there's a metal plate in the bottom that simply un-clips on one side, then slides out. This reveals the four screws holding the hot shoe in place. Once those are removed, the rest of the hot shoe can be lifted off, but will still be attached by wires. This should reveal all of the micro switch so that it can be checked to see if it's free and if need be, carefully be cleaned. To do that, I'd use some rubbing alcohol to lightly dampen a rag and wipe around the switch with that. Be careful not to drip alcohol down into the camera. Once the switch moves more freely, be sure the wiring isn't contacting any metal, turn the camera on and see if the flash will now pop up.
You have to be very careful during this disassembly that the little black, plastic pin in the micro switch doesn't pop out and get lost. (I've seen people make replacements from a tine clipped from a hair brush and other plastic parts.... but it's easier to just not lose the little pin!)
Frankly, the best solution is to get an accessory flash and not use the camera's onboard flash. One of my 7DII or 7D cameras has a stuck onboard flash I've never bothered to fix. There are a lot of reasons and accessory flash is MUCH better than the wimpy little onboard one. First being that most accessory flashes are far, far more powerful... giving good light to a much greater distance. Also, an accessory flash has its own power supply, so it doesn't heavily drain the camera's battery the way the onboard flashes do. Accessory flashes also usually recycle much faster and are positioned higher up to give less redeye and shadow problems in images. And some accessory flashes can control other off-camera flashes, for multi-flash setups. They do this using either using radio waves or near infrared light to communicate.... The on-board flash also has some ability to control other flashes... but it does so by "strobing" the white light of the flash, which is rather obnoxious.
So for a lot of reasons, not just stuck switches... an good accessory flash is the best solution to that problem!