Question #3: If I create a scene in the BroadLink app, can I execute that through HA rather than trying to script out every up, down, select, etc. command?
used the remote.learn_command service in Developer Tools > Service for each remote to learn the commands from the fan remote (these commands are saved as a file named broadlink_remote__codes under config/.storage folder.
wrote scripts to send named commands eg:
# reverse the current direction of the fan.
living_room_fan_reverse:
alias: "Living room fan reverse"
mode: single
sequence:
- service: remote.send_command
data:
entity_id: remote.living_room
device: fan
command: "Reverse"
I’d encourage you to look at the Broadlink Manager thread I linked above - it’s lengthy but covers a wide discussion on how to best integrate. I went with a hybrid approach avoiding use of the app with the Broadlink Manager application but learning the codes through HA and I’m happy with the results.
Honestly the process takes less time to describe than it took to do. I have about 10 buttons per fan remote (including lights) and rattled through at a rate of knots once I got my head around how I wanted to approach it.
For my purposes I didn’t want a Broadlink account or the remotes to have internet access - primarily to prevent a firmware update causing issues but also for security purposes. I’ve seen comments that suggest the newer Broadlink remote devices have significant issues with integration into HA once they have been linked to Broadlink’s cloud, and one of the major pluses of HA (mostly for my wife, but also for me) is that we don’t wind up with multiple apps that can / should be used to control our home devices.