Actually I was talking about the constraint and I was testing it in my phone as I was writing. I just didn't realize that a) jagg was only interested in boolean variables for his constraint (that was not very clear from his post) and b) variable constraints are indeed very poor for boolean vars as opposed to constraints for integer (which I was testing with), string and decimal vars, which I also didn't realize.
As such, my answer was inadequate.
All I can suggest then, to solve jagg's problem, though this is long-winded and awkward, is the following:
1. Create a AND/OR/XOR/NOT constraint (Macrodroid Specific) and select the OR option.
2. Add two more AOXN constraints as children of the first one – touch the constraint just created and select Add constraint. This time leave the default AND option selected. (Just don't add the third constraint to the second one but also to the first.)
3. Add two variable constraints as children of the first AND constraint. In the first of these select your boolean1 var and leave the "= False" option selected. In the second, select your boolean2 variable and again leave the "= False" option selected.
4. Now add two further variable constraints as children of the second AND constraint. In the first of these select your boolean1 var and then select the "= True" option. In the second, select your boolean2 variable and again select the "= True" option.
There you go! What all this boils down to is that for the first/master/boss/grandparent constraint to be true it is necessary that either both boolean variables be False or both be True; in other words, they must be equal!
Hope this helps, jagg.