TileBoard - New dashboard for Homeassistant

I have no doubt it was about something about that something. I did things find.
it s just that i still have that same message and i really would like to have tileboard working.

I created a long live token thinking that could be a solution but it is not.
Can anyone share a working config file ???

Here is mine :

image

Is that the whole file? It’s missing the closing brace.

Also, see my previous comment above.

1 Like

Issue still exists. When i’ve redefined secondaryAction for tile and call this.$scope.openPopup - tiles inside popup not clickable(action - doesnt work), but if you add lights with (+/-) - actions for those buttons work.

Sample code:

{
    type: TYPES.SWITCH,
    subtitle: 'Kitchen',
    position: [1, 3],
    id: 'light.f1_r1_light_base_fan',
    title: 'Test',
    icons: {
       on: 'mdi-spin mdi-fan',
       off: 'mdi-fan',
    },
    states: {
       on: "On",
       off: "Off"
    },
    secondaryAction: function (item, entity) {
       this.$scope.openPopup({
          type: TYPES.POPUP,
          position: [0, 3],
          id: {},
          icon: 'mdi-android',
          title: 'History popup',
          state: false,
          popup: {
             tileSize: 100,
             items: [
                {
                   type: TYPES.SWITCH,
                   subtitle: 'Kitchen',
                   position: [1, 3],
                   id: 'light.f1_r1_light_base_fan',
                   title: 'Test',
                   icons: {
                      on: 'mdi-spin mdi-fan',
                      off: 'mdi-fan',
                   },
                   states: {
                      on: "On",
                      off: "Off"
                   },
                },
             ]
          }
       }, '');
    },
 }

Hi guys,
Can i split the config.js file in more files? like a file for each page. I want to try this because my config.js file is realy big (5k rows) and i think it can slow down my old tablet.
If it can be splited, how can i put a link on icon of the url page for the next config file?

Second questions… dear @resoai what can be the problem that cause a lot of ping unsuccesful and reconnects to hassio? i get this errors on my panel and laptop too. Hassio is running on a raspberry 4, wired connected to rooter. Is the rooter that cause this issues or i have to look in other places?
kindly regards

This works for me:

The used custom tiles to navigate between pages:


 {
  position: [0, 0],
  type: TYPES.CUSTOM,
  title: 'New window',
  id: { },
  icon: 'fa-house',
  action: function(item, entity) {
     window.location.href = 'http://********/local/TileBoard/index.html?config=*******';
},

Fill the ******* with your configuration.

1 Like

Adding the custom loadScript code is not necessary anymore as there is now a built-in functionality to load a specific configuration file. See the first paragraph at https://github.com/resoai/TileBoard#configure

Great news! One of those examples where unless you need to change it everything works fine as it is.

Does that mean I can delete the original loadScript Config.js and the other Config Objects (e.g bedroom.js) will still work or do I still need a config.js to initialise everything before I can access the other Config Objects?

Hi

Frist of all great project this is. Thanks for making public this code.

I need help in one thing, in the theme homekit my navigation bar always show a white bar like in the image :

the background image does not fill the menu, is this normal or i miss something ?

Thanks in advance

My history tiles don’t seem to adhere to the given history range. When the board first loads, it seems to be fine, showing the past 2 days of history, just like I configured. But from there on, it just starts adding to the graph. So after 4 days, the graph shows 4 days, after 10 days, the graph shows 10 days, etc.

Here’s the code:

{
   position: [1, 1],
   type: TYPES.HISTORY,
   id: 'sensor.tfa_ts34c_cresta_2b_0e_temperature',
   width: 2,
   title: 'Living Room History',
   subtitle: function (item, entity) {
      return 'since ' + timeAgo(Date.now() - (item.offset || 24*3600*1000));
   },
   offset: 2*24*3600*1000,
   options: MINIMAL_CHART_OPTIONS,
},

Possibly helpful info: This board is run by an android tablet via an webview-app. Maybe that behaves different from a regular browser?

Hi TileBoard team.
I’m using TYPES.DOOR_ENTRY Tile for my implementation to run communication with my doorbell. I woud like to start voice communication over SIP protocol as my doorbell uses that standard. There is a “doorbell-card” project i’ve implemented in Lovelace, however it would be great to have ability of running it in the TileBoard.
Please advice how to run external content inside the Door_entry tile.

I suppose you could create a feature request in the project. Maybe someone would be willing to implement it. You can of course hack on it yourself too. There seems to be SIP libraries for JS like https://jssip.net/ or https://sipjs.com/ so it should be doable.

Hi Rafał,
i’ll try to build some code arroung jssip project - it works in lovelace and the question is what is best practice to have it rewrite to be “Tileboard compatible”. Of course I can try to build my own tile, but not sure if it is simplest way.

I suppose you could extend the DOOR_ENTRY tile to support a configuration key like sip_endpoint which, when set, would enable some UI for toggling communication with the endpoint. It could be a simple extra tile in the door entry popup that would just be on or off.

I need a little help writing a javascript function, since I’m not a programmer. As a diabetic, I need to remeber my medicine morning and evening. I want to set the page background of my Tileboard to red, when it’s time to take my medicine and green when not.

So my question is how to write at JS function, which changes the page background, when an input_boolean is changes and reload the page.
I’ve tried this without any luck.

    pages: [
        {
            title: 'Stue',
	    bg: function (item, entity) {
                        return {
                                   'bg': this.states['input_boolean.medicin'].state === 'off' ? 'images/bg1.jpg' : 'images/bg2.jpg'
                                   }
			location.reload()	
                        },

Any hints are appreciated

Hello all

I want to add the google calendar and the shopping list on the tile board bue none of the tiles is the best to do it. I’ve tried the iframe and the custom tile but none of them suits.

Do you know how to do it or have any other idea??

Thanks

Hi all,
can you help me - i’m learning and i stucked.
I did TYPES.CUSTOM tile with following config:

position: [0, 0],
type: TYPES.CUSTOM,
title: 'Screen Off',
id: { },
icon: 'mdi-monitor',
customHtml: '<body><button id="invite">Invite Session</button><audio id="remote"></audio><script src="/local/TileBoard/Intercom/sip-0.13.5.js"></script><script src="/local/TileBoard/Intercom/main.js"></script></body>',
action: function(item, entity) {
	???.runIntercom();
},
secondaryAction: function(item, entity) {
	return this.$scope.openPopupIframe(item, entity);
}

Now I’d like to call as action function “runIntercom()” existing in the “/local/TileBoard/Intercom/main.js”, however I’m not sure how can I call it (therefore i have a questionmarks ??? here :wink: ).

How should I call the function?

Something like this maybe:

    pages: [
        {
            title: 'Stue',
            bg: function (item, entity) {
                return this.states['input_boolean.medicin'].state === 'off' ? 'images/bg1.jpg' : 'images/bg2.jpg'
            }
            // ...
        }
    ]

What was your solution for setting one specific mdi on a Weather-Tile? I’m trying the same, but with no luck so far. Thx!

action: function(item, entity) {
	return runIntercom();
},

hope you guys like my tileboard (not finished, and sorry, it’s in romanian language)

12 Likes