MagicMirror Forum
    • Recent
    • Tags
    • Unsolved
    • Solved
    • MagicMirror² Repository
    • Documentation
    • 3rd-Party-Modules
    • Donate
    • Discord
    • Register
    • Login
    A New Chapter for MagicMirror: The Community Takes the Lead
    Read the statement by Michael Teeuw here.

    MMM-KitchenTimer - Touch-friendly countdown timer

    Scheduled Pinned Locked Moved Utilities
    timertouchkitchen
    29 Posts 3 Posters 1.2k Views 3 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • B Offline
      bwente @Niggich
      last edited by

      @Niggich On the HA side you would listen for the timer topic.

      alias: Start Echo timer from MagicMirror
      triggers:
        - trigger: mqtt
          topic: magicmirror/kitchen-timer/started
      
      actions:
        - action: media_player.play_media
          target:
            entity_id: media_player.kitchen_echo
          data:
            media_content_type: custom
            media_content_id: >-
              set a timer for
              {{ trigger.payload_json.remainingSeconds | int }}
              seconds
      
      NiggichN 1 Reply Last reply Reply Quote 0
      • NiggichN Offline
        Niggich @bwente
        last edited by Niggich

        @bwente Ok, thank you. So I don’t need to configure something at the MMM-MQTTbridge just in HA?

        edit: I try the whole afternoon, but I don’t know how to do. I also try it with MMM-HomeAssistant.

        B 1 Reply Last reply Reply Quote 0
        • B Offline
          bwente @Niggich
          last edited by

          @Niggich

          Something like this for your MMM-MQTTbridge config on your mirror.

          {
            module: "MMM-MQTTbridge",
            disabled: false,
            config: {
              mqttServer: "mqtt://USERNAME:PASSWORD@192.168.1.10:1883",
              stringifyPayload: true,
          
              mqttConfig: {
                // This example only sends MagicMirror events to MQTT.
                listenMqtt: false,
                interval: 300000,
              },
          
              notiConfig: {
                listenNoti: true,
                ignoreNotiId: ["CLOCK_MINUTE", "CLOCK_SECOND", "NEWS_FEED"],
                ignoreNotiSender: ["system"],
                qos: 0,
              },
            },
          },
          

          then edit

          ~/MagicMirror/modules/MMM-MQTTbridge/dict/notiDictionary.js
          
          var notiHook = [
            {
              notiId: "KITCHEN_TIMER_STARTED",
              notiPayload: [
                {
                  notiMqttCmd: ["Kitchen timer started"],
                },
              ],
            },
          ];
          
          var notiMqttCommands = [
            {
              commandId: "Kitchen timer started",
              mqttTopic: "magicmirror/kitchen-timer/started",
              stringifyPayload: true,
              retain: false,
              qos: 0,
            },
          ];
          
          module.exports = { notiHook, notiMqttCommands };
          

          after restarting your mirror you should be able to listen for the topic: magicmirror/kitchen-timer/started in Home Assistant developer tools.

          NiggichN 1 Reply Last reply Reply Quote 0
          • NiggichN Offline
            Niggich @bwente
            last edited by

            @bwente Wow, you’re great. My Echo know I want to start a Timer but it’s asking for how long.

            B 1 Reply Last reply Reply Quote 0
            • B Offline
              bwente @Niggich
              last edited by

              @Niggich said:

              My Echo know I want to start a Timer but it’s asking for how long.

              Great, now that you’ve confirmed MQTT is working, the next step is to add the Home Assistant automation.

              alias: MagicMirror kitchen timer started
              triggers:
                - trigger: mqtt
                  topic: magicmirror/kitchen-timer/started
              
              actions:
                - action: media_player.play_media
                  target:
                    entity_id: media_player.kitchen_echo
                  data:
                    media_content_type: custom
                    media_content_id: >-
                      set a timer for
                      {{ trigger.payload_json.remainingSeconds | int }}
                      seconds
              

              I think that will work. I don’t know if it needs to be escaped or not.

              NiggichN 1 Reply Last reply Reply Quote 0
              • NiggichN Offline
                Niggich @bwente
                last edited by

                @bwente I add the automation already and change it again but the echo still asking “for how log should be the timer”… I also try to fix it with ChatGPT but this was not working.

                B 1 Reply Last reply Reply Quote 0
                • B Offline
                  bwente @Niggich
                  last edited by

                  @Niggich looks like trigger.payload_json.remainingSeconds is empty or double quoted. Can you view just the payload and see?

                  NiggichN 1 Reply Last reply Reply Quote 0
                  • NiggichN Offline
                    Niggich @bwente
                    last edited by

                    @bwente I’m sorry but where I found trigger.payload_json.remainingSeconds?

                    S 1 Reply Last reply Reply Quote 0
                    • S Do not disturb
                      sdetweil @Niggich
                      last edited by sdetweil

                      @Niggich in an HA. Automation are variable to help you do want you want

                      One of those is

                      trigger. - what started the automation

                      If you go into HA , settings, automations, pick any one,
                      Look at the traces (3 dot menu). You can see the variables and values for each step of the automation

                      Sam

                      How to add modules

                      learning how to use browser developers window for css changes

                      NiggichN 1 Reply Last reply Reply Quote 1
                      • NiggichN Offline
                        Niggich @sdetweil
                        last edited by

                        @sdetweil Thank you. I don’t know if I’m right but this is the variable from the traces.

                        this:
                          entity_id: automation.timer
                          state: 'on'
                          attributes:
                            id: '1786549333845'
                            last_triggered: '2026-08-13T11:33:26.793052+00:00'
                            mode: single
                            current: 0
                            friendly_name: MagicMirror kitchen timer started
                          last_changed: '2026-08-14T20:14:37.860754+00:00'
                          last_reported: '2026-08-14T20:14:37.860754+00:00'
                          last_updated: '2026-08-14T20:14:37.860754+00:00'
                          context:
                            id: 01M00YK2S42QSK0Q9WAEN19ACF
                            parent_id: null
                            user_id: null
                        trigger:
                          id: '0'
                          idx: '0'
                          alias: null
                          platform: mqtt
                          topic: magicmirror/kitchen-timer/started
                          payload: >-
                            {"status":"running","remainingSeconds":60,"endsAt":1786738603487,"durationSeconds":60,"elapsedRatio":0}
                          qos: 0
                          description: mqtt topic magicmirror/kitchen-timer/started
                          payload_json:
                            status: running
                            remainingSeconds: 60
                            endsAt: 1786738603487
                            durationSeconds: 60
                            elapsedRatio: 0
                        
                        S 1 Reply Last reply Reply Quote 0
                        • S Do not disturb
                          sdetweil @Niggich
                          last edited by sdetweil

                          @Niggich so

                          trigger.payload.remainingSeconds

                          Sam

                          How to add modules

                          learning how to use browser developers window for css changes

                          NiggichN 1 Reply Last reply Reply Quote 0
                          • NiggichN Offline
                            Niggich @sdetweil
                            last edited by

                            @sdetweil No, it is not working.

                            S 1 Reply Last reply Reply Quote 0
                            • S Do not disturb
                              sdetweil @Niggich
                              last edited by

                              @Niggich sorry, this is case sensitive and I had lower case s, see my edit

                              Sam

                              How to add modules

                              learning how to use browser developers window for css changes

                              NiggichN 1 Reply Last reply Reply Quote 0
                              • NiggichN Offline
                                Niggich @sdetweil
                                last edited by

                                @sdetweil No, it’s not working. This is the automation

                                alias: MagicMirror kitchen timer started
                                triggers:
                                  - trigger: mqtt
                                    topic: magicmirror/kitchen-timer/started
                                actions:
                                  - action: media_player.play_media
                                    target:
                                      entity_id: media_player.echo_show_kuche
                                    data:
                                      media:
                                        media_content_id: >-
                                          set a timer for {{ trigger.payload.remainingSeconds | int }}
                                          seconds
                                        media_content_type: custom
                                        metadata: {}
                                
                                
                                S 1 Reply Last reply Reply Quote 0
                                • S Do not disturb
                                  sdetweil @Niggich
                                  last edited by

                                  @Niggich if you examine the traces , what error is reported?

                                  Sam

                                  How to add modules

                                  learning how to use browser developers window for css changes

                                  NiggichN 1 Reply Last reply Reply Quote 0
                                  • NiggichN Offline
                                    Niggich @sdetweil
                                    last edited by Niggich

                                    @sdetweil sagte:

                                    if you examine the traces , what error is reported?

                                    This Error is shown: “Error rendering data template: UndefinedError: ‘str object’ has no attribute ‘remainingSeconds’”

                                    When I change the trigger back to trigger.payload_json.remainingSeconds is no Error reported an the Echo asks for how long should be the timer.

                                    The traces-Log says this.

                                    params:
                                      domain: media_player
                                      service: play_media
                                      service_data:
                                        entity_id:
                                          - media_player.echo_show_kuche
                                        media_content_type: custom
                                        media_content_id: set a timer for 60 seconds
                                      target:
                                        entity_id:
                                          - media_player.echo_show_kuche
                                    running_script: false
                                    
                                    S 1 Reply Last reply Reply Quote 0
                                    • S Do not disturb
                                      sdetweil @Niggich
                                      last edited by

                                      @Niggich ok. Good info

                                      I need to test this myself, but won’t be able to til tomorrow sometime. I also need to use my echo device which is currently not used

                                      Sam

                                      How to add modules

                                      learning how to use browser developers window for css changes

                                      NiggichN 1 Reply Last reply Reply Quote 1
                                      • NiggichN Offline
                                        Niggich @sdetweil
                                        last edited by

                                        @sdetweil Ok, don’t worry. I’m happy you help me. Thank you!

                                        1 Reply Last reply Reply Quote 0

                                        Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                        Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                        With your input, this post could be even better 💗

                                        Register Login
                                        • 1
                                        • 2
                                        • 2 / 2
                                        • First post
                                          Last post
                                        Enjoying MagicMirror? Please consider a donation!
                                        MagicMirror created by Michael Teeuw.
                                        Forum managed by Sam, technical setup by Karsten.
                                        This forum is using NodeBB as its core | Contributors
                                        Contact | Privacy Policy