do master devices buy and sell slave devices on a market as property?...
None of the things you mention are the defining characteristics of slavery. We can point to historical counterexamples for each -- American race-based slavery was not the only example, you know.
The defining characteristic of a master/slave relationship is that the master tells the slave to do something and, unlike other forms of servitude, the slave does not get any discretion in the matter. Not merely "device 1 tells device 2 to do something", but that device 2 does not exhibit any judgement or possible refusal in the matter.
That differs from a client/server relationship where a server can say "nope, not gonna do that, permission denied". The point of the term is that device 1 is in utter and total control of device 2. None of the alternatives I've seen discussed here capture that.
The only other terms I can think of that apply would be "Dom" and "sub", but those come with a load of baggage of their own. Plus, a D/s relationship has safewords, so unless device 2 has a red light that tells device 1 to stop, not the same.
Changing a variable name or a label on a pinout lets developers feel like they're "helping" without actually doing anything to break open the brutal and racist police state we inhabit -- that might actually be worse than useless.
I guess we can then move on to remove terms like "execute" or "kill" from our process control vocabulary and feel like we're "helping" abolish capital punishment? And we certainly can't "run" a program, that is disrespectful to the non-ambulatory. And so on.
The euphemism treadmill is endless -- and it doesn't go anywhere.
All that said: if some developer wants to play at "helping" by changing some variable names in their own code, it's not worth fussing about. It's when outrage mobs aggressively patrol other's use of language, seeking out conflict, that we have problems.