<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Programming &#8211; David Stein</title>
	<atom:link href="https://davidstein.cz/category/programming/feed/" rel="self" type="application/rss+xml" />
	<link>https://davidstein.cz</link>
	<description>IT Specialist, hacker and electronic enthusiast</description>
	<lastBuildDate>Wed, 28 May 2025 09:06:32 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://davidstein.cz/wp-content/uploads/cropped-avatar_60_60-32x32.jpg</url>
	<title>Programming &#8211; David Stein</title>
	<link>https://davidstein.cz</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>TeamViewer &#8211; API get list of old devices</title>
		<link>https://davidstein.cz/2025/05/28/teamviewer-api-get-list-of-old-devices/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Wed, 28 May 2025 09:06:26 +0000</pubDate>
				<category><![CDATA[Internet]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[devices]]></category>
		<category><![CDATA[get]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[list]]></category>
		<category><![CDATA[old]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[team viewer]]></category>
		<category><![CDATA[teamviewer]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[uncategorized]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=5288</guid>

					<description><![CDATA[If you are facing the limit of the maximum number of devices under your TeamViewer license, it is very helpful to get a list of all devices that have not been connected for a long time. 1. Prepare the API Token 2. Python Script Replace TEAMVIEWER_API_TOKEN with your actual token. After you run the script, [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>If you are facing the limit of the maximum number of devices under your TeamViewer license, it is very helpful to get a list of all devices that have not been connected for a long time. Replace with your actual token. After you run the script, it will produce a list of devices, their IDs, and the last seen dates in the console.</p>
<p><a href="https://davidstein.cz/2025/05/28/teamviewer-api-get-list-of-old-devices/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>HomeAssistant &#8211; Wolf CWL-2 Modbus communication</title>
		<link>https://davidstein.cz/2023/01/26/homeassistant-wolf-cwl-2-modbus-communication/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Thu, 26 Jan 2023 17:36:18 +0000</pubDate>
				<category><![CDATA[Electronic]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[automazation]]></category>
		<category><![CDATA[communication]]></category>
		<category><![CDATA[cwl-2]]></category>
		<category><![CDATA[electronic]]></category>
		<category><![CDATA[home assistant]]></category>
		<category><![CDATA[homeassistant]]></category>
		<category><![CDATA[modbus]]></category>
		<category><![CDATA[node-red]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[recuperation]]></category>
		<category><![CDATA[team viewer]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[tutorials]]></category>
		<category><![CDATA[wolf]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=5177</guid>

					<description><![CDATA[A quick tutorial on connecting your HomeAssistant to read and write data to Wolf CWL-2 (and other Wolf devices that use the Modbus). All data in this tutorial are get from live installation so you need to edit it to match your setup(unit id/network IP etc). Requirements Connection You are able to connect multiple devices [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>A quick tutorial on connecting your HomeAssistant to read and write data to Wolf CWL-2 (and other Wolf devices that use the Modbus). All data in this tutorial are get from live installation so you need to edit it to match your setup(unit id/network IP etc). You are able to connect multiple devices in the chain. In my case, I use one bridge to communicate with 3 Wolf units.</p>
<p><a href="https://davidstein.cz/2023/01/26/homeassistant-wolf-cwl-2-modbus-communication/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Mikrotik &#8211; failover script with link quality check</title>
		<link>https://davidstein.cz/2023/01/26/mikrotik-failover-script-with-link-quality-check/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Thu, 26 Jan 2023 10:43:17 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[check]]></category>
		<category><![CDATA[failover]]></category>
		<category><![CDATA[link]]></category>
		<category><![CDATA[link quality]]></category>
		<category><![CDATA[mikotik]]></category>
		<category><![CDATA[mikrotik]]></category>
		<category><![CDATA[networking]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[quality]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[team viewer]]></category>
		<category><![CDATA[threshold]]></category>
		<category><![CDATA[with]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=5175</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[<p></p>
<p><a href="https://davidstein.cz/2023/01/26/mikrotik-failover-script-with-link-quality-check/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Project SmartKitchen &#8211; TCP/IP kitchen signal dev.</title>
		<link>https://davidstein.cz/2022/12/09/project-smartkitchen-tcp-ip-kitchen-signal-dev/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Fri, 09 Dec 2022 19:44:02 +0000</pubDate>
				<category><![CDATA[IoT]]></category>
		<category><![CDATA[My projects]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[SmartKitchen]]></category>
		<category><![CDATA[dev.]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[kitchen]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[project]]></category>
		<category><![CDATA[projects]]></category>
		<category><![CDATA[signal]]></category>
		<category><![CDATA[smartkitchen]]></category>
		<category><![CDATA[tcp/ip]]></category>
		<category><![CDATA[team viewer]]></category>
		<category><![CDATA[uncategorized]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=5135</guid>

					<description><![CDATA[A few years ago I get the goal to come up with a solution to one unusual situation. One kitchen and two different restaurants, both of them use different POS systems so they are not compatible. The one kitchen prepares meals for both restaurants. There is a need to somehow let to know the waiters [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>A few years ago I get the goal to come up with a solution to one unusual situation. One kitchen and two different restaurants, both of them use different POS systems so they are not compatible. The one kitchen prepares meals for both restaurants. There is a need to somehow let to know the waiters in restaurants, that meal is ready to pick up. But at least both restaurants used the same ethernet…</p>
<p><a href="https://davidstein.cz/2022/12/09/project-smartkitchen-tcp-ip-kitchen-signal-dev/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>FireSmartHeating &#8211; intelligent control board for electric floor heating</title>
		<link>https://davidstein.cz/2022/09/10/firesmartheating-intelligent-control-board-for-electric-floor-heating/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Sat, 10 Sep 2022 18:06:01 +0000</pubDate>
				<category><![CDATA[Electronic]]></category>
		<category><![CDATA[FireSmartHeating]]></category>
		<category><![CDATA[IoT]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[block]]></category>
		<category><![CDATA[electro]]></category>
		<category><![CDATA[external sensor]]></category>
		<category><![CDATA[floor]]></category>
		<category><![CDATA[heating]]></category>
		<category><![CDATA[home assistant]]></category>
		<category><![CDATA[integration]]></category>
		<category><![CDATA[iot]]></category>
		<category><![CDATA[temperature]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=5058</guid>

					<description><![CDATA[Goal My goal was to create a device that could control my house&#8217;s electric floor heating system. I do some research, but I can&#8217;t find any suitable solution. So I decided to come up with my own device. it must fit in a standard electric box (every room has its own, circa 73,5 mm) it [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>My goal was to create a device that could control my house’s electric floor heating system. I do some research, but I can’t find any suitable solution. So I decided to come up with my own device. I decided to design my own PCB because as I write on top I can’t find a suitable device. There is no problem to find the device that will control the heating (it is nothing more than a…</p>
<p><a href="https://davidstein.cz/2022/09/10/firesmartheating-intelligent-control-board-for-electric-floor-heating/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>RPI &#8211; Display blank timeout</title>
		<link>https://davidstein.cz/2021/06/21/rpi-display-blank-timeout/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Mon, 21 Jun 2021 10:19:30 +0000</pubDate>
				<category><![CDATA[IoT]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[display]]></category>
		<category><![CDATA[pi]]></category>
		<category><![CDATA[raspbeery]]></category>
		<category><![CDATA[raspberry]]></category>
		<category><![CDATA[screen saver]]></category>
		<category><![CDATA[timeout]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=4982</guid>

					<description><![CDATA[If you boot to cmd line If you need to change the timeout after what raspberry blank(turn off) connected displays. You need modify the config file /boot/cmdline.txt and add parameter consoleblank=xxx (replace x with desired value) for example the cmdilne.txt shlould looks like: If you boot to xdesktop If you boot to desktop enviroment you [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>If you need to change the timeout after what raspberry blank(turn off) connected displays. You need modify the config file /boot/cmdline.txt and add parameter consoleblank=xxx (replace x with desired value) for example the cmdilne.txt shlould looks like: If you boot to desktop enviroment you need edit the autostart file /etc/xdg/lxsession/LXDE-pi/autostart <- if you are using the…</p>
<p><a href="https://davidstein.cz/2021/06/21/rpi-display-blank-timeout/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Linux cheat sheet</title>
		<link>https://davidstein.cz/2021/04/07/linux-cheat-sheet/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Wed, 07 Apr 2021 15:33:00 +0000</pubDate>
				<category><![CDATA[IT]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[cheatsheet]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[unix]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=4951</guid>

					<description><![CDATA[A Standard Linux Directory Structure Below is a reference to the basic structure of directories for most Linux distributions. Find more at the&#160;Linux Filesystem Hierarchy Standard, on Wikipedia. /&#160;&#8211; the root or base of the filesystem /bin&#160;&#8211; operating system binaries /boot&#160;&#8211; Linux kernel and programs run at startup /dev&#160;&#8211; devices /etc&#160;&#8211; system configuration files /home&#160;&#8211; [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Below is a reference to the basic structure of directories for most Linux distributions. Find more at the Linux Filesystem Hierarchy Standard, on Wikipedia. Linux offers extensive search capabilities using wildcards and the following characters are frequently used. These 10 metacharacters have special meaning to the bash shell program and must be quoted with or to…</p>
<p><a href="https://davidstein.cz/2021/04/07/linux-cheat-sheet/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>SilverCrest wireless door bell &#8211; forget learned devices &#8211; solved</title>
		<link>https://davidstein.cz/2020/08/07/silvercrest-wireless-door-bell-forget-learned-devices-solved/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Fri, 07 Aug 2020 16:54:51 +0000</pubDate>
				<category><![CDATA[IoT]]></category>
		<category><![CDATA[IT]]></category>
		<category><![CDATA[Networking]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[433]]></category>
		<category><![CDATA[clarus_switch]]></category>
		<category><![CDATA[lidl]]></category>
		<category><![CDATA[mqtt]]></category>
		<category><![CDATA[OMG]]></category>
		<category><![CDATA[reset]]></category>
		<category><![CDATA[rf]]></category>
		<category><![CDATA[sonoff]]></category>
		<category><![CDATA[wireless]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=4896</guid>

					<description><![CDATA[Device: HG04115A-RX IAN: 303733 This week I had to change the battery in my cheap wireless doorbell device from Lidl shop. But unfortunately when I was a pairing device somebody open doors with a 433MHz contact sensor and the receiver learn it as a wireless button. It is quite funny because I inadvertently invented cheap [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>This week I had to change the battery in my cheap wireless doorbell device from Lidl shop. But unfortunately when I was a pairing device somebody open doors with a 433MHz contact sensor and the receiver learn it as a wireless button. It is quite funny because I inadvertently invented cheap door open alarm 😀 I do not find any way how to reset this device to total factory setup and…</p>
<p><a href="https://davidstein.cz/2020/08/07/silvercrest-wireless-door-bell-forget-learned-devices-solved/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Arduino IDE best alternative = VSC + PlatformIO</title>
		<link>https://davidstein.cz/2019/03/09/arduino-ide-best-alternative-vsc-platformio/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Fri, 08 Mar 2019 23:07:41 +0000</pubDate>
				<category><![CDATA[IoT]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tutorials]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=4749</guid>

					<description><![CDATA[Are you upset with Arduino IDE? Are you starting new project? Are you missing all normal IDE features like a code completion, syntax check etc? Arduino IDE is alive, long live to PlatformIO!]]></description>
										<content:encoded><![CDATA[<p>Are you upset with Arduino IDE? Are you starting new project? Are you missing all normal IDE features like a code completion, syntax check etc?</p>
<p><a href="https://davidstein.cz/2019/03/09/arduino-ide-best-alternative-vsc-platformio/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Video tutorial Wemos D1 mini + arduino IDE</title>
		<link>https://davidstein.cz/2018/06/24/video-tutorial-wemos-d1-mini-arduino-ide/</link>
		
		<dc:creator><![CDATA[fires]]></dc:creator>
		<pubDate>Sun, 24 Jun 2018 18:10:09 +0000</pubDate>
				<category><![CDATA[IoT]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Tutorials]]></category>
		<category><![CDATA[Arduino IDE]]></category>
		<category><![CDATA[arudino]]></category>
		<category><![CDATA[D1]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[mini]]></category>
		<category><![CDATA[Wemos]]></category>
		<guid isPermaLink="false">http://davidstein.cz/?p=4719</guid>

					<description><![CDATA[]]></description>
										<content:encoded><![CDATA[<p></p>
<p><a href="https://davidstein.cz/2018/06/24/video-tutorial-wemos-d1-mini-arduino-ide/" rel="nofollow">Source</a></p>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
