I would like to interface with a few appliances whose operation is more complicated than a power on/off switch. My goal is to simulate button-presses on these using an Arduino.
Instead of hot-gluing servos to appliances, can I solder in a BJT or MOSFET to the circuit board and then have the arduino "push the buttons" by shorting the original ones?
Sometimes. Depends on how the buttons are wired in the appliance. Ideally you'd get/make a schematic of it, or alternatively do some measurements and second-guess it.
Another option is to use relays; this is generally easy (electrically at least) and is virtually certain to work regardless.
Will it be sufficient for the Arduino to press buttons or does it also have to read displays etc? That would complicate matters enormously.
What kind of appliances are we talking about and what sort of actions do you want the Arduino to perform on them?
What kind of appliances what sort of actions do you want the Arduino to perform ?
One example would be to lower my window AC unit by 5 degrees, which would be done by 5 presses of a membrane button. Another example would be remotely controlling an old garage door (a single button press). I don't need to read any display information, just short the circuit for a moment as if it was my finger pushing the physical button instead. And I suspect that most of these are low-voltage circuits. (Let's assume I can access the solder points of the original appliance button.)
I imagine the answer to my question has something to do with wiring and coordinating the 5v arduino system with the unknown voltage of the appliance circuit and choosing the appropriately spec'd MOSFET.
Is this the simple relay functionality you were describing?
I'd love to hear there's a one-size fits all mosfet that would work in a variety of situations.
A lot of it depends on whether the switch is stand-alone (dedicated input to the microcontroller), or is part of a switch matrix that is scanned. A stand alone switch has some bias voltage that you can measure and then control with a transistor or opto isolator once you know the polarity. A switch in a matrix can't be controlled that way because there is no fixed voltage reference for the transistor. Hence, a relay can work because it is indifferent to polarity.
Do you mean mechanical relays? (I'm picturing those 5V20A blue blocks)
I suppose that would work, but feels like overkill for managing a button press in a low voltage circuit. Is there not a lower-profile solid-state option?
I googled switch matrix but all I get is IMDB results! Does the matrix approach mean that a IC relies on just a few switches to produce several unique combinations (such as a 4-dip switch has 16 combinations)?
Indeed. They come in all kinds of sizes though. Some are pretty small.
Yeah it is, but you asked for a one-size-fits-all solution. Here it is.
That's where you start if you don't want to rely on a silver bullet and its drawbacks...
Yeah, sort of like that. They generally have signal wires for 'columns' and 'rows' and each row-column combination is indeed unique and made by shorting the respective row and column pins. Here's an example of one of those IC's: https://www.ti.com/product/TCA8418
They generally rely on the same/similar principles.
Gotcha. Yeah that makes sense. I think I'll have to experiment.
The mosfet BJT route seems like the ideal solution, but when I've dived into those topics before, it became really convoluted and difficult to tell whether I head already learned enough for my purposes or needed to learn about atoms and saturation regions.
Different things...mosfet vs. bjt. Either can work, depending on the circuit and the part you select - and how you wire it of course.
It's not rocket science.
The difficult part usually is to establish with sufficient certainty how exactly the switch you want to replace/manipulate is wired to the rest of the control electronics. Sometimes it's straightforward and a visual inspection and a poke with a multimeter already gives solid answers. Sometimes it's not that simple. You never know until you start opening stuff up.
Another aspect not touched on is isolation. Appliance control circuits are sometimes connected to potentially lethal voltages, internally. It's allowed when there is sufficient insulation such that the user can not come in direct electrical contact with it. That is where the opto-isolator is a good choice.
Sometimes a custom controller is not embedded in the appliance, the controlling device must then have access to extended wiring from the appliance, that might not share a common safety ground with the appliance. In some cases, that means "magic smoke" might come out.