Divoom Pixoo 64

I created a version 0.0.1 :smile: of Pixxo Rest as an Home Assistant Add-on. Here is the link to the HA Add On Repo: GitHub - kmplngj/ha-addons: Addons for Home Assistant.

I will add some more readme and documentation in the next days. Perhaps someone wants to test it.

Add the repo url in the HA Add-On Store, install Pixoo Rest. Set the IP address and Screen Size of your Pixoo64 in the configuration, save this and then start the Add-On.

2 Likes

the data you have to use with this command is custompageindex (value 0, 1 or 2). But before doing this you have also set the channel to 3 (custom channel) to this the changes on the Pixoo. I created three input button helpers and a small automation to use them.

alias: Pixoo64 Button Set Custom Channel Pressed
description: ""
trigger:
  - platform: state
    entity_id:
      - input_button.pixoo64_set_custom_channel_1
    id: channel_1
  - platform: state
    entity_id:
      - input_button.pixoo64_set_custom_channel_2
    id: channel_2
  - platform: state
    entity_id:
      - input_button.pixoo64_set_custom_channel_3
    id: channel_3
condition: []
action:
  - service: rest_command.pixoo64_set_channel
    data:
      effect: 3
  - choose:
      - conditions:
          - condition: trigger
            id: channel_1
        sequence:
          - service: rest_command.pixoo64_set_custom_channel
            data:
              custompageindex: 0
      - conditions:
          - condition: trigger
            id: channel_2
        sequence:
          - service: rest_command.pixoo64_set_custom_channel
            data:
              custompageindex: 1
      - conditions:
          - condition: trigger
            id: channel_3
        sequence:
          - service: rest_command.pixoo64_set_custom_channel
            data:
              custompageindex: 2
    default: []
mode: single

Hey. Can I ask what exactly you selected in these tools to convert the gif? I am not able to get it running. The Pixoo always restarts when I send the data.

Nevermind, I figured it out.
For anyone stumbling upon this, here is the current documentation ShowDoc

You have to pay attention to all the parameters and the image has to have the same width and height.

For converting, you can use the tools listed above (select binary as input on the base64 encoding), or use imagemagick and openssl base64 encode.

1 Like

I there a way to set a specific clock face? I can set channel, but can’t figure out a specific face.

I updated my Pixoo-Rest HA Addon. I now use my fork of Pixoo-Rest while my pull request is open at the original source. I added a rest api call to sent an image to the display via an url.

I use this in an automation to display the cover art of the current playing song on my HomePod, Amp or Apple TV.

1 Like

I also updated the original gist from my first post to include more functions and also a rest command for pixxo-rest image url.

Here are also two scripts use the rest commands more easily.

alias: Pixoo - Display line of text
fields:
  id:
    description: the text id is unique and new text with the same ID will replace the old
    required: true
    default: 1
    example: 1
    selector:
      number:
        min: 1
        max: 20
        step: 1
  Text:
    description: the text string is utf8 string and lenght is smaller than 512
    required: true
    selector:
      text: null
  Color:
    description: Color of the message
    required: true
    selector:
      color_rgb: null
    default:
      - 255
      - 255
      - 255
  Speed:
    description: Scrolling Speed in ms
    required: true
    default: 50
    example: 50
    selector:
      number:
        min: 10
        max: 500
        step: 5
  x:
    description: the start x postion
    required: true
    default: 0
    example: 0
    selector:
      number:
        min: 0
        max: 64
        step: 1
  "y":
    description: the start y postion
    required: true
    default: 0
    example: 0
    selector:
      number:
        min: 0
        max: 64
        step: 1
  Direction:
    description: 0:scroll left, 1:scroll right
    required: true
    default: 0
    example: 0
    selector:
      number:
        min: 0
        max: 1
        step: 1
  Font:
    description: 0~7, app animation’s font
    required: true
    default: 2
    example: 2
    selector:
      number:
        min: 0
        max: 7
        step: 1
  TextWidth:
    description: the text width is based point and bigger than 16, smaller than 64
    required: true
    default: 64
    example: 64
    selector:
      number:
        min: 16
        max: 64
        step: 1
  Align:
    description: >-
      horizontal text alignment, 1=left; 2=middle; 3=right, it will support at
      90102 version
    required: true
    default: 2
    example: 2
    selector:
      number:
        min: 1
        max: 3
        step: 1
sequence:
  - service: rest_command.pixoo64_set_text
    data:
      id: "{{ id }}"
      x: "{{ x }}"
      "y": "{{ y }}"
      Direction: "{{ Direction }}"
      TextWidth: "{{ TextWidth }}"
      Text: "{{ Text }}"
      Speed: "{{ Speed }}"
      Font: "{{ Font }}"
      Align: "{{ Align }}"
      Color: "{{ \"#%02x%02x%02x\" | format(Color[0], Color[1], Color[2]) }}"
mode: queued
max: 3
alias: Pixoo - Sent Image via URL
fields:
  Imageurl:
    description: the complete URL to the Image with protocol
    required: true
    selector:
      text: null
  x:
    description: the x postion
    required: true
    default: 0
    example: 0
    selector:
      number:
        min: 0
        max: 64
        step: 1
  "y":
    description: the y postion
    required: true
    default: 0
    example: 0
    selector:
      number:
        min: 0
        max: 64
        step: 1
sequence:
  - service: rest_command.pixoo_rest_imageurl
    data:
      Imageurl: "{{ Imageurl }}"
      x: "{{ x }}"
      "y": "{{ y }}"
mode: queued
max: 3
1 Like

Do you have any code for this?

I installed add-on v0.0.2 but it’s not completely starting. The log appears to show it started successfully but the add-on info page shows the status as red and the “Start” button looping.

s6-rc: info: service s6rc-oneshot-runner: starting
s6-rc: info: service s6rc-oneshot-runner successfully started
s6-rc: info: service fix-attrs: starting
s6-rc: info: service fix-attrs successfully started
s6-rc: info: service legacy-cont-init: starting
s6-rc: info: service legacy-cont-init successfully started
s6-rc: info: service legacy-services: starting
s6-rc: info: service legacy-services successfully started
[10:13:49] INFO: Reading Config from Home Asssitant Addon...
[10:13:50] INFO: Starting Pixoo-Rest server...
[2023-09-04 10:13:50 +0900] [109] [INFO] Starting gunicorn 20.1.0
[2023-09-04 10:13:50 +0900] [109] [INFO] Listening at: http://0.0.0.0:5000 (109)
[2023-09-04 10:13:50 +0900] [109] [INFO] Using worker: sync
[2023-09-04 10:13:50 +0900] [110] [INFO] Booting worker with pid: 110

Which OS and which hardware do you use to run Home Assistant?

I’m running Home Assistant Supervised on an x86. Somehow, after some time it just started, so it’s working fine now. Thank you for the response.

Howdy, new to HA so wondering if you can help me.

Got the addon working great and I can test things in Swagger and update the Pixoo, how do I now create scripts to automate things. I’m guessing I need to somehow add the swagger endpoints somewhere into HA to access them but I’m not sure the best way. Hoping there is something to quickly translate them all over. Thank you

I am using your addon, and love it!

Would you make your addon so that we can have multiple instances of it?
I have many 64’s in my house, and would love to control them all this way.

Thanks for your time!