I'm rotating speakers, too. I find the results capricious - sometimes it works, sometimes not so much. Today, I have edited a (copy of) a previously-functioning family (that took hours to get working) having one parameter, "DOWN ANGLE". I have a reference line, running from the family origin toward the front. In left section, I can rotate it down, say, 10 degrees, align the end of the reference line to the two axes, drop an angular dimension in between the reference line and the plan axis and, assign it to the DOWN ANGLE parameter, open the family parameter properties page, exercise the DOWN ANGLE with some values and, voila, the reference line rotates about the origin, just as forums and tutorials say. I have previously discovered how to un-tick "always vertical". However, when I group the reference line with the speakers which, for simplicity, are represented as trapezoidal extrusions having another extrusion, representing a structural element called a "bumper", across the top, then the simple exercising goes upside down, literally. All of the extrusions, the dimension and the reference line rotate 180 degrees up over the plan axis. It should be noted that all of the extrusions are modeled below the reference plane, but moving everything up didn't fix the problem. I haven't left the family, yet! So, I tried making a family of one speaker and the bumper, showed its work plane as unassigned,disabled its reference level and set it to work-plane based, brought it into the array family, which only has the DOWN angle and the reference line (working well, I might add), and checked that the work plane was parallel to the page (Left) by showing and unshowing the work plane. As soon as I tried to rotate the nested family, without even grouping it to the reference line, Revit complained that it couldn't change the angle..
Why use a parameter? For a sports building, there are multiples of this family that get shoved around in design to accommodate sight lines for lights, television cameras, private boxes, etc. I need to efficiently adjust the elevation of the speaker array and its down angle to keep up.
I share the frustrations of other posters on this subject. I am not a Revit Jedi, only a benighted user who hopes to promote Revit in my business. Revit makes it possible to play in the sandbox with big architectural firms doing stadia, arenas and concert halls, since the big architects don't do AutoCAD anymore. My models are filled with parameters controlling all sorts of criteria and scheduling data for the team.
This is the only area that stumps me, again and again. So, please don't patronize the posters by saying if we were as well-versed in the minutiae of the program, we'd be off to the races. I know that. Instead, please accept that this is a tough problem and look a bit deeper.
Thank you.