RSS feeds
Included with Macro DeckFollow RSS and Atom feeds, show their newest articles in widgets and react when new articles arrive.
A Feed List widget and a Featured Article widget showing sample articles from a Tech News feed
- Follow any RSS 2.0 or Atom feed, as many as you like
- Feed List and Featured Article widgets
- Open an article on the device you tap it on
- Triggers for new articles and failed updates
- Keyword and category filters per feed
The RSS feeds integration follows news sites, blogs, podcasts and anything else that publishes an RSS 2.0 or Atom feed. Macro Deck checks your feeds in the background, keeps their newest articles and shows them in widgets. You do not need an account, and you can add as many feeds as you like.
Widgets, actions and triggers
The Feed List widget lists the newest articles with their title and date, and optionally the start of the text and a small image. The Featured Article widget shows one article large, with its image, and can take turns showing several of the newest articles. Each widget shows all feeds, one feed or one group of feeds. Tapping an article opens it in the browser of the device you tapped on, for example your phone with the web client, or shows its details in a dialog.
The action Refresh feeds checks one feed or all of them right away. Triggers react when a feed has a New feed article, when a feed was updated, when an update failed, and when someone taps an article on a widget. The actions they run can use the article's values, such as {{ event.title }} or {{ event.url }}.
Each feed also gets variables, for example feeds_<feed>_latest_title and feeds_<feed>_unread_count, plus feeds_all_unread_count for all feeds together.
Some example setups:
- A Feed List widget with the group
News, showing the newest articles of three news sites. - A Featured Article widget that switches to the next of the five newest articles every 10 seconds.
- An automation that runs on New feed article for a podcast feed and posts the episode title to a Discord channel with Send Discord webhook message from the Discord Webhooks integration.
- A button that runs Refresh feeds before your morning routine.
How it updates
Each feed is checked at its own interval, 30 minutes unless you change it, and at least every 5 minutes. Macro Deck asks the server whether the feed changed since the last check, so an unchanged feed costs very little. When a check fails, Macro Deck tries again after 1 minute and then waits longer after each further failure, up to an hour. Widgets update by themselves after every refresh and only show what Macro Deck already fetched, so more widgets do not mean more requests.
Articles a feed already has when you add it never fire New feed article, and a restart does not fire them again. For your safety, Macro Deck refuses feed addresses in local and private networks unless you allow them for that feed.
What you need
- Macro Deck 3 on Windows, macOS or Linux
- An internet connection on the computer that runs Macro Deck
- The address of an RSS 2.0 or Atom feed
Set it up
Step 1: Open the RSS feeds integration
In Macro Deck, click Integrations in the sidebar and click RSS feeds. On the Overview tab, click Add configuration in the Configuration section. Turning on the switch at the top right opens the same dialog.
Step 2: Add a feed
Fill in the dialog Add a feed:
- Feed address: the address of the feed, usually the link behind a website's RSS icon, for example
https://example.com/feed.xml. - Configuration name: how the feed is called in widgets, triggers and variables. Leave it empty to use the feed's own title.
- Group: optional, for example
News. Feeds with the same group can be shown together in one widget. - Refresh every (minutes): how often Macro Deck checks the feed, at least 5 minutes.
Under Advanced configuration you can set Only articles containing, Skip articles containing and Only these categories (each a list separated by commas), and Allow local network addresses for a feed served in your own network. Click Continue. Macro Deck reads the feed once before it saves it.
- Feed address: the address of the feed, usually the link behind a website's RSS icon, for example
Step 3: Add more feeds if you need them
Click Add configuration again for each further feed. The list of configurations shows for each feed whether its last refresh worked.
Step 4: Add a feed widget
On the Deck page, with the deck unlocked (the Lock button shows at the top right), add a Feed List or Featured Article widget. Under Show, choose All feeds, One feed or One group, and set Articles, Show description, Show images and When tapped.
Step 5: Add the refresh action to a button
To check for new articles on demand, click a button on the Deck page. The editor opens with Short Press selected. Click + Add action, select RSS feeds on the left of the Add action dialog and pick Refresh feeds. Choose a Feed, or leave it empty to refresh all feeds.
Step 6: Check the result
The widget shows the newest articles once the feed is read. Tap an article to open it on the device you tapped on. Articles that arrived since you added the feed and that you have not tapped yet are shown in bold.
Actions1
Put these on a button or run them from a flow.
- Refresh feeds
- Checks for new articles right away, in every feed or only in the chosen one, and waits up to 2 minutes for the result.
Triggers4
A button or flow can react to these events.
- New feed article
- A feed has an article that was not there before. With many new articles at once, it fires for the newest 20.
- Feed updated
- The articles of a feed changed on a refresh. It carries the newest article.
- Feed update failed
- A feed could not be refreshed, with an error code such as
timeoutorhttp-404. - Feed article opened
- An article was tapped on a Feed List or Featured Article widget. Optionally only for one widget.
Variables7
Show these values on buttons and widgets, or use them in conditions.
feeds_<feed>_latest_title,feeds_<feed>_latest_url,feeds_<feed>_latest_description,feeds_<feed>_latest_author- The title, link, description and author of the newest article of the feed.
feeds_<feed>_latest_published- When the newest article was published, as an ISO 8601 time.
feeds_<feed>_item_count- How many articles Macro Deck keeps for the feed, at most 50.
feeds_<feed>_unread_count- Articles that arrived since you added the feed and have not been tapped in a widget.
feeds_<feed>_last_updated- When the feed was last checked successfully, as an ISO 8601 time.
feeds_<feed>_update_status- The result of the last check:
ok,not-modified,error, orpendingbefore the first check. feeds_all_item_count,feeds_all_unread_count- The number of articles and unread articles in all feeds together.
Widgets2
Add these to your deck from the widget picker.
- Feed List
- Lists up to 10 of the newest articles of all feeds, one feed or one group.
- Featured Article
- Shows the newest article large with its image, and can take turns showing several of the newest articles.
Frequently asked questions
Where does an article open when I tap it?
With Open in the browser, the article opens in the browser of the device you tapped on, not on the computer that runs Macro Deck. When that device cannot open links, for example a hardware deck, Macro Deck shows the details with the address instead. Choose Show details or Run the widget's actions only under When tapped to change this.
Why does Macro Deck refuse my feed address?
Macro Deck refuses addresses in local and private networks, such as localhost or 192.168.…, also when a feed redirects there. If you serve the feed yourself, for example from a NAS, turn on Allow local network addresses for that feed under Advanced configuration. Other errors say whether the feed did not answer in time, could not be reached, is not an RSS or Atom feed, or is larger than 5 MB.
How are the variables named?
Each feed's variables are named after the configuration name it had when you added it, for example feeds_tech_news_latest_title. Renaming the configuration later keeps the names. The Variables tab of the integration shows the exact names.
Why did New feed article not fire for older articles?
Articles a feed already has when you add it never fire New feed article, and articles your filters leave out count as seen too. Changing a feed's address starts over, as if you had added a new feed.
What does Macro Deck send to the feed servers?
Macro Deck only contacts the feeds you add and the servers their images come from, with an ordinary request for the feed. Article text is shown as plain text, and scripts or embedded content of the feed are never run.
More in Smart home and web
Home Assistant
Included with Macro DeckSwitch lights, run scenes and scripts, and show live states from your Home Assistant on your deck.
AdGuard Home
Included with Macro DeckTurn AdGuard Home protection on, off or pause it, and show its statistics on your deck.
HTTP
Included with Macro DeckSend HTTP requests from a button and save values from the response into variables.
Weather
Included with Macro DeckShow the current weather and the forecast for your locations on your deck, without an API key.