GrandView Projector screen with Broadlink Mini IR - solution for no remote

I have a Grandview motorised projector screen and a BroadLink RM4C mini, but I don’t have the original remote.

If you are in this position, then the following may be useful:

File: /config/.storage/broadlink_remote_<INSERT MAC ADDRESS>_codes
{
  "version": 1,
  "minor_version": 1,
  "key": "broadlink_remote_<INSERT MAC ADDRESS>_codes",
  "data": {
    "Grandview" : {
      "Up" : "JgBCACoLKgsqCyoLDiYOJg4mDiYOJg4mDiYqCw4mDiYOJioLKgsqCw4mKgsqCyoLDiYqCyoLKgsOJioLKgsqCyoLDgACzQ0FAAAAAA==",
      "Down" : "JgBCACkMKQwpDCkMDiYOJg4mDiYOJikMDiYOJg4mDiYOJikMKQwpDCkMDiYpDCkMKQwOJg4mDiYOJikMKQwpDCkMKQACrg0FAAAAAA==",
      "Stop" : "JgBCACoMKgwqDCoMDiYOJg4mDiYOJg4mKgwOJg4mDiYOJioMKgwqDA4mDiYqDCoMDiYOJioMKgwOJioMKgwqDA4mKgACsg0FAAAAAA=="
    }
  }
}

Then I created a template cover in configuration.yaml:

cover:
  - platform: template
    covers:
      lounge_projector_screen:
        device_class: blind
        unique_id: "GrandView_cover"
        friendly_name: "Lounge Projector Screen"
        close_cover:
          - service: remote.send_command
            target:
              entity_id: remote.wi_fi_universal_remote_remote
            data:
              device: Grandview
              command: Down
        open_cover:
          - service: remote.send_command
            target:
              entity_id: remote.wi_fi_universal_remote_remote
            data:
              device: Grandview
              command: Up
        stop_cover:
          service: remote.send_command
          target:
            entity_id: remote.wi_fi_universal_remote_remote
          data:
            device: Grandview
            command: Stop
        icon_template: mdi:projector-screen

This works and I can now automate raising and lowering the screen.

If you are starting from scratch, you should

  • create the initial broadlink codes file (by recording any button off any remote),
  • use Visual Studio code or similar to find and edit the file created
  • then you can just insert the “Grandview” dictionary item with the codes.

For historical reference, these are the full codes:

        #[SCROLL+]    0000 006D 0000 0020 0031 000D 0031 000D 0031 000D 0031 000D 0011 002D 0011 002D 0011 002D 0011 002D 0031 000D 0011 002D 0011 002D 0011 002D 0011 002D 0011 002D 0011 002D 0031 000D 0031 000D 0031 000D 0011 002D 0031 000D 0011 002D 0011 002D 0011 002D 0031 000D 0011 002D 0031 000D 0011 002D 0011 002D 0011 002D 0011 002D 0031 000D 0011 033F
        Scroll_Up: JgBCACoLKgsqCyoLDiYOJg4mDiYqCw4mDiYOJg4mDiYOJioLKgsqCw4mKgsOJg4mDiYqCw4mKgsOJg4mDiYOJioLDgACzQ0FAAAAAA==
        #[SCROLL-]    0000 006A 0000 0020 0031 000F 0031 000F 0031 000F 0031 000F 0011 002F 0011 002F 0011 002F 0031 000F 0011 002F 0011 002F 0011 002F 0011 002F 0011 002F 0011 002F 0011 002F 0031 000F 0031 000F 0031 000F 0031 000F 0011 002F 0011 002F 0011 002F 0011 002F 0031 000F 0031 000F 0031 000F 0011 002F 0031 000F 0011 002F 0011 002F 0031 000F 0031 0332
        Scroll_Down: JgBCACkMKQwpDCkMDicOJw4nKQwOJw4nDicOJw4nDicOJykMKQwpDCkMDicOJw4nDicpDCkMKQwOJykMDicOJykMKQACrg0FAAAAAA==
        #[STOP]    0000 006D 0000 0020 0031 000E 0031 000E 0031 000E 0031 000E 0011 002D 0011 002D 0011 002D 0011 002D 0011 002D 0011 002D 0031 000E 0011 002D 0011 002D 0011 002D 0011 002D 0031 000E 0031 000E 0031 000E 0011 002D 0011 002D 0031 000E 0031 000E 0011 002D 0011 002D 0031 000E 0031 000E 0011 002D 0031 000E 0031 000E 0031 000E 0011 002D 0031 0320
        Stop: JgBCACoMKgwqDCoMDiYOJg4mDiYOJg4mKgwOJg4mDiYOJioMKgwqDA4mDiYqDCoMDiYOJioMKgwOJioMKgwqDA4mKgACsg0FAAAAAA==
        #[UP]    0000 006D 0000 0020 0031 000D 0031 000D 0031 000D 0031 000D 0011 002D 0011 002D 0011 002D 0011 002D 0011 002D 0011 002D 0011 002D 0031 000D 0011 002D 0011 002D 0011 002D 0031 000D 0031 000D 0031 000D 0011 002D 0031 000D 0031 000D 0031 000D 0011 002D 0031 000D 0031 000D 0031 000D 0011 002D 0031 000D 0031 000D 0031 000D 0031 000D 0011 033F
        Up: JgBCACoLKgsqCyoLDiYOJg4mDiYOJg4mDiYqCw4mDiYOJioLKgsqCw4mKgsqCyoLDiYqCyoLKgsOJioLKgsqCyoLDgACzQ0FAAAAAA==
        #[DOWN]    0000 006A 0000 0020 0031 000F 0031 000F 0031 000F 0031 000F 0011 002E 0011 002E 0011 002E 0011 002E 0011 002E 0031 000F 0011 002E 0011 002E 0011 002E 0011 002E 0011 002E 0031 000F 0031 000F 0031 000F 0031 000F 0011 002E 0031 000F 0031 000F 0031 000F 0011 002E 0011 002E 0011 002E 0011 002E 0031 000F 0031 000F 0031 000F 0031 000F 0031 0331
        Down: JgBCACkMKQwpDCkMDiYOJg4mDiYOJikMDiYOJg4mDiYOJikMKQwpDCkMDiYpDCkMKQwOJg4mDiYOJikMKQwpDCkMKQACrg0FAAAAAA==
1 Like