<?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>Elektrotechnik &#8211; datort.de</title>
	<atom:link href="https://datort.de/tag/elektrotechnik/feed/" rel="self" type="application/rss+xml" />
	<link>https://datort.de</link>
	<description>Retro, Gaming, Tech: Videos und Berichte</description>
	<lastBuildDate>Wed, 26 Nov 2025 19:33:35 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://datort.de/wp-content/uploads/2024/10/cropped-datort_computer_isolated-32x32.png</url>
	<title>Elektrotechnik &#8211; datort.de</title>
	<link>https://datort.de</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Hugo: Der Troll, den ich nicht spielen durfte</title>
		<link>https://datort.de/retro-computing/1219/hugo-der-troll-den-ich-nicht-spielen-durfte/</link>
					<comments>https://datort.de/retro-computing/1219/hugo-der-troll-den-ich-nicht-spielen-durfte/#comments</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Sat, 01 Nov 2025 22:31:44 +0000</pubDate>
				<category><![CDATA[Raspberry & Arduino]]></category>
		<category><![CDATA[Retro Computing]]></category>
		<category><![CDATA[Youtube]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<category><![CDATA[esp32]]></category>
		<category><![CDATA[Retro]]></category>
		<category><![CDATA[Spiele]]></category>
		<guid isPermaLink="false">https://datort.de/?p=1219</guid>

					<description><![CDATA[1994 erblickte nicht nur der Netscape Navigator oder die erste PlayStation das Licht der Welt, auf dem noch&#8230;]]></description>
										<content:encoded><![CDATA[
<p>1994 erblickte nicht nur der Netscape Navigator oder die erste PlayStation das Licht der Welt, auf dem noch recht jungen TV-Sender &#8222;Der Kabelkanal&#8220;, heute besser bekannt als Kabel 1, turnt auch ein kleiner Troll über den Bildschirm: Hugo.</p>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/retro-computing/1219/hugo-der-troll-den-ich-nicht-spielen-durfte/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2F7n7WMO9uasc%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Das Konzept der Sendung war damals recht einzigartig: Die Zuschauer konnten den kleinen Troll in kurzen Spielchen mit den DTMF-Tastentönen ihrer Telefon von Zuhause steuern. Auf dem Bildschirm sahen sie dann das Ergebnis ihrer Tastendrücke. Heute durch die stark unterschiedlichen Laufwege und -zeiten moderner TV-Verbreitungswege undenkbar &#8211; und auch damals schon nicht immer ganz problemlos. </p>



<p>Egal, vier Jahre lief das Ganze. Und ich wollte gerne mitspielen, hatte aber nie das Glück durchzukommen. Das plagt mich bis heute, wie ich auch in meiner Podcast-Episode zu Hugo kundtat. In der Episode gehe ich noch ein bisschen genauer auf das Spiel, die Sendung und die Produktion ein. </p>


<div id="3038554879" class="castos-player dark-mode " tabindex="0" data-episode="1174" data-player_id="3038554879">
	<div class="player">
		<div class="player__main">
			<div class="player__artwork player__artwork-1174">
				<img decoding="async" src="https://datort.de/wp-content/uploads/2025/09/005_hugo-200x200.jpg"
					 alt="Pad One, Please! Der nächste Retro-Podcast"
					 title="Pad One, Please! Der nächste Retro-Podcast">
			</div>
			<div class="player__body">
				<div class="currently-playing">
					<div class="show player__podcast-title">
						Pad One, Please! Der nächste Retro-Podcast					</div>
					<div class="episode-title player__episode-title">#005: Hugo trollt TV und Games</div>
				</div>
				<div class="play-progress">
					<div class="play-pause-controls">
						<button title="Play" aria-label="Play Episode" aria-pressed="false" class="play-btn">
							<span class="screen-reader-text">Play Episode</span>
						</button>
						<button title="Pause" aria-label="Pause Episode" aria-pressed="false" class="pause-btn hide">
							<span class="screen-reader-text">Pause Episode</span>
						</button>
						<img decoding="async" src="https://datort.de/wp-content/plugins/seriously-simple-podcasting/assets/css/images/player/images/icon-loader.svg" alt="Loading" class="ssp-loader hide"/>
					</div>
					<div>
						<audio preload="none" class="clip clip-1174">
							<source src="https://datort.de/podcast-player/1174/005-hugo-trollt-tv-und-games.mp3">
						</audio>
						<div class="ssp-progress" role="progressbar" title="Seek" aria-valuenow="0" aria-valuemin="0" aria-valuemax="843">
							<span class="progress__filled"></span>
						</div>
						<div class="ssp-playback playback">
							<div class="playback__controls">
								<button class="player-btn player-btn__volume" title="Mute/Unmute">
									<span class="screen-reader-text">Mute/Unmute Episode</span>
								</button>
								<button data-skip="-10" class="player-btn player-btn__rwd" title="Rewind 10 seconds">
									<span class="screen-reader-text">Rewind 10 Seconds</span>
								</button>
								<button data-speed="1" class="player-btn player-btn__speed" title="Playback Speed" aria-label="Playback Speed">1x</button>
								<button data-skip="30" class="player-btn player-btn__fwd" title="Fast Forward 30 seconds">
									<span class="screen-reader-text">Fast Forward 30 seconds</span>
								</button>
							</div>
							<div class="playback__timers">
								<time class="ssp-timer">00:00</time>
								<span>/</span>
								<!-- We need actual duration here from the server -->
								<time class="ssp-duration" datetime="PT0H14M3S">14:03</time>
							</div>
						</div>
					</div>
				</div>
									<nav class="player-panels-nav">
													<button class="subscribe-btn" id="subscribe-btn-1174" title="Abonnieren">Abonnieren</button>
																			<button class="share-btn" id="share-btn-1174" title="Teilen">Teilen</button>
											</nav>
							</div>
		</div>
	</div>
			<div class="player-panels player-panels-1174">
							<div class="subscribe player-panel subscribe-1174">
					<div class="close-btn close-btn-1174">
						<span></span>
						<span></span>
					</div>
					<div class="panel__inner">
						<div class="subscribe-icons">
																								<a href="https://music.amazon.de/podcasts/0c0b2b58-55b0-42ac-884b-57604310d6f9/pad-one-please-der-n%C3%A4chste-retro-podcast" target="_blank" rel="noopener noreferrer"
									   class="amazon"
									   title="Subscribe on  Amazon">
										<span></span>
										Amazon									</a>
																																<a href="https://podcasts.apple.com/us/podcast/pad-one-please-noch-so-n-retro-podcast/id1830571033" target="_blank" rel="noopener noreferrer"
									   class="apple_podcasts"
									   title="Subscribe on  Apple Podcasts">
										<span></span>
										Apple Podcasts									</a>
																																<a href="https://deezer.com/show/1002093401" target="_blank" rel="noopener noreferrer"
									   class="deezer"
									   title="Subscribe on  Deezer">
										<span></span>
										Deezer									</a>
																																															<a href="https://datort.de/feed/podcast/pad-one-please" target="_blank" rel="noopener noreferrer"
									   class="rss"
									   title="Subscribe on  RSS">
										<span></span>
										RSS									</a>
																																<a href="https://open.spotify.com/show/4cTvGULCA1LGs9mPdwxKTH" target="_blank" rel="noopener noreferrer"
									   class="spotify"
									   title="Subscribe on  Spotify">
										<span></span>
										Spotify									</a>
																																				</div>
						<div class="player-panel-row" aria-label="RSS Feed URL">
							<div class="title">RSS Feed</div>
							<div>
								<input value="https://datort.de/feed/podcast/pad-one-please" class="input-rss input-rss-1174" title="RSS Feed URL" readonly />
							</div>
							<button class="copy-rss copy-rss-1174" title="Copy RSS Feed URL" aria-label="Copy RSS Feed URL"></button>
						</div>
					</div>
				</div>
										<div class="share share-1174 player-panel">
					<div class="close-btn close-btn-1174">
						<span></span>
						<span></span>
					</div>
					<div class="player-panel-row">
						<div class="title">
							Teilen						</div>
						<div class="icons-holder">
							<a href="https://www.facebook.com/sharer/sharer.php?u=https://datort.de/podcast/005-hugo-trollt-tv-und-games/&#038;t=#005: Hugo trollt TV und Games"
							   target="_blank" rel="noopener noreferrer" class="share-icon facebook" title="Auf Facebook teilen">
								<span></span>
							</a>
							<a href="https://twitter.com/intent/tweet?text=https://datort.de/podcast/005-hugo-trollt-tv-und-games/&#038;url=#005: Hugo trollt TV und Games"
							   target="_blank" rel="noopener noreferrer" class="share-icon twitter" title="Auf Twitter teilen">
								<span></span>
							</a>
							<a href="https://datort.de/podcast-player/1174/005-hugo-trollt-tv-und-games.mp3"
							   target="_blank" rel="noopener noreferrer" class="share-icon download" title="Download" download>
								<span></span>
							</a>
						</div>
					</div>
					<div class="player-panel-row">
						<div class="title">
							Link						</div>
						<div>
							<input value="https://datort.de/podcast/005-hugo-trollt-tv-und-games/" class="input-link input-link-1174" title="Episode URL" readonly />
						</div>
						<button class="copy-link copy-link-1174" title="Copy Episode URL" aria-label="Copy Episode URL" readonly=""></button>
					</div>
					<div class="player-panel-row">
						<div class="title">
							Embed						</div>
						<div style="height: 10px;">
							<input type="text" value='&lt;blockquote class=&quot;wp-embedded-content&quot; data-secret=&quot;mNzm3iKLrR&quot;&gt;&lt;a href=&quot;https://datort.de/podcast/005-hugo-trollt-tv-und-games/&quot;&gt;#005: Hugo trollt TV und Games&lt;/a&gt;&lt;/blockquote&gt;&lt;iframe sandbox=&quot;allow-scripts&quot; security=&quot;restricted&quot; src=&quot;https://datort.de/podcast/005-hugo-trollt-tv-und-games/embed/#?secret=mNzm3iKLrR&quot; width=&quot;500&quot; height=&quot;350&quot; title=&quot;&#8222;#005: Hugo trollt TV und Games&#8220; &#8211; datort.de&quot; data-secret=&quot;mNzm3iKLrR&quot; frameborder=&quot;0&quot; marginwidth=&quot;0&quot; marginheight=&quot;0&quot; scrolling=&quot;no&quot; class=&quot;wp-embedded-content&quot;&gt;&lt;/iframe&gt;&lt;script&gt;
/*! This file is auto-generated */
!function(d,l){&quot;use strict&quot;;l.querySelector&amp;&amp;d.addEventListener&amp;&amp;&quot;undefined&quot;!=typeof URL&amp;&amp;(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&amp;&amp;!/[^a-zA-Z0-9]/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll(&#039;iframe[data-secret=&quot;&#039;+t.secret+&#039;&quot;]&#039;),o=l.querySelectorAll(&#039;blockquote[data-secret=&quot;&#039;+t.secret+&#039;&quot;]&#039;),c=new RegExp(&quot;^https?:$&quot;,&quot;i&quot;),i=0;i&lt;o.length;i++)o[i].style.display=&quot;none&quot;;for(i=0;i&lt;a.length;i++)s=a[i],e.source===s.contentWindow&amp;&amp;(s.removeAttribute(&quot;style&quot;),&quot;height&quot;===t.message?(1e3&lt;(r=parseInt(t.value,10))?r=1e3:~~r&lt;200&amp;&amp;(r=200),s.height=r):&quot;link&quot;===t.message&amp;&amp;(r=new URL(s.getAttribute(&quot;src&quot;)),n=new URL(t.value),c.test(n.protocol))&amp;&amp;n.host===r.host&amp;&amp;l.activeElement===s&amp;&amp;(d.top.location.href=t.value))}},d.addEventListener(&quot;message&quot;,d.wp.receiveEmbedMessage,!1),l.addEventListener(&quot;DOMContentLoaded&quot;,function(){for(var e,t,s=l.querySelectorAll(&quot;iframe.wp-embedded-content&quot;),r=0;r&lt;s.length;r++)(t=(e=s[r]).getAttribute(&quot;data-secret&quot;))||(t=Math.random().toString(36).substring(2,12),e.src+=&quot;#?secret=&quot;+t,e.setAttribute(&quot;data-secret&quot;,t)),e.contentWindow.postMessage({message:&quot;ready&quot;,secret:t},&quot;*&quot;)},!1)))}(window,document);
//# sourceURL=https://datort.de/wp-includes/js/wp-embed.min.js
&lt;/script&gt;
'
								   title="Embed Code"
								   class="input-embed input-embed-1174" readonly/>
						</div>
						<button class="copy-embed copy-embed-1174" title="Copy Embed Code" aria-label="Copy Embed Code"></button>
					</div>
				</div>
					</div>
	
	

	</div>
<div class="podcast_meta"><aside><p><a href="https://datort.de/podcast-download/1174/005-hugo-trollt-tv-und-games.mp3?ref=download" title="Hugo: Der Troll, den ich nicht spielen durfte " class="podcast-meta-download">Datei herunterladen</a> | <a href="https://datort.de/podcast-download/1174/005-hugo-trollt-tv-und-games.mp3?ref=new_window" target="_blank" title="Hugo: Der Troll, den ich nicht spielen durfte " class="podcast-meta-new-window">In neuem Fenster abspielen</a> | <span class="podcast-meta-duration">Audiolänge: 14:03</span> | <span class="podcast-meta-date">Aufgenommen am  23. September 2025</span></p><p>Abonnieren: <a href="https://music.amazon.de/podcasts/0c0b2b58-55b0-42ac-884b-57604310d6f9/pad-one-please-der-n%C3%A4chste-retro-podcast" target="_blank" title="Amazon" class="podcast-meta-itunes">Amazon</a> | <a href="https://podcasts.apple.com/us/podcast/pad-one-please-noch-so-n-retro-podcast/id1830571033" target="_blank" title="Apple Podcasts" class="podcast-meta-itunes">Apple Podcasts</a> | <a href="https://deezer.com/show/1002093401" target="_blank" title="Deezer" class="podcast-meta-itunes">Deezer</a> | <a href="https://datort.de/feed/podcast/pad-one-please" target="_blank" title="RSS" class="podcast-meta-itunes">RSS</a> | <a href="https://open.spotify.com/show/4cTvGULCA1LGs9mPdwxKTH" target="_blank" title="Spotify" class="podcast-meta-itunes">Spotify</a></p></aside></div>


<p>Nun gibt es aber ja seit einer ganzen Weile Arduino- und ESP-Boards, mit denen man famose Dinge erschaffen kann wenn man dem Thema etwas Zeit widmet. Und da ich hier noch ein altes Telefon der Deutschen Bundespost rumfliegen habe, was den Retro-Charackter der Aktion nur noch weiter verstärkt, habe ich mich dran gemacht aus dem Telefon ein viel zu großes Numpad zu bauen, mit dem auch gleich noch Hugo Spielen kann. </p>



<h2 id="teileliste" class="cnvs-block-section-heading cnvs-block-section-heading-1761953656988 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Teileliste</span>
	</span>
</h2>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="577" src="https://datort.de/wp-content/uploads/2025/11/PhoneATroll_components-1-1024x577.jpg" alt="" class="wp-image-1229" srcset="https://datort.de/wp-content/uploads/2025/11/PhoneATroll_components-1-1024x577.jpg 1024w, https://datort.de/wp-content/uploads/2025/11/PhoneATroll_components-1-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/11/PhoneATroll_components-1-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/11/PhoneATroll_components-1-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/11/PhoneATroll_components-1-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/11/PhoneATroll_components-1.jpg 1094w" sizes="(max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Die Teile: Ein ESP32 S3 Zero, das Flachbandkabel vom FeTAp und optional ein Custom PCB, welches alles zusammenbringt</figcaption></figure>



<p>Viel braucht es für dieses Projekt nicht, nämlich nur den ESP und das Telefon: </p>



<ul class="wp-block-list">
<li>Retro-Telefon &#8222;FeTAp&#8220;, hier ein FeTAp 0111 aus 1987</li>



<li>ESP 32 S3 Zero</li>



<li>optional: DIY Platine um Kabelwirrwarr zu vermeiden (siehe &#8222;Schaltplan&#8220;)</li>
</ul>



<p>Naja gut, und natürlich Schraubendreher, einen Lötkolben und was man zu dessen Verwendung halt so benötigt.</p>



<h2 id="schaltplan" class="cnvs-block-section-heading cnvs-block-section-heading-1761953751401 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Schaltplan</span>
	</span>
</h2>



<p>Damit das Ganze funktionieren kann, muss das Tastenfeld mit dem ESP32 verbunden werden. An dem Tastenfeld des Telefons ist ein kurzes Flachband. Also, genau genommen ist es auf der Platine des Telefons und muss von der befreit werden. Danach müssen folgende Pins entsprechend mit dem ESP32 verbunden werden. </p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="428" src="https://datort.de/wp-content/uploads/2025/11/Schaltplan_FeTAp-1-1024x428.png" alt="" class="wp-image-1223" srcset="https://datort.de/wp-content/uploads/2025/11/Schaltplan_FeTAp-1-1024x428.png 1024w, https://datort.de/wp-content/uploads/2025/11/Schaltplan_FeTAp-1-300x125.png 300w, https://datort.de/wp-content/uploads/2025/11/Schaltplan_FeTAp-1-768x321.png 768w, https://datort.de/wp-content/uploads/2025/11/Schaltplan_FeTAp-1-1536x642.png 1536w, https://datort.de/wp-content/uploads/2025/11/Schaltplan_FeTAp-1-380x159.png 380w, https://datort.de/wp-content/uploads/2025/11/Schaltplan_FeTAp-1-800x334.png 800w, https://datort.de/wp-content/uploads/2025/11/Schaltplan_FeTAp-1-1160x485.png 1160w, https://datort.de/wp-content/uploads/2025/11/Schaltplan_FeTAp-1.png 1904w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Um es für mich etwas angenehmer zu gestalten, habe ich mir eine kleine Platine dafür gebaut. Ich bin immer noch begeistert für welche schmale Mark man heutzutage selbstgestaltete PCBs produzieren lassen kann. Ich pack hier mal meine Lösung in Form einer Gerber-File hin, mit der eine Nachbestellung möglich ist &#8211; Verwendung auf eigene Gefahr: </p>



<div class="wp-block-file"><a id="wp-block-file--media-ca997e77-f3d5-48a6-9034-730e5b601c9d" href="https://datort.de/wp-content/uploads/2025/11/Gerber_FeTapNumPad_PCB_FeTapNumPad_2_2025-11-01.zip">Gerber_FeTapNumPad_PCB_FeTapNumPad_2_2025-11-01</a><a href="https://datort.de/wp-content/uploads/2025/11/Gerber_FeTapNumPad_PCB_FeTapNumPad_2_2025-11-01.zip" class="wp-block-file__button wp-element-button" download aria-describedby="wp-block-file--media-ca997e77-f3d5-48a6-9034-730e5b601c9d">Herunterladen</a></div>



<h2 id="funktionsweise" class="cnvs-block-section-heading cnvs-block-section-heading-1761954460438 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Funktionsweise</span>
	</span>
</h2>



<p>Das kleine ESP-Board ist in der Lage, als HID (Human Interface Device) über USB zu agieren. Damit gibt es sich in diesem Fall sozusagen als Keyboard aus. Drücke ich eine der Tasten auf dem Telefon, so wird ein Tastendruck (Keyboard.press()) ausgelöst, für 80 Milisekunden gehalten und danach wird die Taste wieder &#8222;losgelassen&#8220; (Keyboard.release()). </p>



<p>Um den richtigen Tastendruck zu ermitteln, wird das Tastenfall in schnellen Intervallen auf Tastendrücke abgefragt &#8211; so wie es das Telefon selbst zuvor auch gemacht hat. Das Tastenfeld ist dabei als eine Art Matrix aufgebaut. Man kann Spannung dabei Zeilen und Reihenweise anlegen. Gebe ich also beispielsweise eine Spannung auf Spalte 2 und Zeile 3, so muss bei Druck der Taste 8 eine Spannung anliegen sofern diese gerade gedrückt wird. So funktioniert im Groben die Erkennung welche Taste gerade gedrückt wird. Simpel aber doch irgendwie faszinierend, wenn ich mir vorstelle in welchem flotten Intervall der ESP da über alle möglichen Konstellationen immer und immer wieder drüber ballert. </p>



<h2 id="software" class="cnvs-block-section-heading cnvs-block-section-heading-1761954867809 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Software</span>
	</span>
</h2>



<p>Die Software besteht im Wesentlichen aus einer einzigen Datei. Ich entwickle in PlattformIO, entsprechend handelt es sich bei dem Projekt um ein solches. Ihr könnt den Code aber auch in die Arduino IDE kopieren, dann müsste ihr nur dafür sorgen dass ihr die entsprechend für den ESP32 S3 Zero konfiguriert. Außerdem müsst ihr vermutlich das #include &lt;Arduino.h&gt; rausnehmen und dem Sketch eine .ino-Dateiendung geben. Mehr dazu auch in der Readme. Das Projekt könnt ihr auf meinem GIthub-Profil auschecken oder runterladen.</p>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://github.com/datort/phone-a-troll" target="_blank" rel="noreferrer noopener">PhoneATroll @Github</a></div>
</div>



<h2 id="fazit" class="cnvs-block-section-heading cnvs-block-section-heading-1761993025771 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Fazit</span>
	</span>
</h2>



<p>Das Projekt hier hat mir wahnsinnig Spaß gemacht. Ich hab keine Ahnung, ob es da draussen wirklich noch andere Verrückte gibt, die sich an sowas erfreuen. Aber falls ja: Hey, schön das du da bist und viel Spaß mit dem Projekt. Wer keine Lust auf basteln hat: Ich habe kürzlich erfahren, dass im <a href="https://hi-score.org/" target="_blank" rel="noreferrer noopener nofollow">Hi-Score</a> in Hannover auch etwas ähnliches für jeden zum ausprobieren und Spielen stehen soll. Diese Werbung hier ist absolut freiwillig und unbezahlt, ich finde in der Retro-Community muss man zusammenhalten und gute Ideen teilen.</p>



<p>Und wenn ihr das Projekt mal umgesetzt haben solltet: Ich würde mich super über Rückmeldung freuen. Viel Spaß beim Zocken!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/retro-computing/1219/hugo-der-troll-den-ich-nicht-spielen-durfte/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>Arduino/ESP + SIMCom A7670E LTE-Modul</title>
		<link>https://datort.de/raspberry-arduino/1113/arduino-esp-simcom-a7670e-lte-modul/</link>
					<comments>https://datort.de/raspberry-arduino/1113/arduino-esp-simcom-a7670e-lte-modul/#respond</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Wed, 10 Sep 2025 18:57:35 +0000</pubDate>
				<category><![CDATA[Raspberry & Arduino]]></category>
		<category><![CDATA[Youtube]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<category><![CDATA[esp32]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[Mobilfunk]]></category>
		<guid isPermaLink="false">https://datort.de/?p=1113</guid>

					<description><![CDATA[Auch in Deutschland ist vermutlich Mitte 2028 Schluß mit dem 2G GSM-Netz: Sowohl Telekom als auch Vodafone haben&#8230;]]></description>
										<content:encoded><![CDATA[
<p>Auch in Deutschland ist vermutlich Mitte 2028 Schluß mit dem 2G GSM-Netz: Sowohl Telekom als auch Vodafone haben das Datum zur Abschaltung ihrer ersten digitalen Mobilfunknetze vor einiger Zeit verkündet. Module wie das SIM800L, die nur das 2G-Netz mit GPRS und EDGE unterstützen, werden dann nicht mehr funktionieren. Zeit sich nach Alternativen umzusehen. Das A7670E von SIMCom könnte eine solche Altnative sein. Es ist mit knapp über 10,- Euro von Aliexpress und co. relativ günstig zu haben und via UART-Schnittstelle auch leicht mit 2 Kabeln anzubinden. Allerdings ist nicht alles Gold was glänzt. Hier meine schnelle Pros-/Cons-Liste, bevor wir uns das Board und Software-Beispiele genauer ansehen.</p>



<p><strong>+</strong> relativ günstig<br><strong>+</strong> kompakt<br><strong>+</strong> überschaubarer Stromverbrauch<br><strong>+</strong> optional mit GPS und Bluetooth<br><strong>+</strong> USB-Anschluss für schnellere Datenübertragung<br><br><strong>&#8211;</strong> min. 5 V Versorgungsspannung (SIM800L lief auch mit 3.7 V)<br><strong>&#8211;</strong> Status LED ungenau (moniert nicht verbunden zu sein, obwohl Daten gesendet und empfangen werden)</p>



<h2 id="videoanleitung" class="cnvs-block-section-heading cnvs-block-section-heading-1757866690807 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Videoanleitung</span>
	</span>
</h2>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/raspberry-arduino/1113/arduino-esp-simcom-a7670e-lte-modul/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2FxPMGg86Webg%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<h2 id="hardware" class="cnvs-block-section-heading cnvs-block-section-heading-1757071876446 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Hardware</span>
	</span>
</h2>



<p>Für mein Test-Setup verwende ich ein ESP32-WROOM-32D-Board. Andere Boards sind möglich. Ich verwende dieses Board aufgrund der Hardware-Serial, über die die Kommunikation zwischen ESP und A7670E-LTE-Modem läuft. Die Beschriftung auf dem Modem ist ein bisschen unübersichtlich. Auf meinem Board von oben nach unten: <br><strong>G: GND, R: RXD, T: TXT, K: PWRKEY, V: VCC, G: GND, S-SLEEP</strong></p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="1024" src="https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-1024x1024.jpeg" alt="" class="wp-image-1152" srcset="https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-1024x1024.jpeg 1024w, https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-300x300.jpeg 300w, https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-200x200.jpeg 200w, https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-768x768.jpeg 768w, https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-110x110.jpeg 110w, https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-380x380.jpeg 380w, https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-800x800.jpeg 800w, https://datort.de/wp-content/uploads/2025/09/A7670E_Pins-1160x1160.jpeg 1160w, https://datort.de/wp-content/uploads/2025/09/A7670E_Pins.jpeg 1280w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Für mein Setup genügt es, vom ESP TX/RX über Kreuz zu verbinden: Also: TX vom ESP auf RX vom Modem und umgekehrt. Außerdem teilen sich ESP und A7670E einen Ground. Das wars dann aber auch. Ich hatte zwischenzeitlich einen 2200μF-Kondensator verbaut, bis ich gesehen habe das genau für diesen Zweck bereits ein 4700μF-Kondensator auf dem Modem verbaut ist. Trotzdem kackte das Modem beim Einbuchen ins LTE-Netz ab und an ab &#8211; die Stromversorgung scheint da aber wohl dann nicht der Grund gewesen zu sein?! </p>



<h2 id="software" class="cnvs-block-section-heading cnvs-block-section-heading-1757071899911 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Software</span>
	</span>
</h2>



<p>Getestet wurde das hier mit dem A7670E-Modul. Allerdings sollten die meisten Sketches auch mit anderen Boards von SIMCom funktionieren, sofern sie den gleichen Befehlssatz unterstützen. </p>



<h5 id="basis-sketch" class="wp-block-heading">Basis Sketch</h5>



<p>Um es auch für Einsteiger verständlich zu halten, teile ich die einzelnen Funktion in kleine Snippets auf. So könnt ihr euch das raussuchen, was für euer Szenario am besten passt. Diese basieren auf folgender Basis, die zunächst nichts weiter macht als die Kommunikation mit dem A7670E sicherzustellen und die Antworten des Moduls im Serial Monitor euer (Arduino-)IDE anzuzeigen. </p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: cpp; title: ; notranslate">
#include &lt;Arduino.h&gt;

#define RX_PIN 17 // RX-Pin des ESP-Boards
#define TX_PIN 16 // TX-Pin des ESP-Boards
HardwareSerial modem(2);

void setup() {
  Serial.begin(115200);

  delay(1000);
  Serial.println(&quot;Serial connection ready&quot;);

  modem.begin(115200, SERIAL_8N1, RX_PIN, TX_PIN);
  modem.println(&quot;AT&quot;); // AT = Attention, Modem muss mit &quot;OK&quot; antworten
}

void loop() {
  while (modem.available()) {
    String resp = modem.readStringUntil(&#039;\n&#039;);
    resp.trim();
    if (resp.length() &gt; 0) {
      Serial.println(&quot;Modem: &quot; + resp); // Jede Antwort des Modems in der Serial gekennzeichnet ausgeben
    }
  }
}
</pre></div>

<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
Serial connection ready
Modem: AT
Modem: OK
</pre></div>


<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="768" src="https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot-1024x768.jpeg" alt="" class="wp-image-1155" srcset="https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot-1024x768.jpeg 1024w, https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot-300x225.jpeg 300w, https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot-768x576.jpeg 768w, https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot-200x150.jpeg 200w, https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot-260x195.jpeg 260w, https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot-380x285.jpeg 380w, https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot-800x600.jpeg 800w, https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot-1160x870.jpeg 1160w, https://datort.de/wp-content/uploads/2025/09/A7670E-ESP32-Topshot.jpeg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h5 id="mobilfunkstatus-sketch" class="wp-block-heading">Mobilfunkstatus Sketch</h5>



<p>Um zu prüfen, ob das A7670E-Modul mit dem Mobilfunknetz verbunden ist, können wir es einfach selbst fragen. </p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: cpp; title: ; notranslate">
#include &lt;Arduino.h&gt;

#define RX_PIN 17
#define TX_PIN 16
HardwareSerial modem(2);

void setup() {
  Serial.begin(115200);

  delay(1000);
  Serial.println(&quot;Serial connection ready&quot;);

  modem.begin(115200, SERIAL_8N1, RX_PIN, TX_PIN);
  modem.println(&quot;AT&quot;);
}

void loop() {
  while (modem.available()) {
    String resp = modem.readStringUntil(&#039;\n&#039;);
    resp.trim();
    if (resp.length() &gt; 0) {
      Serial.println(&quot;Modem: &quot; + resp);
    }
  }

  static unsigned long lastRun = millis() - 18000;
  if (millis() - lastRun &gt; 20000) { // Nach 2 Sekunden alle 20 Sekunden aktualisieren
    lastRun = millis();

    modem.println(&quot;AT+CSQ&quot;);      // Signalstärke
    modem.println(&quot;AT+CEREG?&quot;);   // LTE Netzregistrierung
    modem.println(&quot;AT+CGATT?&quot;);   // Datenregistrierung
    modem.println(&quot;AT+CGACT?&quot;);   // PDP Kontext aktiv? (Datenverbindung)
    modem.println(&quot;AT+CGPADDR&quot;);  // IP-Adresse
    modem.println(&quot;AT+NETOPEN?&quot;); // Socket-Service Status
  }
}
</pre></div>

<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
Modem: AT+CSQ
Modem: +CSQ: 26,99
Modem: OK
Modem: AT+CEREG?
Modem: +CEREG: 0,1
Modem: OK
Modem: AT+CGATT?
Modem: +CGATT: 1
Modem: OK
Modem: AT+CGACT?
Modem: +CGACT: 1,1
Modem: +CGACT: 8,1
Modem: OK
Modem: AT+CGPADDR
Modem: +CGPADDR: 1,10.76.56.42
Modem: +CGPADDR: 8,0.0.0.0,254.128.0.0.0.0.0.0.194.209.178.131.245.194.29.154
Modem: OK
Modem: AT+NETOPEN?
Modem: +NETOPEN: 0
Modem: OK
</pre></div>


<p class="has-small-font-size"><strong>+CSQ: 26,99</strong>: 26 ist die Signalqualität, Skala 0-31, 26 = ziemlich guter Empfang<br><strong>+CEREG: 0,1</strong>: Erfolgreich im LTE-Netz eingebucht<br><strong>+CGATT: 1</strong>: Datenverbindung aktiv<br><strong>+CGACT: 1,1</strong> &amp; <strong>+CGACT: 8,1</strong>: Zwei Datenkontexte offen<br><strong>+CGPADDR: 1,10.76.56.42</strong><br><strong>+CGPADDR: 8,0.0.0.0,254.128.0.0.0.0.0.0.194.209.178.131.245.194.29.154</strong>: IP-Adressen, die das Board erhalten hat</p>



<h5 id="ping-sketch" class="wp-block-heading">Ping Sketch</h5>



<p>Ein grundlegender Test von Netzwerk-Kommunikation ist ein &#8222;ping&#8220;: Ein kleines Datenpaket wird an einen Server gesendet. Kommt das Paket an antwortet der Server und der Nutzer sieht, wie lange das Datenpaket auf Reise war. </p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: cpp; title: ; notranslate">
#include &lt;Arduino.h&gt;

#define RX_PIN 17
#define TX_PIN 16
HardwareSerial modem(2);

void setup() {
  Serial.begin(115200);

  delay(1000);
  Serial.println(&quot;Serial connection ready&quot;);

  modem.begin(115200, SERIAL_8N1, RX_PIN, TX_PIN);
  modem.println(&quot;AT&quot;);
}

void loop() {
  while (modem.available()) {
    String resp = modem.readStringUntil(&#039;\n&#039;);
    resp.trim();
    if (resp.length() &gt; 0) {
      Serial.println(&quot;Modem: &quot; + resp);
    }
  }

  static unsigned long lastRun = millis() - 18000;
  if (millis() - lastRun &gt; 20000) {
    lastRun = millis();

    modem.println(&quot;AT+CPING=\&quot;8.8.8.8\&quot;,1,4&quot;); // 4 Pings an Google DNS senden
  }
}
</pre></div>

<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
Modem: AT+CPING=&quot;8.8.8.8&quot;,1,4
Modem: OK
Modem: +CPING: 1,8.8.8.8,92,130,114
Modem: +CPING: 1,8.8.8.8,92,40,114
Modem: +CPING: 1,8.8.8.8,92,15,114
Modem: +CPING: 1,8.8.8.8,92,30,114
Modem: +CPING: 3,4,4,0,15,130,40
</pre></div>


<p class="has-small-font-size"><strong>AT+CPING=&#8220;8.8.8.8&#8243;,1,4</strong>: 8.8.8.8 ist die Ziel-IP-Adresse, 1 steht für IPv4 (2 wäre IPv6), 4 ist die Anzahl der Wiederholungen<br><strong>+CPING: 1,8.8.8.8,92,130,114</strong>: 1: Ping erfolgreich, der vorletzte Wert (hier 130) ist die Laufzeit in ms, die anderen Werte bitte dem Manual entnehmen<br><strong>+CPING: 3,4,4,0,15,130,40</strong>: Zusammenfassung über die 4 Pings</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="768" src="https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme-1024x768.jpeg" alt="" class="wp-image-1156" srcset="https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme-1024x768.jpeg 1024w, https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme-300x225.jpeg 300w, https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme-768x576.jpeg 768w, https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme-200x150.jpeg 200w, https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme-260x195.jpeg 260w, https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme-380x285.jpeg 380w, https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme-800x600.jpeg 800w, https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme-1160x870.jpeg 1160w, https://datort.de/wp-content/uploads/2025/09/A7670E-Stromaufnahme.jpeg 1280w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">In der Regel ist die Stromaufnahme sehr gering. Beim Senden und Empfangen kann der Verbrauch kurzzeitig ansteigen. HTTPS-Traffic verbraucht (wenig überraschend) noch etwas mehr Strom</figcaption></figure>



<h5 id="daten-via-http-abrufen-http-get-request" class="wp-block-heading">Daten via HTTP abrufen (HTTP GET-Request)</h5>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: cpp; title: ; notranslate">
#include &lt;Arduino.h&gt;

#define RX_PIN 17
#define TX_PIN 16
HardwareSerial modem(2);

void setup() {
  Serial.begin(115200);

  delay(1000);
  Serial.println(&quot;Serial connection ready&quot;);

  modem.begin(115200, SERIAL_8N1, RX_PIN, TX_PIN);
  modem.println(&quot;AT&quot;);
}

void loop() {
  while (modem.available()) {
    String resp = modem.readStringUntil(&#039;\n&#039;);
    resp.trim();
    if (resp.length() &gt; 0) {
      Serial.println(&quot;Modem: &quot; + resp);
    }
  }

  static unsigned long lastRun = millis() - 18000;
  if (millis() - lastRun &gt; 20000) {
    lastRun = millis();

    modem.println(&quot;AT+HTTPINIT&quot;); // HTTP-Service des Modems starten

    
    modem.println(&quot;AT+HTTPPARA=\&quot;URL\&quot;,http://httpbin.org/get&quot;); // Abzurufende Adresse
    modem.println(&quot;AT+HTTPACTION=0&quot;); // 0 = GET, 1 = POST, 2 = HEAD, 3 = DELETE, 4 = PUT

    delay(2500); // Wir gehen davon aus, in 2.5s die Antwort zu erhalten. Vermutlich besser: AT+HTTPACTION auswerten, liefert die Content-Length

    modem.println(&quot;AT+HTTPHEAD&quot;); // Ausgabe des Response Headers

    delay(200);

    modem.println(&quot;AT+HTTPREAD=99999&quot;); // &quot;Unsaubere Implementierung&quot;: Eigentlich AT+HTTPREAD? nutzen um Länge der Antwort zu ermitteln
    modem.println(&quot;AT+HTTPTERM&quot;); // HTTP-Service nach Verwendung stoppen
  }
}
</pre></div>

<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
Modem: AT+HTTPINIT
Modem: ERROR
Modem: AT+HTTPPARA=&quot;URL&quot;,http://httpbin.org/get
Modem: OK
Modem: AT+HTTPACTION=0
Modem: OK
Modem: +HTTPACTION: 0,200,255
Modem: AT+HTTPHEAD
Modem: +HTTPHEAD: 226
Modem: HTTP/1.1 200 OK
Modem: Date: Fri, 05 Sep 2025 15:28:01 GMT
Modem: Content-Type: application/json
Modem: Content-Length: 255
Modem: Connection: keep-alive
Modem: Server: gunicorn/19.9.0
Modem: Access-Control-Allow-Origin: *
Modem: Access-Control-Allow-Credentials: true
Modem: OK
Modem: AT+HTTPREAD?
Modem: +HTTPREAD: LEN,255
Modem: OK
Modem: AT+HTTPREAD=99999
Modem: OK
Modem: AT+HTTPTERM
Modem: OK
Modem: +HTTPREAD: 255
Modem: {
Modem: &quot;args&quot;: {},
Modem: &quot;headers&quot;: {
Modem: &quot;Accept&quot;: &quot;*/*&quot;,
Modem: &quot;C &quot;origin&quot;: &quot;80.187.118.156&quot;,
Modem: &quot;url&quot;: &quot;http://httpbin.org/get&quot;
Modem: }
Modem: +HTTPREAD: 0
</pre></div>


<p class="has-small-font-size"><strong>+HTTPACTION: 0,200,255</strong>: 0 = Type der Anfrage (GET), 200 = Statuscode des Servers, 255 = Länge der Antwort in Bytes<br><strong>+HTTPHEAD: 226</strong>: Start Ausgabe des Headers, 226 Bytes<br><strong>+HTTPREAD: LEN,255</strong>: Eine Response liegt vor, 255 Bytes<br><strong>+HTTPREAD: 255</strong>: Beginn der Ausgabe des Response bis <strong>HTTPREAD: 0</strong></p>



<h5 id="daten-via-http-senden-http-post-put-patch" class="wp-block-heading">Daten via HTTP senden (HTTP POST, PUT, PATCH)</h5>



<p>Im vorangegangenen Beispiel beim Abruf der Daten via HTTP haben wir etwas &#8222;gefuttelt&#8220; was die Antworten anging. So haben wir mit delay gearbeitet und gehofft, dass bis dahin eine Antwort da ist. Damit kommen wir jetzt nicht mehr durch. Um den Code weiter lesbar zu halten, habe ich die Logik in einzelne Funktionen aufgeteilt.</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: cpp; title: ; notranslate">
#include &lt;Arduino.h&gt;

#define RX_PIN 17
#define TX_PIN 16
HardwareSerial modem(2);

String waitForURC(const char* token, unsigned long timeoutMs = 10000) { // URC: Unsolicited Result Code, Ereignisbasierte Melungen des Modems abfragen. In unserem Fall für die Antwort nach dem POST genutzt
  unsigned long start = millis();
  String buffer;

  while (millis() - start &lt; timeoutMs) {
    while (modem.available()) {
      String line = modem.readStringUntil(&#039;\n&#039;);
      line.trim();

      if (line.length() &gt; 0) {
        Serial.println(&quot;URC: &quot; + line);
      }

      if (line.startsWith(token)) {
        return line;
      }
    }
  }
  Serial.println(&quot;Timeout beim Warten auf URC: &quot; + String(token));
  return &quot;&quot;;
}

void readHttpResponse() {
  modem.println(&quot;AT+HTTPREAD=99999&quot;); // Wir lesen pauschal alles; Hier könnte man auch mit der genauen Zahl an Bytes arbeiten (was sauberer wäre), aber das LTE-Modul liefert nur solange Daten zurück, wie sie vorliegen.
  
  String response;
  unsigned long startTime = millis();

  while (millis() - startTime &lt; 15000) {
    while (modem.available()) {
      String line = modem.readStringUntil(&#039;\n&#039;);
      line.trim();

      if (line.startsWith(&quot;+HTTPREAD:&quot;)) continue;
      if (line == &quot;OK&quot;) {
        Serial.println(&quot;HTTP-Body:&quot;);
        Serial.println(response);
        return;
      }

      response += line + &quot;\n&quot;;
    }
  }
  Serial.println(&quot;Timeout beim Lesen der Response!&quot;);
}

void httpPost(const char* url, const char* json) { // Methode speziell für den HTTP POST-Prozess
  modem.println(&quot;AT+HTTPINIT&quot;);
  modem.printf(&quot;AT+HTTPPARA=\&quot;URL\&quot;,\&quot;%s\&quot;\r\n&quot;, url);
  modem.println(&quot;AT+HTTPPARA=\&quot;CONTENT\&quot;,\&quot;application/json\&quot;&quot;); // Festsetzen des Inhalts auf JSON
  modem.printf(&quot;AT+HTTPDATA=%d,5000\r\n&quot;, strlen(json)); // Dem Modem mitteilen, dass gleich Daten kommen, die es für die Übermittlung aufzeichnen soll

  String dl = waitForURC(&quot;DOWNLOAD&quot;, 5000); // Warten bis das Modem mit &quot;DOWNLOAD&quot; antwortet, dann senden unseres JSON
  if (dl.length() &gt; 0) {
    modem.print(json);
    if (waitForURC(&quot;OK&quot;, 5000).length() == 0) { // Im Anschluss auf die Bestätigung der Übertragung durch das Modem warten
      Serial.println(&quot;Modem or connection stuck, too many data sent or check wiring&quot;);
      return;
    }
  }

  modem.println(&quot;AT+HTTPACTION=1&quot;); // 1 = POST
  String action = waitForURC(&quot;+HTTPACTION:&quot;, 15000); // Hier optimierter Ablauf: Sobald die Anfrage vom Modem versendet wurde, geht&#039;s weiter...

  if (action.length() &gt; 0) {
    int method, status, len;
    if (sscanf(action.c_str(), &quot;+HTTPACTION: %d,%d,%d&quot;, &amp;method, &amp;status, &amp;len) == 3) {
      Serial.printf(&quot;HTTP Status: %d, Length: %d\n&quot;, status, len);

      if (status == 200 || status == 201) { // Status code 200/201 stehen für eine erfolgreiche Anfragen bei POST
        readHttpResponse(); // Auslesen der Antwort in einer eigenen Funktion dafür
      } else {
        Serial.println(&quot;Unexpected response&quot;);
      }
    }
  }

  modem.println(&quot;AT+HTTPTERM&quot;);
}

void setup() {
  Serial.begin(115200);

  delay(1000);
  Serial.println(&quot;Serial connection ready&quot;);

  modem.begin(115200, SERIAL_8N1, RX_PIN, TX_PIN);
  modem.println(&quot;AT&quot;);
}

void loop() {
  while (modem.available()) {
    String resp = modem.readStringUntil(&#039;\n&#039;);
    resp.trim();
    if (resp.length() &gt; 0) {
      Serial.println(&quot;Modem: &quot; + resp);
    }
  }

  static unsigned long lastRun = millis() - 18000;
  if (millis() - lastRun &gt; 20000) {
    lastRun = millis();
    const char* json = &quot;{\&quot;temperature\&quot;:25.3,\&quot;battery_level\&quot;:\&quot;83\&quot;}&quot;; // Unsere Daten verpackt in JSON

    httpPost(&quot;http://httpbin.org/post&quot;, json); // Start des HTTP Post
  }
}
</pre></div>

<div class="wp-block-syntaxhighlighter-code "><pre class="brush: plain; title: ; notranslate">
Serial connection ready
Modem: AT
Modem: OK
URC: AT+HTTPINIT
URC: OK
URC: AT+HTTPPARA=&quot;URL&quot;,&quot;http://httpbin.org/post&quot;
URC: OK
URC: AT+HTTPPARA=&quot;CONTENT&quot;,&quot;application/json&quot;
URC: OK
URC: AT+HTTPDATA=41,5000
URC: DOWNLOAD
URC: OK
URC: AT+HTTPACTION=1
URC: OK
URC: +HTTPACTION: 1,200,488
HTTP Status: 200, Length: 488
HTTP-Body:
AT+HTTPREAD=99999

Modem: +HTTPREAD: 488
Modem: {
Modem: &quot;args&quot;: {},
Modem: &quot;data&quot;: &quot;{\&quot;temperature\&quot;:25.3,\&quot;battery_level\&quot;:\&quot;83\&quot;}&quot;,
Modem: &quot;files&quot;: {},
Modem: &quot;form&quot;: {},
Modem: &quot;headers&quot;: {
Modem: &quot;Accept&quot;: &quot;*/*&quot;,
Modem: &quot;Cache-Control&quot;: &quot;no-cache&quot;,
Modem: &quot;Content-Length&quot;: &quot;41&quot;,
Modem: &quot;Content-Type&quot;: &quot;application/json&quot;,
Modem: &quot;Host&quot;: &quot;httpbin.org&quot;,
Modem: &quot;X-Amzn-Trace-Id&quot;: &quot;Root=1-68bd430d&quot;,
Modem: &quot;url&quot;: &quot;http://httpbin.org/post&quot;
Modem: }
Modem: AT+HTTPTERM
Modem: OK
Modem: +HTTPREAD: 0
</pre></div>


<p class="has-small-font-size">Dadurch das mit waitForURC auf ein Ereignis warten, verschieben sich hier die Ausgaben ein wenig. <br><strong>AT+HTTPDATA=41,5000</strong>: Unsere zu sendenden Daten sind 41 Bytes lang, Timeout: 5 Sekunden<br><strong>+HTTPACTION: 1,200,488</strong>: Die Übertragung war erfolgreich, 488 Bytes lang ist die Antwort<br><strong>AT+HTTPREAD=99999</strong>: Wir lesen pauschal 99999 Bytes, das Modem liefert aber nur so viel Daten zurück wie vorhanden; Wir hätten hier auch die 488 aus der HTTPACTION-Antwort verwenden können. Das wäre sauberer gewesen, aber in manchen Fällen (bspw. &#8222;chunked&#8220;-Responses) liegt wieder Wert nicht vor. Wir haben es uns also einfacher gemacht<br><strong>+HTTPREAD: 488</strong>: Beginn der Ausgabe der Antwort des Servers, enthält als Bestätigung unter &#8222;data&#8220; das, was wir geposted haben</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="624" src="https://datort.de/wp-content/uploads/2025/09/A7670E-Debugging-in-Konsole-1024x624.png" alt="" class="wp-image-1158" srcset="https://datort.de/wp-content/uploads/2025/09/A7670E-Debugging-in-Konsole-1024x624.png 1024w, https://datort.de/wp-content/uploads/2025/09/A7670E-Debugging-in-Konsole-300x183.png 300w, https://datort.de/wp-content/uploads/2025/09/A7670E-Debugging-in-Konsole-768x468.png 768w, https://datort.de/wp-content/uploads/2025/09/A7670E-Debugging-in-Konsole-380x232.png 380w, https://datort.de/wp-content/uploads/2025/09/A7670E-Debugging-in-Konsole-800x488.png 800w, https://datort.de/wp-content/uploads/2025/09/A7670E-Debugging-in-Konsole-1160x707.png 1160w, https://datort.de/wp-content/uploads/2025/09/A7670E-Debugging-in-Konsole.png 1238w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">In der Konsole (hier Plattform IO, &#8222;Serieller Monitor&#8220; in Arduino IDE) sieht man die Ausgaben des Modems und kann so nachvollziehen, was passiert</figcaption></figure>



<h5 id="besonderheiten-bei-https" class="wp-block-heading">Besonderheiten bei HTTPS</h5>



<p>Das 7670E-Modul ist dazu in der Lage Daten unverschlüsselt über HTTP, als auch verschlüsselt via HTTPS zu übertragen. Im besten Fall ist dazu nicht viel mehr nötig, als in den hier genannten Beispielen auf &#8222;http://&#8220; ein &#8222;https://&#8220; zu machen. Allerdings steckt der Teufel da gerne im Detail, denn HTTPS ≠ HTTPS. </p>



<p>Hier ein Mini-Exkurs: Werden im Netz Daten verschlüsselt übertragen, kommen dazu unterschiedliche Mechanismen zu tragen. So wird zum einen ein Verschlüsselungsalgorithmus zwischen Client und Server ausgehandelt., heutzutage oft TLS 1.2 oder größer. Neben diesem wird ein passendes Zertifikat benötigt. Gerade wenn es günstig sein soll, wird heute oft Lets Encrypt verwendet &#8211; mach ich auch so. Damit die Kommunikation aber wirklich sicher ist, müssen Betriebssysteme, Browser oder eben LTE-Module mit HTTPS-Support aber die Stammzertifikate der Anbieter kennen. Ein weiteres Thema ist Server Name Indication (SNI) in Verbindung mit virtuellen Hosts. Kurz um: Viele Dinge, die entweder eine vermeintlich sichere Verbindung unsicher machen können oder sie erst gar nicht zustand kommen lassen. </p>



<h6 id="wenn-die-uebertragung-nicht-gelingt" class="wp-block-heading">Wenn die Übertragung nicht gelingt&#8230;</h6>



<p>&#8230;geht&#8217;s an Debugging. Folgende Sachen könnt ihr prüfen:</p>



<p><strong>SNI aktivieren</strong><br>Das Modul hat zur Laufzeit 8 SSL-Konfiguration im Speicher. Per Default ist da wenig konfiguriert, außer die Art der TLS-Verschlüsselung mit der Gegenseite automatisch ausgehandelt werden soll. Was dabei nicht konfiguriert wird ist Server Name Indication. Das kann aber essentiell sein, nämlich dann, wenn euer Server mit Virtual Hosts arbeitet. Aktiviert SNI vor dem <strong>AT+HTTPINIT</strong> mit:</p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: cpp; title: ; notranslate">
modem.println(&quot;AT+CSSLCFG=\&quot;enableSNI\&quot;,0,1&quot;)
</pre></div>


<p class="has-small-font-size">SNI wird für den SSL-Kontext &#8222;0&#8220; mit &#8222;1&#8220; aktiviert. SSL-Kontext 0 ist der erste der genannten 8 möglichen und wird per default verwendet. Um die SSL-Kontext-ID anzupassen, kann man den Befehl <strong>AT+HTTPPARA=&#8220;SSLCFG&#8220;,2</strong> nutzen, wobei hier die 2 symbolisch für die ID des Index steht, also 0-7.</p>



<p><strong>HTTPACTION auswerten</strong><br>Einen GET-Request starten wir ja mit <strong>AT+HTTPACTION=0</strong>. Das Modul gibt neben einem &#8222;OK&#8220; auch weitere Informationen aus, im besten Fall sowas: <strong>+HTTPACTION: 0,200,81</strong><br>Die 0 steht für die Art der Anfrage (GET), die 200 für den vom Server gesendeten Statuscode und 81 ist die Länge der Antwort. Ist die Antwort nicht erfolgreich, ist interessant was dort statt 200 steht. Eine 706 würden auf Probleme beim Lesen der Antwort hindeuten, aber gleichzeitig bekräftigen, dass der TLS-Handshake zuvor erfolgreich war, während eine 715 eben genau auf Probleme bei ebendiesem hinweisen würden. In dem Fall müsste man prüfen, ob der verwendete TLS-Standard auf deinem Server von dem LTE-Modul überhaupt unterstützt wird.</p>



<p><strong>HTTP-Header auslesen</strong><br>Mit <strong>AT+HTTPHEAD</strong> lässt sich nach dem Absenden der Anfrage der Antwort-Header auslesen. Hier können auch Hinweise auf das Problem aufgeführt sein, wenn man Glück hat. Das oben angesprochene SNI-Problem könnte beispielsweise hier benannt werden.</p>



<h5 id="https-get-beispiel-sketch" class="wp-block-heading">HTTPS GET Beispiel Sketch</h5>



<p>Die oben genannte Punkte sind in diesem Beispiel berücksichtig, welcher bei mir erfolgreich funktionierte. </p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: cpp; title: ; notranslate">
#include &lt;Arduino.h&gt;
 
#define RX_PIN 17
#define TX_PIN 16
HardwareSerial modem(2);


String waitForURC(const char* token, unsigned long timeoutMs = 10000) {
  unsigned long start = millis();
  String buffer;
 
  while (millis() - start &lt; timeoutMs) {
    while (modem.available()) {
      String line = modem.readStringUntil(&#039;\n&#039;);
      line.trim();
 
      if (line.length() &gt; 0) {
        Serial.println(&quot;URC: &quot; + line);
      }
 
      if (line.startsWith(token)) {
        return line;
      }
    }
  }
  Serial.println(&quot;Timeout beim Warten auf URC: &quot; + String(token));
  return &quot;&quot;;
}


void setup() {
  Serial.begin(115200);
 
  delay(1000);
  Serial.println(&quot;Serial connection ready&quot;);
 
  modem.begin(115200, SERIAL_8N1, RX_PIN, TX_PIN);
  modem.println(&quot;AT&quot;);

  
}
 
void loop() {
  while (modem.available()) {
    String resp = modem.readStringUntil(&#039;\n&#039;);
    resp.trim();
    if (resp.length() &gt; 0) {
      Serial.println(&quot;Modem: &quot; + resp);
    }
  }
 
  static unsigned long lastRun = millis() - 18000;
  if (millis() - lastRun &gt; 20000) {
    lastRun = millis();
 
    modem.println(&quot;AT+CSSLCFG=\&quot;enableSNI\&quot;,0,1&quot;); // SNI für SSL config ID 0 aktivieren
    
    modem.println(&quot;AT+HTTPINIT&quot;);
    
    modem.println(&quot;AT+HTTPPARA=\&quot;URL\&quot;,https://phil.cossnet.de/lte_modul_test.html&quot;); // Kleine selbstgehostete Test-HTML-Datei
    modem.println(&quot;AT+HTTPACTION=0&quot;);
 

    String response = waitForURC(&quot;+HTTPACTION&quot;, 5000); // Auf Antwort warten, offenbar dauert es bei HTTPS länger als bei HTTP
    if (response.length() &gt; 0) {
      modem.println(&quot;AT+HTTPHEAD&quot;);
      modem.println(&quot;AT+HTTPREAD=99999&quot;);
    }
 
    delay(200);
    modem.println(&quot;AT+HTTPTERM&quot;);
  }
}
</pre></div>]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/raspberry-arduino/1113/arduino-esp-simcom-a7670e-lte-modul/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Ein altes Nokia als &#8222;Kunstobjekt&#8220;</title>
		<link>https://datort.de/featured/986/ein-altes-nokia-als-kunstobjekt/</link>
					<comments>https://datort.de/featured/986/ein-altes-nokia-als-kunstobjekt/#respond</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Sat, 24 May 2025 16:28:55 +0000</pubDate>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[LED]]></category>
		<category><![CDATA[Selbstgebaut]]></category>
		<category><![CDATA[Youtube]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<category><![CDATA[esp32]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[WLED]]></category>
		<guid isPermaLink="false">https://datort.de/?p=986</guid>

					<description><![CDATA[In Zeiten von knappen Rohstoffen ist eigentlich klar, was man mit alter Hardware, alten Mobiltelefonen oder ähnlichem machen&#8230;]]></description>
										<content:encoded><![CDATA[
<p>In Zeiten von knappen Rohstoffen ist eigentlich klar, was man mit alter Hardware, alten Mobiltelefonen oder ähnlichem machen sollte: Nach der Nutzung ab auf den Wertstoffhof zum Recycling. Mit manchen alten Schmuckstück fällt das aber etwas schwerer: Es hängen vielleicht gute Erinnerungen dran weil es sich um das erste Telefon handelt, den ersten Game Boy oder der Controller vom SNES damals. </p>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/featured/986/ein-altes-nokia-als-kunstobjekt/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2FLI417bFcJBg%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>So ging es mir mit meinem Nokia 5110: Ich habe es damals geliebt. Es war eins der ersten Nokias mit Snake. Ein so einfaches Spiel, das zumindest die Älteren unter uns wahrscheinlich alle noch kennen. Bisher stand es etwas verloren in meinem Regal. Und somit war es der perfekte Kandidat für dieses Projekt: Ein mit LEDs versehener Fotorahmen, welcher die Innereien des Nokia 51110 so richtig zur Geltung bringen sollte. </p>



<h2 id="die-komponenten" class="cnvs-block-section-heading cnvs-block-section-heading-1747915612519 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Die Komponenten</span>
	</span>
</h2>



<ul class="wp-block-list">
<li>Fotorahmen &#8222;SANNAHED&#8220;, 25x25cm, 6,- Euro</li>



<li>D1 Mini, ESP8266*, ca. 5,- Euro</li>



<li>WS2812B-LED-Streifen, 5V, 60 LEDs/m, 9,- Euro</li>



<li>Magentkontaktstecker, ca. 3,-/Stk.</li>



<li>USB-Stromanschlussboard, ca. 1,- Euro</li>



<li>Sperrdiode, ca. 0,50 Euro</li>



<li>Selbstgestalteter Fotohintergrund, ca. 5,- Euro</li>



<li>Klebepads oder 2-Komponentenkleber, zwischen 2,- und 5,- Euro</li>



<li>etwas Kabel, Lötkolben, Schrumpfschläuche</li>
</ul>



<p><em>*) Wie sich während der Arbeit rausstellte, endet in der nahen Zukunft die Unterstützung von ESP8266-Boards seitens der eingesetzten WLED-Software. Für neue Projekte werden deshalb ESP32-basierte Boards empfohlen, die sich preislich aber nur wenig unterscheiden dürften. </em></p>



<h2 id="das-exponat" class="cnvs-block-section-heading cnvs-block-section-heading-1747915985543 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Das Exponat</span>
	</span>
</h2>



<p>Das Nokia lies sich recht einfach auseinandernehmen: Nachdem man die Batterie entfernt hatte, offenbarten sich auf der Rückseite einige Torx-Schrauben mit denen man schnell im inneren war. Dort ging es dann ebenso schnell weiter. Das muss natürlich bei jedem Gerät der Fall sein, auch wenn früher noch mehr Teile verschraubt statt verklebt waren. Anders als es heute oft gängige Praxis ist. Wenn euer Exponat da etwas widerspenstiger ist, habt bitte im Hinterkopf: Verletzt euch nicht! Displays können brechen, Batterien können auslaufen oder man kann beim Versuch etwas aufzuhebeln abrutschen. Denkt da an eure Finger und eure Gesundheit. Lest dazu bitte auch folgenden Absatz.</p>



<figure class="wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-11 is-layout-flex wp-block-gallery-is-layout-flex">
<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" data-id="994" src="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Exponat-1024x576.jpg" alt="" class="wp-image-994" srcset="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Exponat-1024x576.jpg 1024w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Exponat-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Exponat-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Exponat-1536x864.jpg 1536w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Exponat-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Exponat-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Exponat-1160x653.jpg 1160w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Exponat.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" data-id="996" src="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Disassembled-1024x576.jpg" alt="" class="wp-image-996" srcset="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Disassembled-1024x576.jpg 1024w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Disassembled-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Disassembled-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Disassembled-1536x864.jpg 1536w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Disassembled-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Disassembled-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Disassembled-1160x653.jpg 1160w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Disassembled.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>
</figure>



<h2 id="vorsicht-gefahr" class="cnvs-block-section-heading cnvs-block-section-heading-1747916802240 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Vorsicht: Gefahr!</span>
	</span>
</h2>



<p>Eine Sache, die man unabhängig von eurem Bastelvorhaben nicht unterschätzen sollte, ist die potentielle Gefahr, die von alten Batterien und Akkus ausgehen kann. Ich war überrascht zu sehen, dass bereits in meinem Nokia 5110 von 1998 ein Lithium-Ionen-Akku verbaut war. Die sind heute überall und sehr sicher, dennoch weiß man nie ob im inneren bereits Zersetzungseffekte eingetreten sind. Ich will das Thema auch gar nicht zu sehr stressen, <a href="https://www.umweltbundesamt.de/umwelttipps-fuer-den-alltag/elektrogeraete/lithium-batterien-lithium-ionen-akkus#gewusst-wie" target="_blank" rel="noreferrer noopener nofollow">das</a> <a href="https://www.stiftung-ear.de/service/presse-aktuelles/risikobewusstsein-schaerfen-internationaler-tag-der-batterie-und-der-richtige-umgang-mit-alten-lithium-ionen-akkus/" target="_blank" rel="noreferrer noopener nofollow">Netz</a> ist <a href="https://www.verbraucherzentrale.nrw/schadstoffe/verschiedenes/batterien-kann-bei-langem-sammeln-etwas-passieren-44289" target="_blank" rel="noreferrer noopener nofollow">voll</a> mit <a href="https://www.swr.de/video/sendungen-a-z/marktcheck/akku-brand-explosion-100.html" target="_blank" rel="noreferrer noopener nofollow">Artikeln</a> zu dem Thema. So viel nur: Ich habe mich bewußt dazu entschieden, den Akku auf dem Wertstoffhof abzugeben und ihn nicht in den Fotorahmen zu kleben.  </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Battery-1-1024x576.jpg" alt="" class="wp-image-1008" srcset="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Battery-1-1024x576.jpg 1024w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Battery-1-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Battery-1-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Battery-1-1536x864.jpg 1536w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Battery-1-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Battery-1-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Battery-1-1160x653.jpg 1160w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Battery-1.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Selbst in diesem alten Nokia 5110 steckte bereits ein Lithium-Ionen-Akku. Von diesen kann mit der Zeit und fortschreitender Alterung eine Gefahr ausgehen</figcaption></figure>



<h2 id="der-kreative-teil" class="cnvs-block-section-heading cnvs-block-section-heading-1747915964990 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Der kreative Teil</span>
	</span>
</h2>



<p>Nachdem das Telefon in seine Einzelteile zerlegt war, ging es um die Positionierung. Beim Nokia 5110 kommen viele ähnlich große zum Einsatz. Wenige Kleinteile, was die Positionierung etwas erschwerte. Nachdem ich mich für ein Layout entschieden hatte, ging es ans &#8222;designen&#8220; des Hintergrunds. Ich habe das Wort absichtlich in Anführungszeichen gepackt: Denn hier muss man wirklich kein Experte oder Grafiker sein. Die Hardware, illuminiert durch die LEDs, ist der eigentliche Hingucker. Mit ein paar kurzen Texten, Erklärungen oder einfachen grafischen Elementen kann man viel erreichen. </p>



<p>In meinem Fall habe ich mir folgende Fragen gestellt: </p>



<ul class="wp-block-list">
<li>Wo positioniere ich den Namen des Telefons prominient?</li>



<li>Kann ich einen kurzen Text schreiben, der etwas über die Geschichte erzählt? </li>



<li>Kann ich die einzelnen Komponenten (Logic Board, Tastenfeld, Cover, &#8230;) benennen? </li>



<li>Kann ich mit Pfeilgrafiken auf bestimmte Bauteile oder Features hinweisen? </li>



<li>Wo soll der Rahmen stehen und welche Farbe hat er: empfiehlt sich ein heller oder ein dunkler Hintergrund?</li>



<li>Welche zeitgemäße, moderne oder zurückhaltende Schriftart verwende ich? </li>
</ul>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Photoframe-1024x576.jpg" alt="" class="wp-image-998" srcset="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Photoframe-1024x576.jpg 1024w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Photoframe-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Photoframe-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Photoframe-1536x864.jpg 1536w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Photoframe-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Photoframe-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Photoframe-1160x653.jpg 1160w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Photoframe.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>In Affinity Photo habe ich daraufhin ein bisschen gebastelt, geschoben und experimentiert. Wenn ihr kein Grafikprogramm habt, könnt ihr euch das kostenfreie Tool <a href="https://www.gimp.org/downloads/" target="_blank" rel="noreferrer noopener nofollow">GIMP</a> besorgen, was in der Bedienung als Anfänger vielleicht etwas hakelig sein kann. Alternativ würde ich noch <a href="https://www.canva.com/de_de/" target="_blank" rel="noreferrer noopener nofollow">Canva</a> ins Rennen werfen, was man eingeschränkt nach Registrierung kostenfrei nutzen kann. </p>



<h2 id="hardware-software" class="cnvs-block-section-heading cnvs-block-section-heading-1747917745242 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Hardware &amp; Software</span>
	</span>
</h2>



<p>Zum Einsatz kommen einmal mehr ein ESP8266-Board mit WLED-Software. Wie oben bereits angerissen, sollte man laut WLED-Website für neue Projekte inzwischen ESP32-Boards verwenden, da der 8266er-Chipsatz nicht mehr lange unterstützt werden wird. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Solder-1024x576.jpg" alt="" class="wp-image-1000" srcset="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Solder-1024x576.jpg 1024w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Solder-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Solder-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Solder-1536x864.jpg 1536w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Solder-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Solder-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Solder-1160x653.jpg 1160w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Solder.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Die Diode sorgt dafür, dass der Strom nur in eine Richtung fließt und ESP-Board oder USB-Anschluss am Rechner nicht überlastet werden; Als Daten-PIN wird standardmäßig D4 verwendet, was in den Settings aber geändert werden könnte</figcaption></figure>



<p>Auf den ESP wird dann einfach die WLED-Software über den bekannten <a href="https://install.wled.me/" target="_blank" rel="noreferrer noopener nofollow">Webinstaller</a> geflashed. Danach verbinde ich das zusätzliche USB-Board, an welches später das Netzteil angeschlossen wird, mit dem ESP und dem LED-Steifen. Dazwischen kommt noch eine Diode: Wird Strom an die externe USB-Buchse angeschlossen, soll dieser den ESP und den LED-Streifen versorgen. Schließe ich aber z.B. für ein Software-Update ein USB-Kabel an den ESP direkt an, soll dieser nicht den LED-Streifen mit Strom versorgen. Das könnte eine zu Hohe Last für den ESP oder euren USB-Anschluss am Rechner sein. </p>



<p>Apropos: Insbesondere wenn ihr sehr viele LEDs anschließen wollt, solltet ihr euch Gedanken um die Dicke eurer Kabel machen. Sind die zu dünn, können die sich auch entsprechend erhitzen und in Flammen aufgehen. Ich empfehle da immer den <a href="https://wled-calculator.github.io/" target="_blank" rel="noreferrer noopener nofollow">Rechner vom WLED-Projekt</a>. </p>



<p>Danach habe ich die einzelnen LEDs mit dem Streifen verlötet. Dabei ist es wichtig auf die Reihenfolge zu achten! Auf den Streifen befindet sich ein kleiner Pfeil, welche die Laufrichtung anzeigt. </p>



<p>Um den Rahmen von seinem Innenleben trennen zu können, habe ich Magnetkontakte verwendet. Die hatte ich noch rumfliegen, boten sich an, sind aber komplett optional. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Magnet-1024x576.jpg" alt="" class="wp-image-999" srcset="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Magnet-1024x576.jpg 1024w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Magnet-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Magnet-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Magnet-1536x864.jpg 1536w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Magnet-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Magnet-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Magnet-1160x653.jpg 1160w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Magnet.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Mit den Magnetkontakten bleiben Rahmen und Hintergrund trennbar (optional)</figcaption></figure>



<h2 id="komponenten-befestigen" class="cnvs-block-section-heading cnvs-block-section-heading-1747919832912 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Komponenten befestigen</span>
	</span>
</h2>



<p>Nachdem das Foto auf dem Hintergrund aufgeklebt wurde, wurden die einzelnen Komponenten des 5110 wieder rum auf das Foto geklebt. Hierbei habe ich anfangs mit kleinen Klebepads gearbeitet. Die funktionieren auch gut, allerdings sollte man einerseits nicht zu wenige von ihnen verwenden und diese nicht in Türmchenbauweise zu hoch stapeln. Sowohl die Platine des Tastenfelds als auch das Cover der Front &#8211; beides große aber leichte Teile &#8211; kamen mir nach 1-2 Tagen entgegen. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Pads-1024x576.jpg" alt="" class="wp-image-1001" srcset="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Pads-1024x576.jpg 1024w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Pads-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Pads-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Pads-1536x864.jpg 1536w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Pads-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Pads-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Pads-1160x653.jpg 1160w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_Pads.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Die kleinen Klebepads funktionieren, wenn man sie nicht stapelt und quantitativ nicht sparsam mit ihnen umgeht</figcaption></figure>



<p>Ich habe mich dann dazu entschieden, mit 2-Komponentenkleber aus dem Discounter weiterzumachen. Der war günstig, hält aber nach seinen 2 Stunden Trocknungszeit richtig gut. Als Abstandshalter verwende ich kleine Elemente aus dem 3D-Drucker. Da kann man aber auch sicher ein Stückchen Holz oder ähnliches verwenden, wenn man keinen 3D-Drucker zur Hand hat. </p>



<p>Im Nachgang würde ich definitiv immer wieder den Weg mit dem Kleber gehen. Es ist einfach super ärgerlich, wenn man 2 Tage später auf den Fotorahmen schaut und sich wundert, warum Teile plötzlich eine Etage tiefer liegen als erwartet und schlimmsten Falls noch etwas beschädigen. </p>



<h2 id="konfiguration" class="cnvs-block-section-heading cnvs-block-section-heading-1747918908187 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Konfiguration</span>
	</span>
</h2>



<p>In der WLED-Oberfläche lassen sich nun unterschiedliche Segmente konfigurieren. In meinem Fall befinden neben dem LED-Streifen, der innen einmal um den Rahmen geht, 5 weitere LEDs unter der alten Hardware des Nokia. Über die Segmente ist mir mögliche, unterschiedliche Farben und Effekte für jede LED zu konfigurieren. So stelle ich ein: </p>



<ul class="wp-block-list">
<li>LED 1, Tastenfeld, Segment 1: Grün</li>



<li>LED 2-3, Display, Segment 2: Weiß mit leichtem Blauton</li>



<li>LED 4-5, Platine, Segment 3: Wechselnder, Bunter Farbeffekt</li>
</ul>



<p>Die dann folgenden LEDs sind Teil des Streifens. Auch hier konfiguriere ich unterschiedliche Farben, sodass die einzelnen Komponenten (bunt) und Texte (weiß) unterschiedlich beleuchtet werden. Für wen das zu theoretisch war: Im Video zeige ich das nochmal ganz genau. Im Video wie hier der Hinweis: Speichern nicht vergessen, dass geschieht nämlich nicht automatisch!</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_WLED_Webconfig-1024x576.jpg" alt="" class="wp-image-1004" srcset="https://datort.de/wp-content/uploads/2025/05/Nokia_5110_WLED_Webconfig-1024x576.jpg 1024w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_WLED_Webconfig-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_WLED_Webconfig-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_WLED_Webconfig-1536x864.jpg 1536w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_WLED_Webconfig-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_WLED_Webconfig-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_WLED_Webconfig-1160x653.jpg 1160w, https://datort.de/wp-content/uploads/2025/05/Nokia_5110_WLED_Webconfig.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Über die IP des ESP-Boards kann man das WLED Webinterface erreichen. Hier kann man einzelne Segmente konfigurieren, welche dann unterschiedliche Farben oder Effekte haben</figcaption></figure>



<h2 id="fazit" class="cnvs-block-section-heading cnvs-block-section-heading-1747919796909 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Fazit</span>
	</span>
</h2>



<p>Ich bin mit dem Ergebnis sehr zufrieden. Bei der Konfiguration der LEDs tobe ich mich vielleicht noch ein bisschen aus, das ist mir vielleicht einen ticken zu farbintensiv. Aber da hat man ja alle Möglichkeiten dank WLED. Ein bisschen Zeit und Geduld sollte man für das Projekt mitbringen. Es sind, abhängig von der Anzahl der verwendeten LEDs, schon einige Arbeitsschritte. Aber es lohnt sich. Was die Kosten angeht, stehe ich am Ende bei irgendwas um die 20-30 Euro. Einige der Komponenten hatte ich noch hier und das Nokia 5110 habe ich jetzt natürlich nicht in die Rechnung mit aufgenommen &#8211; das ist eh unbezahlbar. <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/05/1-1024x576.jpg" alt="" class="wp-image-1002" srcset="https://datort.de/wp-content/uploads/2025/05/1-1024x576.jpg 1024w, https://datort.de/wp-content/uploads/2025/05/1-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/05/1-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/05/1-1536x864.jpg 1536w, https://datort.de/wp-content/uploads/2025/05/1-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/05/1-800x450.jpg 800w, https://datort.de/wp-content/uploads/2025/05/1-1160x653.jpg 1160w, https://datort.de/wp-content/uploads/2025/05/1.jpg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="768" height="1024" src="https://datort.de/wp-content/uploads/2025/05/IMG_9704-768x1024.jpeg" alt="" class="wp-image-1005" srcset="https://datort.de/wp-content/uploads/2025/05/IMG_9704-768x1024.jpeg 768w, https://datort.de/wp-content/uploads/2025/05/IMG_9704-225x300.jpeg 225w, https://datort.de/wp-content/uploads/2025/05/IMG_9704-1152x1536.jpeg 1152w, https://datort.de/wp-content/uploads/2025/05/IMG_9704-1536x2048.jpeg 1536w, https://datort.de/wp-content/uploads/2025/05/IMG_9704-380x507.jpeg 380w, https://datort.de/wp-content/uploads/2025/05/IMG_9704-800x1067.jpeg 800w, https://datort.de/wp-content/uploads/2025/05/IMG_9704-1160x1547.jpeg 1160w, https://datort.de/wp-content/uploads/2025/05/IMG_9704-scaled.jpeg 1920w" sizes="auto, (max-width: 768px) 100vw, 768px" /></figure>
]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/featured/986/ein-altes-nokia-als-kunstobjekt/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>AWTRIX STREAM: Die Kleine für den Schreibtisch</title>
		<link>https://datort.de/raspberry-arduino/929/awtrix-mini-die-kleine-fuer-den-schreibtisch/</link>
					<comments>https://datort.de/raspberry-arduino/929/awtrix-mini-die-kleine-fuer-den-schreibtisch/#comments</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Sat, 05 Apr 2025 16:11:45 +0000</pubDate>
				<category><![CDATA[LED]]></category>
		<category><![CDATA[Raspberry & Arduino]]></category>
		<category><![CDATA[Selbstgebaut]]></category>
		<category><![CDATA[Awtrix]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<category><![CDATA[ESP8266]]></category>
		<guid isPermaLink="false">https://datort.de/?p=929</guid>

					<description><![CDATA[Wenn ihr diesen Artikel gefunden habt, so kennt ihr höchstwahrscheinlich das AWTRIX-Projekt. Eine Firmware für ESP-Entwicklerboards, mit der&#8230;]]></description>
										<content:encoded><![CDATA[
<p>Wenn ihr diesen Artikel gefunden habt, so kennt ihr höchstwahrscheinlich das <a href="https://blueforcer.github.io/awtrix3/#/" target="_blank" rel="noreferrer noopener">AWTRIX</a>-Projekt. Eine Firmware für ESP-Entwicklerboards, mit der sich Selbstbau-LED-Matrixen betreiben oder auch fertige Modelle wie die TC-001 von Ulanzi umpatchen lassen. Mit &#8222;AWTRIX STREAM&#8220; habe ich nun ein kleines Projekt gestartet, welches das Ganze etwas kompakter machen und auf ein LC-Display bringen soll.</p>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/raspberry-arduino/929/awtrix-mini-die-kleine-fuer-den-schreibtisch/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2FLMmw3sYUiGc%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Sehr kleine 32x8er-LED-Module zu fairen Preisen und für den passenden Standart zum Betrieb der Awtrix-Firmware zu finden, ist gar nicht so einfach. So entstand die Idee, stattdessen einfach ein 320&#215;172 Pixel großes Display zu verwenden. Mein Projekt ist am Ende <strong>keine</strong> eigenständige AWTRIX. Stattdessen spiegelt (oder &#8222;streamt&#8220;) sie sozusagen nur eine bereits in eurem Netzwerk vorhandene LED-Matrix mit laufender AWTRIX-Firmware drauf. Das läuft dann über Wifi und funktioniert erstaunlich gut und schnell.</p>



<h2 id="dokumentation" class="cnvs-block-section-heading cnvs-block-section-heading-1745162369158 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Dokumentation</span>
	</span>
</h2>



<p>Die Dokumentation befindet sich noch im Aufbau, aber gerade wenn ihr die MQTT-Befehle nutzen wollt, die mit Version 1.1.0 mitkamen, habe ich euch die da schon Mal aufgeschrieben.</p>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://datort.de/awtrix-stream-dokumentation/" target="_blank" rel="noreferrer noopener">AWTRIX STREAM Dokumentation</a></div>
</div>



<h2 id="die-teile" class="cnvs-block-section-heading cnvs-block-section-heading-1741547444743 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Die Teile</span>
	</span>
</h2>



<p>Um das Projekt nachzubauen benötigt ihr gar nicht viel. Löten ist optional: Nur wenn ihr die recht langen Kabel des Displays kürzen wollt, solltet ihr löten. Es geht aber auch ohne das, dann kann alles einfach zusammengesteckt werden.</p>



<ul class="wp-block-list">
<li>D1 Mini-Board (mit ESP8266-Chip)</li>



<li>Waveshare 1.47&#8243; LC-Display oder Noname (z.B. <a href="https://de.aliexpress.com/item/1005008541993365.html?spm=a2g0o.order_list.order_list_main.5.538f5c5fOcFET1&amp;gatewayAdapt=glo2deu" target="_blank" rel="noreferrer noopener nofollow">dieses</a>)*</li>



<li>6x 2mm-Schrauben (z.B. 2&#215;5 oder 2&#215;8)</li>



<li>einen 3D-Drucker**</li>
</ul>



<p>*) Ich will betonen das ich keine Werbung für das Waveshare-Display machen will. Ich habe mich aus 3 Gründen für dieses (im Vergleich etwas teurere) Display entschieden: Zum einen ist die Platine des Boards nur minimal größer als das Display was 3D-Gehäuse kompakter werden lies. Außerdem bringt das Display auf der Rückseite direkt Muttern zum verschrauben mit und da es sich um ein &#8222;Markenprodukt&#8220; handelt, solltet ihr beim Bestellen im besten Fall auf den Millimeter dasselbe Produkt erhalten. In der Theorie sollte auch jedes andere Display, welches einen ST7789-Chip mitbringt problemlos funktionieren wie das verlinkte Noname-Display.</p>



<p>**) Der 3D-Drucker ist optional. Ihr könnt das Projekt natürlich auch mit einem ganz eigenen Gehäuse oder in anderer Form nachbauen. Dann benötigt ihr nur die Hardwarekomponenten und könnt loslegen. </p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1000" height="562" src="https://datort.de/wp-content/uploads/2025/04/awtrix_mini_twitch.jpg" alt="" class="wp-image-947" srcset="https://datort.de/wp-content/uploads/2025/04/awtrix_mini_twitch.jpg 1000w, https://datort.de/wp-content/uploads/2025/04/awtrix_mini_twitch-300x169.jpg 300w, https://datort.de/wp-content/uploads/2025/04/awtrix_mini_twitch-768x432.jpg 768w, https://datort.de/wp-content/uploads/2025/04/awtrix_mini_twitch-380x214.jpg 380w, https://datort.de/wp-content/uploads/2025/04/awtrix_mini_twitch-800x450.jpg 800w" sizes="auto, (max-width: 1000px) 100vw, 1000px" /></figure>



<h2 id="3d-druck" class="cnvs-block-section-heading cnvs-block-section-heading-1741548970815 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>3D Druck</span>
	</span>
</h2>



<p>Wenn ihr das Projekt wie im Video gezeigt nachbauen möchtet, könnt ihr euch mein AWTRIX STREAM-Gehäuse drucken. Es besteht aus 3 Teilen: Einem Träger, auf dem das Display aufgeschraubt und das D1 Mini-Board aufgelegt wird. Sowie dem Hauptgehäuse und einer aufsteckbaren Front.</p>



<div class="wp-block-file"><a id="wp-block-file--media-6c509b7b-273d-4ee7-ad9b-7adba44d832e" href="https://datort.de/wp-content/uploads/2025/03/AwtrixMINI.zip">3D-Druck Dateien AWTRIX STREAM (A-Variante, für WS-LCD, STL)</a><a href="https://datort.de/wp-content/uploads/2025/03/AwtrixMINI.zip" class="wp-block-file__button wp-element-button" download aria-describedby="wp-block-file--media-6c509b7b-273d-4ee7-ad9b-7adba44d832e">Herunterladen</a></div>



<div class="wp-block-file"><a id="wp-block-file--media-126e15bb-b3ab-46a1-8b04-6a5dc1e14839" href="https://datort.de/wp-content/uploads/2025/04/Awtrix_Mini_B.zip">3D-Druck Dateien AWTRIX STREAM (B-Variante, für Noname-LCD, STL)</a><a href="https://datort.de/wp-content/uploads/2025/04/Awtrix_Mini_B.zip" class="wp-block-file__button wp-element-button" download aria-describedby="wp-block-file--media-126e15bb-b3ab-46a1-8b04-6a5dc1e14839">Herunterladen</a></div>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case-1024x666.png" alt="" class="wp-image-932" srcset="https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case-1024x666.png 1024w, https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case-300x195.png 300w, https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case-768x499.png 768w, https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case-1536x999.png 1536w, https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case-380x247.png 380w, https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case-800x520.png 800w, https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case-1160x754.png 1160w, https://datort.de/wp-content/uploads/2025/03/AwtrixMINI_3d_case.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h2 id="zusammenbau" class="cnvs-block-section-heading cnvs-block-section-heading-1741548272973 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Zusammenbau</span>
	</span>
</h2>



<p>Im ersten Schritt solltet ihr das Display mit dem D1 Mini-Board verbinden. Die folgende Tabelle zeigt, welche Pin des Displays mit welchem Pin des Boards verbunden werden muss. </p>



<figure class="wp-block-table"><table class="has-fixed-layout"><tbody><tr><td><strong>D1 Mini Board</strong></td><td><strong>Waveshare 1.47&#8243; Display</strong></td><td><strong>Noname 1.47&#8243; Display</strong></td></tr><tr><td>D5 (GPIO 14)</td><td>CLK</td><td>SCL</td></tr><tr><td>D7 (GPIO 13)</td><td>DIN</td><td>SDA</td></tr><tr><td>D1 (GPIO 5)</td><td>CS</td><td>CS</td></tr><tr><td>D4 (GPIO 2)</td><td>DC</td><td>DC</td></tr><tr><td>D6 (GPIO 12)</td><td>BL</td><td>BL</td></tr><tr><td>D3 (GPIO 0)</td><td>RST</td><td>RST</td></tr><tr><td>3V3</td><td>VCC</td><td>VDD</td></tr><tr><td>G</td><td>GND</td><td>GND</td></tr></tbody></table></figure>



<p>Wenn ihr nicht löten möchtet und das 3D-gedruckte Gehäuse verwenden möchtet, dann müsst ihr an der Stelle nur noch das Display mit 4 Schrauben an dem Träger anbringen und das Kabel vorsichtig verwickeln. Danach den Träger einschieben und von außen festschrauben. Front vorsichtig aufklippen und das wars. Weiter geht&#8217;s mit dem Flashen der Software. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="858" src="https://datort.de/wp-content/uploads/2025/03/Bildschirmfoto-2025-03-31-um-20.56.06-1024x858.png" alt="" class="wp-image-942" srcset="https://datort.de/wp-content/uploads/2025/03/Bildschirmfoto-2025-03-31-um-20.56.06-1024x858.png 1024w, https://datort.de/wp-content/uploads/2025/03/Bildschirmfoto-2025-03-31-um-20.56.06-300x251.png 300w, https://datort.de/wp-content/uploads/2025/03/Bildschirmfoto-2025-03-31-um-20.56.06-768x643.png 768w, https://datort.de/wp-content/uploads/2025/03/Bildschirmfoto-2025-03-31-um-20.56.06-380x318.png 380w, https://datort.de/wp-content/uploads/2025/03/Bildschirmfoto-2025-03-31-um-20.56.06-800x670.png 800w, https://datort.de/wp-content/uploads/2025/03/Bildschirmfoto-2025-03-31-um-20.56.06-1160x972.png 1160w, https://datort.de/wp-content/uploads/2025/03/Bildschirmfoto-2025-03-31-um-20.56.06.png 1375w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Der Schaltplan zum Anschluss ESP8266 und LC-Display (hier: Variante mit Waveshare-Display)</figcaption></figure>



<h2 id="software" class="cnvs-block-section-heading cnvs-block-section-heading-1741549667252 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Software</span>
	</span>
</h2>



<p>Um die Software auf das Board zu bekommen, müsst ihr es zunächst via USB mit eurem Rechner verbinden. Als nächstes benötigt ihr einen Chrome-basierten Browser, als Chrome selbst, Chromium, Brave oder MS Edge. Opera funktioniert u. U. auch. Dann geht ihr auf folgende Seite, auf der ich immer die aktuelle Software-Version bereitstelle:</p>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://esp.datort.de" target="_blank" rel="noreferrer noopener">https://esp.datort.de</a></div>
</div>



<p>Wählt dort das Projekt <strong>#002: AWTRIX STREAM vx.x.x (ehemals &#8222;Awtrix Mini&#8220;)</strong> aus und folgt den Anweisungen. Solltet ihr das lieber in Bewegtbild sehen wollen: Im Video zeige ich auch diesen Schritt.</p>



<p>Nach der Installation stellt das ESP-Board einen WLAN-Access Point zur Verfügung: </p>



<p><strong>SSID:</strong> <code>AWTRIX STREAM-Setup</code><br><strong>Passwort:</strong> <code>12345678</code></p>



<p>Sobald ihr verbunden seit, sollte sich ein Konfigurationsmenü öffnen. Wenn die Seite nicht automatisch erscheint, verbindet euch auf die IP-Adresse <code>http://192.168.4.1</code>. Hier könnt ihr nun euer Wlan konfigurieren. Außerdem könnt ihr dem Board noch einen Hostname vergeben und &#8211; <strong><em>ganz wichtig</em></strong> &#8211; die IP-Adresse der AWTRIX, die kopiert werden soll und von der unsere neue AWTRIX STREAM ihre Daten erhält.</p>



<p>Sind alle Einstellungen vorgenommen sollte sich die AWTRIX STREAM direkt mit ihrer großen Schwester verbinden. Habt ihr euch &#8222;verkonfiguriert&#8220;, so startet bitte mit der Installation der Software von vorne und wählt unbedingt &#8222;Erase Device&#8220; aus. Dann könnt ihr frisch durchstarten.</p>



<h2 id="changelog" class="cnvs-block-section-heading cnvs-block-section-heading-1745159684136 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Changelog</span>
	</span>
</h2>



<p>Um euch auf dem laufenden zu halten, was sich bei der Software so getan hat, kopiere ich euch hier die Änderungen der letzten Versionen rein. </p>



<pre class="wp-block-code"><code>## v1.1.0 - 20.04.2025

&#91;FEATURE] MQTT broker support
&#91;FEATURE] Change settings via MQTT
&#91;FEATURE] HTTP Basic Auth configuration to access secured AWTRIX hosts
&#91;FEATURE] Toggle display via MQTT
&#91;FEATURE] Reboot AWTRIX STREAM via MQTT
&#91;FEATURE] Erase all settings via MQTT to start over
&#91;FIX] Several layout/screen optimisations and new dialogs
&#91;FIX] Reduce Overhead on HTTP calls for better performance
&#91;FIX] Removed FPS counter on Serial connection for better performance
&#91;CHORE] Name change to a more fancy "AWTRIX STREAM". Yeah!

## v1.0.0 - 06.04.2025

Initial release 

</code></pre>



<h2 id="faq" class="cnvs-block-section-heading cnvs-block-section-heading-1743929300324 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>FAQ</span>
	</span>
</h2>



<p><strong>Benötige ich wirklich eine &#8222;richtige&#8220; AWTRIX oder Ulanzi TC001 mit AWTRIX-Firmware oder läuft die AWTRIX STREAM auch Standalone?</strong><br>Die AWTRIX STREAM wiederholt technisch gesehen nur das, was auf einer anderen LED-Matrix angezeigt wird. Sie kann nicht standalone betrieben werden.</p>



<p><strong>Gibt es einen anderen Weg die AWTRIX STREAM zu nutzen ohne erst eine LED-Matrix kaufen zu müssen? </strong><br>Ja. Wenn ihr noch ein ESP32-WROOM-32D-Board rumfliegen habt, könnt ihr da die AWTRIX-Firmware draufflashen. Die läuft dann auch ohne angeschlossene LED-Panele und kann so als Host fungieren.</p>



<p><strong>Ist der Sourcecode verfügbar? </strong><br>Ja, ihr findet das Projekt in meinem <a href="https://github.com/datort/awtrix-stream" target="_blank" rel="noreferrer noopener">Github Repository</a> unter der Attribution-NonCommercial-ShareAlike 4.0 International-Lizenz.</p>



<p><strong>Kann ich mehrere AWTRIX STREAN auf eine Host AWTRIX loslassen?</strong> <br>Theoretisch ja. Jede AWTRIX STREAM verbindet sich über das WLAN via HTTP mit der Host AWTRIX. Das generiert Last auf der Host AWTRIX und kann irgendwann dazu führen, dass sich die AWTRIX STREAM nur noch seltener aktualisieren und alles etwas holpriger wirkt. Wo da genau die Grenze ist, kann ich nicht sagen. 2-3 gleichzeitig habe ich erfolgreich getestet. Eine größere Herausforderung stellt das WLAN da: Das sollte eine gute Signalstärke sowohl für Host also auch für AWTRIX STREAM bieten.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/raspberry-arduino/929/awtrix-mini-die-kleine-fuer-den-schreibtisch/feed/</wfw:commentRss>
			<slash:comments>17</slash:comments>
		
		
			</item>
		<item>
		<title>Mit KI schneller in neue Themen einsteigen</title>
		<link>https://datort.de/youtube/921/mit-ki-schneller-in-neue-themen-einsteigen/</link>
					<comments>https://datort.de/youtube/921/mit-ki-schneller-in-neue-themen-einsteigen/#respond</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Fri, 28 Feb 2025 10:11:27 +0000</pubDate>
				<category><![CDATA[Youtube]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<guid isPermaLink="false">https://datort.de/?p=921</guid>

					<description><![CDATA[Die Welt der Maker und DIY-Enthusiasten erlebt durch generative KI einen echten Innovationsschub. Ob es um die Automatisierung&#8230;]]></description>
										<content:encoded><![CDATA[
<p>Die Welt der Maker und DIY-Enthusiasten erlebt durch generative KI einen echten Innovationsschub. Ob es um die Automatisierung von Prozessen, die Ansteuerung von Hardware oder die Entwicklung individueller Lösungen geht – KI kann helfen, schneller ans Ziel zu kommen.</p>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/youtube/921/mit-ki-schneller-in-neue-themen-einsteigen/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2F6yjp_PK29tI%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Ein Beispiel ist die Nutzung von Python-Skripten für Projekte wie die AWTRIX-Bibliothek. Statt stundenlang Dokumentationen zu wälzen oder sich durch Foren zu kämpfen, können Maker KI-gestützte Tools wie Chatbots oder Codegeneratoren nutzen, um sich passgenaue Skripte erstellen und erklären zu lassen. Die KI kann beispielsweise dabei helfen, MQTT-Kommunikation für eine smarte LED-Matrix zu implementieren oder ein Skript zur Ansteuerung spezifischer Hardware-Komponenten zu schreiben.</p>



<p>Allerdings ist der erste Entwurf oft nicht perfekt.&nbsp;Iterationen sind entscheidend: Es kann mehrere Versuche brauchen, bis die KI genau das gewünschte Ergebnis liefert. Durch präzisere Prompts, das Testen und Anpassen des generierten Codes oder gezieltes Nachfragen lässt sich die Qualität deutlich steigern.</p>



<p>Kurz gesagt: Generative KI ist ein mächtiges Werkzeug für Maker – nicht als Ersatz für Wissen und Erfahrung, sondern als&nbsp;Booster für kreative Projekte. Wer bereit ist, mit ihr zu experimentieren, kann viele Hürden schneller überwinden und seine Ideen effizienter umsetzen.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/youtube/921/mit-ki-schneller-in-neue-themen-einsteigen/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>8x8er WLED RGB Lichtillumination</title>
		<link>https://datort.de/led/894/8x8er-wled-rgb-lichtillumination/</link>
					<comments>https://datort.de/led/894/8x8er-wled-rgb-lichtillumination/#respond</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Thu, 13 Feb 2025 18:43:32 +0000</pubDate>
				<category><![CDATA[LED]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<guid isPermaLink="false">https://datort.de/?p=894</guid>

					<description><![CDATA[LED-Projekte finden auf dem Kanal hier nach und nach immer mehr Aufmerksamkeit. Angefangen hat es mit der DIY&#8230;]]></description>
										<content:encoded><![CDATA[
<p>LED-Projekte finden auf dem Kanal hier nach und nach immer mehr Aufmerksamkeit. Angefangen hat es mit der <a href="https://datort.de/raspberry-arduino/625/diy-led-matrix-im-eigenbau/" data-type="post" data-id="625">DIY LED-Matrix</a>, welche mit Awtrix-Software eine günstige Möglichkeit ist, sich ein dynamisches Infodisplay zu bauen. Weiter ging es mit einer <a href="https://datort.de/selbstgebaut/671/16x16er-pixelart-und-led-effekte-mit-wled-im-eigenbau/" data-type="post" data-id="671">16x16er WLED-Matrix</a>, die bis heute für einen bunten Blickfang in meinem Regal sorgt. </p>



<p>Heute widme ich sozusagen der kleinen Version dieser Matrix: In meinem Gaming Room ist es bisher noch ein bisschen trist. Gerade im Kontext &#8222;Gaming&#8220; darf für meinen Geschmack ein bisschen Farbe nicht fehlen. Deshalb habe ich für ein 8x8er WS2812B RGB-Modul, so wie sie bereits in der 16x16er-Matrix zu viert im Einsatz sind, entschieden und ein passendes Gehäuse drumrum gebaut. </p>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/led/894/8x8er-wled-rgb-lichtillumination/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2FXy9LI4nCMHU%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Um zu schauen, welches PLA am besten passt, habe ich vier unterschiedliche Oberseiten gedruckt: schwarz, weiß, grau und transparent. Spoiler: Am Ende ist es für meinen Verwendungszweck den Raum generell etwas bunter zu illuminieren das transparente Cover geworden. Aber auch weiß und grau sehen gut aus, bei schwarz kommt wenig überraschend wenig Licht durch. Zumindest solang man die Lichtintensität nicht deutlich höher dreht, womit wir bei einem wichtigen Punkt sind: </p>



<h2 id="schaltung" class="cnvs-block-section-heading cnvs-block-section-heading-1739018755870 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Schaltung</span>
	</span>
</h2>



<p><strong>Wichtiger Hinweis:</strong> Im Video sag ich es, hier sage ich es auch nochmal. Wenn ihr das Projekt nachbaut: Ich bin Hobby-Schrauber, kein Experte. Wenn euch Komponenten kaputtgehen, die Schaltung nicht optimal sein sollte oder ähnliches: Ihr seid schon groß, könnt selbst abwägen was ihr da macht. Besonders drauf hingewiesen sei, dass durch die Bauart des Gehäuses die Abwärme der LEDs nur schlecht abgeführt werden kann. Ergibt sich aus der gewünschten Form und der angestrebten Kompaktheit. Im Video zeige ich es: Lasst ihr die LEDs bei voller Intensität in weiß länger laufen, komme ich selbst bei offenem Gehäuse auf 55-60 °C. An der Stelle würde das PLA vermutlich zu einem Klumpen verschmelzen. Das Ganze ist also dafür ausgelegt, irgendwo mit mittlerer Intensität betrieben zu werden. So, genug dazu, auf ins Projekt.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/02/WLED_LED_3-1024x576.jpeg" alt="" class="wp-image-905" srcset="https://datort.de/wp-content/uploads/2025/02/WLED_LED_3-1024x576.jpeg 1024w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_3-300x169.jpeg 300w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_3-768x432.jpeg 768w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_3-1536x864.jpeg 1536w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_3-380x214.jpeg 380w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_3-800x450.jpeg 800w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_3-1160x653.jpeg 1160w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_3.jpeg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Voll aufgedreht wird das Panel ganz schön warm. Das solltet ihr niemals tun!</figcaption></figure>



<p>Im Video gehe ich einmal über den Aufbau und den Anschluss der Komponenten. Kurz zusammengefasst: Der Strom kommt vom Micro-USB-Board und geht auf den 5V bzw. Ground des ESP8266-Boards. Zusätzlich geht&#8217;s direkt weiter auf die LED-Matrix. Somit läuft der Strom nicht über das ESP-Board, was zu dessen Langlebigkeit beisteuern sollte. Sauberer wäre es vermutlich, wenn man zwischen ESP-Board und Stromquelle noch eine Sperrdiode setzt. Da ich die Schaltung möglichst Anfängerfreundlich halten wollte, habe ich darauf verzichtet. Ich weiße aber darauf hin, dass man die WLED-Software am besten vor dem Zusammenbau installiert und nachdem alles verkabelt ist, keinen Strom mehr via USB-Kabel auf den ESP gibt. Zur Verdeutlichung hier nochmal ein Schaltplan: </p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="975" height="672" src="https://datort.de/wp-content/uploads/2025/02/WLED_LED_Matrix_Schaltplan.png" alt="" class="wp-image-899" srcset="https://datort.de/wp-content/uploads/2025/02/WLED_LED_Matrix_Schaltplan.png 975w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_Matrix_Schaltplan-300x207.png 300w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_Matrix_Schaltplan-768x529.png 768w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_Matrix_Schaltplan-380x262.png 380w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_Matrix_Schaltplan-800x551.png 800w" sizes="auto, (max-width: 975px) 100vw, 975px" /><figcaption class="wp-element-caption">Schaltplan zum Projekt: Die Spannungsversorgung geht Y-förmig auf den ESP und die Matrix</figcaption></figure>



<p>Das WS2812-Modul kommt mit den 3.3V Pegel des ESP-Boards klar. Man benötigt also keinen Levelshifter, ist da sehr tolerant. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/02/WLED_LED_6-1024x576.jpeg" alt="" class="wp-image-907" srcset="https://datort.de/wp-content/uploads/2025/02/WLED_LED_6-1024x576.jpeg 1024w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_6-300x169.jpeg 300w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_6-768x432.jpeg 768w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_6-1536x864.jpeg 1536w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_6-380x214.jpeg 380w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_6-800x450.jpeg 800w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_6-1160x653.jpeg 1160w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_6.jpeg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h2 id="3d-druck" class="cnvs-block-section-heading cnvs-block-section-heading-1739018694490 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>3D Druck</span>
	</span>
</h2>



<p>Das Ganze braucht natürlich noch ein Zuhause. Dafür habe ich ein einfaches Gehäuse gebastelt, welches die Komponenten umschließt. Wie bereits erläutert werden die LEDs warm und je nach Material kommt mal mehr, mal weniger Licht durch. Ich empfehle helle bis transparente Farben für die Oberseite. Solltet ihr es etwas lichtintensiver benötigen, kann PETG statt PLA eine Alternative sein, um Verformungen zu vermeiden. Hier der Download der Komponenten für euren 3D-Drucker: </p>



<div class="wp-block-file"><a id="wp-block-file--media-dcb9fb75-a536-4a38-96c4-11b53c99c3aa" href="https://datort.de/wp-content/uploads/2025/02/8x8_WLED_RGB_Dot.zip">3D Druckdateien (Unter- und Oberseite)</a><a href="https://datort.de/wp-content/uploads/2025/02/8x8_WLED_RGB_Dot.zip" class="wp-block-file__button wp-element-button" download aria-describedby="wp-block-file--media-dcb9fb75-a536-4a38-96c4-11b53c99c3aa">Herunterladen</a></div>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/02/WLED_LED_4-1024x576.jpeg" alt="" class="wp-image-906" srcset="https://datort.de/wp-content/uploads/2025/02/WLED_LED_4-1024x576.jpeg 1024w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_4-300x169.jpeg 300w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_4-768x432.jpeg 768w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_4-1536x864.jpeg 1536w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_4-380x214.jpeg 380w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_4-800x450.jpeg 800w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_4-1160x653.jpeg 1160w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_4.jpeg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Unterschiedliche Farben haben &#8211; Überraschung &#8211; unterschiedlich gute Lichtdurchlässigkeit</figcaption></figure>



<h2 id="teileliste" class="cnvs-block-section-heading cnvs-block-section-heading-1739018236865 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Teileliste</span>
	</span>
</h2>



<p>Um das Projekt möglich einfach zu halten, habe ich mich auf die nötigsten Komponenten beschränkt. Neben den genannten braucht es natürlich Litze (nicht zu dünn, um den Querschnitt für euer Projekt zu berechnen könnt ihr sonst gerne auf den <a href="https://wled-calculator.github.io/" target="_blank" rel="noreferrer noopener">WLED Rechner</a> zurückgreifen). Naja, und ein Lötkolben samt Zubehör sollten bereitstehen.</p>



<ul class="wp-block-list">
<li>D1 Mini-Board (z.B. <a href="https://www.makershop.de/plattformen/d1-mini/wemos-d1-mini/" target="_blank" rel="noreferrer noopener nofollow">hier</a>, <a href="https://www.berrybase.de/d1-mini-esp8266-entwicklungsboard" target="_blank" rel="noreferrer noopener nofollow">hier</a> oder bei eBay)</li>



<li>WS2812B 8&#215;8 LED Matrix (z.B. <a href="https://de.aliexpress.com/item/32600043941.html" target="_blank" rel="noreferrer noopener nofollow">hier</a>)</li>



<li>Micro-USB-Board (z.B. <a href="https://www.amazon.de/dp/B07TVHR9LF" target="_blank" rel="noreferrer noopener nofollow">hier</a>)</li>
</ul>



<p><strong>Hinweis: </strong>Mein Blog hier ist privat, es handelt sich NICHT um Affiliate-Links. Ihr könnt natürlich überall anders bestellen. Ich benenne die Komponenten explizit bei diesen Anbietern, da es manchmal kleine Unterschiede gibt was die Dimensionen der Bauteile angeht. Es ist aber wichtig, die passenden Komponenten zu verwenden, wenn man die 3D-Druck-Vorlagen verwenden möchte. Ich habe mir mit kleinen Margins gearbeitet, damit das Gehäuse möglichst kompakt bleibt. </p>





<h2 id="fazit" class="cnvs-block-section-heading cnvs-block-section-heading-1739018769305 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Fazit</span>
	</span>
</h2>



<p>Ich bin mit dem Ergebnis sehr zufrieden, mein Gaming Room ist nun etwas farbenfroher. Mal schauen, welche Animation es am Ende wird, aber da bietet WLED ja einiges zur Auswahl. Aufgrund der wenigen Komponenten könnte das Projekt auch durchaus was für Einsteiger sein. Die Kosten halten sich am Ende mit etwa 15,- Euro auch durchaus im Rahmen. Und wenn man keinen 3D Drucker hat, so kann man sich vielleicht anders behelfen: Wie wäre es mit einem Rahmen aus schönen Holzkomponenten? Leicht lasiert? Jetzt wo ich so drüber nachdenke, vielleicht ist das ja was für ein kommendes Projekt.</p>



<p>Viel Spaß beim Basteln und experimentieren! </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2025/02/WLED_LED_7-1024x576.jpeg" alt="" class="wp-image-904" srcset="https://datort.de/wp-content/uploads/2025/02/WLED_LED_7-1024x576.jpeg 1024w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_7-300x169.jpeg 300w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_7-768x432.jpeg 768w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_7-1536x864.jpeg 1536w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_7-380x214.jpeg 380w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_7-800x450.jpeg 800w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_7-1160x653.jpeg 1160w, https://datort.de/wp-content/uploads/2025/02/WLED_LED_7.jpeg 1920w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Im Dunkeln wirft das Gadget schöne Farben ab</figcaption></figure>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/led/894/8x8er-wled-rgb-lichtillumination/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Meshtastic – Dezentrale Kommunikation mit großer Reichweite</title>
		<link>https://datort.de/youtube/878/meshtastic-dezentrale-kommunikation-mit-grosser-reichweite/</link>
					<comments>https://datort.de/youtube/878/meshtastic-dezentrale-kommunikation-mit-grosser-reichweite/#respond</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Tue, 14 Jan 2025 18:18:37 +0000</pubDate>
				<category><![CDATA[Youtube]]></category>
		<category><![CDATA[433MHz Funk]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<category><![CDATA[Meshtastic]]></category>
		<guid isPermaLink="false">https://datort.de/?p=878</guid>

					<description><![CDATA[Meshtastic ist ein Open-Source-Projekt, das die Möglichkeit bietet, dezentrale Funknetzwerke aufzubauen – und das mit kostengünstiger IoT-Hardware wie&#8230;]]></description>
										<content:encoded><![CDATA[
<p>Meshtastic ist ein Open-Source-Projekt, das die Möglichkeit bietet, dezentrale Funknetzwerke aufzubauen – und das mit kostengünstiger IoT-Hardware wie ESP32-Boards. Die Kommunikation erfolgt abseits der üblichen Mobilfunknetze und nutzt stattdessen Frequenzen im Bereich von 433 MHz oder 868 MHz, die in Deutschland frei verwendet werden können. Dies eröffnet zahlreiche Anwendungsmöglichkeiten, sei es für private Chats, Sensordaten oder spezielle Szenarien, in denen herkömmliche Netze nicht verfügbar sind.</p>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/youtube/878/meshtastic-dezentrale-kommunikation-mit-grosser-reichweite/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2FOqtTJi4DMG4%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Das Projekt basiert auf der LoRa-Technologie (Long Range), die speziell für die Übertragung kurzer Nachrichten bei minimalem Energieverbrauch über große Distanzen entwickelt wurde. Wie der Name &#8222;Meshtastic&#8220; schon andeutet, wird dabei ein sogenanntes Mesh-Netzwerk aufgebaut. In diesem schließen sich die Teilnehmer automatisch zusammen, um Datenpakete weiterzuleiten. Dies ermöglicht eine deutliche Erweiterung der Reichweite – vorausgesetzt, in der Umgebung sind ausreichend viele Nutzer aktiv.</p>



<p>Praktische Einsatzmöglichkeiten gibt es viele: Von der Überwachung der Garage, über das Übermitteln von Wetterdaten, bis hin zur Benachrichtigung, wenn die Waschmaschine fertig ist. Unter optimalen Bedingungen wurden sogar Reichweiten von bis zu 331 Kilometern erzielt, in städtischen Gebieten ist da mit &#8222;etwas&#8220; weniger zu rechnen.</p>



<p>In meinem aktuellen Video teste ich die Reichweite von Meshtastic unter verschiedenen Bedingungen und Standorten. Dabei nutze ich ein einfaches Setup mit günstigen Komponenten, um zu sehen, was unter realistischen Bedingungen möglich ist. Das Ergebnis und weitere Eindrücke findet ihr im Video. Schaut gerne vorbei, um mehr über Meshtastic zu erfahren und einen Blick auf die Testergebnisse zu werfen!</p>



<h2 id="telegram-proxy" class="cnvs-block-section-heading cnvs-block-section-heading-1738423427579 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Telegram Proxy</span>
	</span>
</h2>



<p>Für den Test habe ich mir ein kleines Script geschrieben, welches die API des Meshtastic Webinterfaces nutzt. Empfangene Nachrichten werden von folgendem Script abgerufen und dann an meinen Telegram-Bot weitergeleitet. Somit kann ich direkt sehen, ob eine Nachricht empfangen wurde oder nicht. Falls Interesse besteht mit dem Script zu experimentieren, hier ist es: </p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: python; title: ; notranslate">
import requests
import time
from meshtastic import mesh_pb2  # Meshtastic Protobuf-Dateien nutzen

# Meshtastic HTTP-API-Konfiguration
MESHTASTIC_IP = &quot;192.168.178.98&quot;  # IP-Adresse des Meshtastic-Geräts
FROM_RADIO_URL = f&quot;http://{MESHTASTIC_IP}/api/v1/fromradio&quot;
SEND_URL = f&quot;http://{MESHTASTIC_IP}/api/v1/send&quot;

# Telegram-Konfiguration
BOT_TOKEN = &quot;abc...&quot; # Telegram-Bot Token
CHAT_ID = &quot;123...&quot;   # Telegram Chat ID
TELEGRAM_URL = f&quot;https://api.telegram.org/bot{BOT_TOKEN}/sendMessage&quot;

# Funktion: Nachricht an Telegram senden
def send_to_telegram(message):
    try:
        response = requests.post(
            TELEGRAM_URL, data={&quot;chat_id&quot;: CHAT_ID, &quot;text&quot;: message}
        )
        if response.status_code == 200:
            print(&quot;Nachricht erfolgreich an Telegram gesendet!&quot;)
        else:
            print(f&quot;Fehler beim Senden an Telegram: {response.status_code}, {response.text}&quot;)
    except Exception as e:
        print(f&quot;Telegram-Fehler: {e}&quot;)

# Funktion: Nachrichten von Meshtastic abrufen (Protobuf-Format)
def get_messages():
    try:
        response = requests.get(FROM_RADIO_URL, stream=True)
        if response.status_code == 200:
            for raw_message in response.iter_content(chunk_size=None):
                if raw_message:
                    process_protobuf_message(raw_message)
        else:
            print(f&quot;Fehler beim Abrufen von Nachrichten: {response.status_code}, {response.text}&quot;)
    except Exception as e:
        print(f&quot;Fehler beim Abrufen der Nachrichten: {e}&quot;)

# Funktion: Protobuf-Nachricht verarbeiten
def process_protobuf_message(raw_message):
    try:
        # Protobuf-Daten dekodieren
        message = mesh_pb2.FromRadio()
        message.ParseFromString(raw_message)
        print(message)

        # Nur Textnachrichten verarbeiten
        if message.packet.decoded.payload.decode(&quot;utf-8&quot;) and message.packet.decoded.portnum == 1:
            text_message = message.packet.decoded.payload.decode(&quot;utf-8&quot;)
            rx_rssi = message.packet.rx_rssi
            #sender_id = message.packet&#x5B;&quot;from&quot;]

            # Nachricht an Telegram weiterleiten
            print(f&quot;Neue Nachricht: {text_message}&quot;)
            send_to_telegram(f&quot;Received: {text_message} (RX RSSI: {rx_rssi} dBm)&quot;)

            # ACK-Nachricht zurücksenden
            #send_ack(sender_id, text_message)
    except Exception as e:
        print(f&quot;Fehler beim Verarbeiten der Protobuf-Nachricht: {e}&quot;)

# Funktion: ACK-Nachricht über HTTP-API senden
def send_ack(destination_id, original_message):
    ack_message = f&quot;ack: {original_message}&quot;
    try:
        response = requests.post(
            SEND_URL,
            json={&quot;destinationId&quot;: destination_id, &quot;text&quot;: ack_message}
        )
        if response.status_code == 200:
            print(f&quot;ACK gesendet an {destination_id}: {ack_message}&quot;)
        else:
            print(f&quot;Fehler beim Senden der ACK: {response.status_code}, {response.text}&quot;)
    except Exception as e:
        print(f&quot;Fehler beim Senden der ACK: {e}&quot;)

# Hauptschleife
try:
    print(&quot;Starte Abfrage... (Drücke STRG+C zum Beenden)&quot;)
    while True:
        get_messages()
        time.sleep(1)  # CPU-Schonzeit
except KeyboardInterrupt:
    print(&quot;Beendet.&quot;)
</pre></div>


<p>Man muss sich zunächst selbst einen Telegram-Bot einrichten, um die Nachrichten dann später abzusetzen. Dazu müssen dann die ID des Bots sowie eine Chat-ID hinterlegt werden. </p>
]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/youtube/878/meshtastic-dezentrale-kommunikation-mit-grosser-reichweite/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Kamera Slider für das Mobiltelefon im Eigenbau</title>
		<link>https://datort.de/youtube/717/kamera-slider-fuer-das-mobiltelefon-im-eigenbau/</link>
					<comments>https://datort.de/youtube/717/kamera-slider-fuer-das-mobiltelefon-im-eigenbau/#comments</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Sun, 06 Oct 2024 11:40:14 +0000</pubDate>
				<category><![CDATA[Selbstgebaut]]></category>
		<category><![CDATA[Youtube]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<category><![CDATA[esp32]]></category>
		<guid isPermaLink="false">https://datort.de/?p=717</guid>

					<description><![CDATA[Wer sich mit dem Erstellen von Videos beispielsweise für Social Media auseinandersetzt, der oder die merkt schnell, dass&#8230;]]></description>
										<content:encoded><![CDATA[
<h2 id="vorwort" class="cnvs-block-section-heading cnvs-block-section-heading-1727870174455 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Vorwort</span>
	</span>
</h2>



<p>Wer sich mit dem Erstellen von Videos beispielsweise für Social Media auseinandersetzt, der oder die merkt schnell, dass man für schöne Aufnahmen manchmal etwas Zubehör benötigt. Sei es das passende Licht, die doch etwas teurere Kamera oder ein externes Mikrofon. Ähnlich ist es, wenn man gleichmäßige Kamerafahrten machen möchte. Da gibt es zum Beispiel Gimbal, die unrunde Bewegungen ausgleichen können. Um meine Projekte in Szene zu setzen, benötigte ich in der Vergangenheit aber häufig eher langsame und gleichmäßige Fahrten von links nach rechts oder vice versa. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="768" src="https://datort.de/wp-content/uploads/2024/10/IMG_8707-1024x768.jpeg" alt="" class="wp-image-784" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8707-1024x768.jpeg 1024w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-300x225.jpeg 300w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-768x576.jpeg 768w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-1536x1152.jpeg 1536w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-2048x1536.jpeg 2048w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-200x150.jpeg 200w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-260x195.jpeg 260w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-380x285.jpeg 380w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-800x600.jpeg 800w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-1160x870.jpeg 1160w, https://datort.de/wp-content/uploads/2024/10/IMG_8707-scaled.jpeg 2560w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Der fertige Kamera Slider mit Handyhalterung aufgebaut auf einem Stativ</figcaption></figure>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/youtube/717/kamera-slider-fuer-das-mobiltelefon-im-eigenbau/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2FgvigFvElJ6o%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Somit war die Idee für einen Kamera Slider geboren. Zugegeben: Sonderlich kreativ ist das nicht, gibt es im Netz doch bereits einige solcher Projekte. Aber da ich etwas auf dem Weg lernen wollte und die anderen Projekte alle eine gewisse Komplexität mit sich bringen, habe ich bei 0 angefangen. Eine Erkenntnis vorab: Viel weniger Komplex ist mein Projekt leider auch nicht geworden. Deshalb, solltest du den Slider nachbauen wollen, bedenke folgendes: </p>



<p>Das bekommst du: </p>



<ul class="wp-block-list">
<li>Alle 3D-Dateien, um den gezeigten Slider nachzubauen</li>



<li>Infos zu allen von mir verwendeten Teilen</li>



<li>Einen Schaltplan, wie alles zu verkabeln ist</li>



<li>Zahlreiche Bilder in dem Beitrag hier, die zeigen wie ich alles zusammengesetzt habe</li>



<li>Mit etwas Ehrgeiz am Ende einen Slider, der insbesondere bei langsamen Fahrten schöne und ruckelfreie Videos ermöglicht</li>
</ul>



<p>Aber das solltest du mitbringen:</p>



<ul class="wp-block-list">
<li>Einen 3D-Drucker und Filament</li>



<li>Etwas Elektronikerfahrung, damit verbunden Lötkolben und was man halt so braucht</li>



<li>Und vermutlich muss man hier und da ein bisschen mitdenken und: Ich bin Hobbybastler, da ist also vermutlich hier und da Optimierungspotential</li>
</ul>



<p>Wenn das passt: Viel Erfolg! Wenn nicht: Vielleicht kannst Du dir aus den Infos ja dennoch ein paar Informationen für dein eigenes Projekt rausziehen. Vielleicht willst Du ja auch etwas ganz anderes bauen. </p>



<h2 id="teileliste" class="cnvs-block-section-heading cnvs-block-section-heading-1727870261296 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Teileliste</span>
	</span>
</h2>



<p>Für den Druck habe ich beliebiges PLA-Filament verwendet. Nehmt einfach das, mit dem ihr am besten klarkommt. In meinem Fall hatte ich da keine besonderen Anforderungen dran. </p>



<p><strong>Elektronikkomponenten</strong></p>



<ul class="wp-block-list">
<li>ESP32 Wroom 32D</li>



<li>ST7735 1.77&#8243; TFT-Display</li>



<li>KY-040 Rotary Encoder</li>



<li>Nema 17 Schrittmotor</li>



<li>TMC2208 V1.2 Schrittmotor-Treiber</li>



<li>4.7k Widerstände</li>



<li>100 μF Kondensator</li>



<li>Sperrdiode (optional aber empfohlen, siehe Hinweistexte bei &#8222;<em>Die Schaltung</em>&#8222;)</li>



<li>2 Mikroschalter (Endschalter mit Rollenhebel)</li>



<li>Buck-Konverter um 12V auf 5V zu bekommen</li>



<li>Custom-PCB (siehe ebenfalls Abschnitt &#8222;<em>Die Schaltung</em>&#8222;)</li>
</ul>



<p><strong>Weitere Teile</strong></p>



<ul class="wp-block-list">
<li>M3 &amp; M5-Schrauben unterschiedlicher Länge</li>



<li>M3 &amp; M5 Muttern, selbstsichernd</li>



<li>Magentkonnektoren (siehe mein <a href="https://www.tiktok.com/@datort_de/video/7411248616695663904" target="_blank" rel="noreferrer noopener">Tiktok</a> dazu)</li>



<li>1/4&#8243; Zoll Kamera Befestigungsschraube</li>



<li>1/4&#8243; Zoll Mutter für Stativbefestigung</li>



<li>3D-Druckerrollen mit Kugellager</li>



<li>3D Drucker Zahnriemen Satz</li>



<li>Riemenscheibe mit 20 Zähne</li>



<li>Nutensteine M5</li>



<li>Diverse Litze</li>
</ul>



<h2 id="die-3d-teile" class="cnvs-block-section-heading cnvs-block-section-heading-1727885465550 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Die 3D-Teile</span>
	</span>
</h2>



<p>Alle Teile sind von mir selbst erstellt &#8211; bis auf den Aufsatz für den den Rotary Encoder KY-040. Da hab ich ehrlicherweise bei Thingyverse nach dem Erstbesten gesucht. Die Teile sind in einigen Fällen ohne, teilweise mit Supports zu drucken. Ich habe in der Regel ein Infill von 60% verwendet. Ich denke es geht auch weniger. </p>



<p>Ihr findet sämtliche der folgenden 3D-Designs in dieser ZIP-Datei zum Download: </p>



<div class="wp-block-file"><a id="wp-block-file--media-8a1b5859-135d-443a-8b50-faeee4246a52" href="https://datort.de/wp-content/uploads/2024/10/CameraSliderSTL.zip">Camera Slider STL-Dateien</a><a href="https://datort.de/wp-content/uploads/2024/10/CameraSliderSTL.zip" class="wp-block-file__button wp-element-button" download aria-describedby="wp-block-file--media-8a1b5859-135d-443a-8b50-faeee4246a52">Herunterladen</a></div>



<p><strong>Baseplate</strong></p>



<p>Das ist der der Schlitten, auf dem dann ein Mobiltelefon (in passender Halterung) monitiert werden kann. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40-1024x666.png" alt="" class="wp-image-724" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.40.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Hülse</strong></p>



<p>Hiervon braucht es 4 Stück. Sie dienen als Abstandshalter zwischen Baseplate und den Rollen. Die Schrauben werden durchgeführt, die Rollen von unten aufgeschoben und dann wird alles mit einer selbstsichernden Mutter festgezogen.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50-1024x666.png" alt="" class="wp-image-725" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.14.50.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Schraube</strong></p>



<p>Diese übergroße Schraube dient dazu, den Riemenspanner auf Spannung zu halten.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03-1024x666.png" alt="" class="wp-image-726" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.03.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Stepper Holder</strong></p>



<p>Wird ans eine Ende des Steppers gebaut und mit 2 Schrauben festgezurrt. Wenn das Aluprofil kein Gewinde hat, muss dieses erst noch geschnitten werden. Auf der einen Seite kann dann der Nema 17 befestigt werden, auf der anderen Seite sind 2 Löcher um einen der Mikroschalter zu befestigen.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15-1024x666.png" alt="" class="wp-image-727" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.15.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Spanner Holder</strong></p>



<p>Das Gegenstück zur Seite mit dem Motor: Hier wird die Schraube und der Spanner eingesetzt, sowie der Pulley. Außerdem befinden sich erneut 2 Löcher an der Seite zur Befestigung des 2. Mikroschalters. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23-1024x666.png" alt="" class="wp-image-728" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.23.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Pulley</strong></p>



<p>Die Rolle über die der Riemen auf der Seite mit dem Spanner geführt wird.</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37-1024x666.png" alt="" class="wp-image-729" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.37.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Stativ Mount</strong></p>



<p>Hiermit kann das Aluprofil zusammen mit 4 Nutsteinen und den passenden Schrauben auf einem normalen Stativ befestigt werden. Dazu wird noch eine 1/4&#8243; Mutter benötigt, die einfach mittig in das 3D-Teil eingelegt wird. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45-1024x666.png" alt="" class="wp-image-730" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.15.45.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Spanner</strong></p>



<p>Dient als Halterung um den Riemen auf Spannung zu halten: Am einen Ende wird die Schraube eingeführt, durch die die Spannung aufgebaut werden kann. Die beiden Arme halten den Pulley, der mit einer Schraube und selbstsichernder Mutter festgehalten wird. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42-1024x666.png" alt="" class="wp-image-731" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.42.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Bottom Case</strong></p>



<p>Da der Motor 12V Spannung benötigt verwende ich ein 12V-Netzzeil. Ein Buck-Konverter macht daraus 5V für das ESP32-Board. Um Platz zu sparen, habe ich mich für diese Plugin-Lösung entschieden. Der Buck-Konverter wird hier eingelegt und dann unter das Control Unit-Case geklippt. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53-1024x666.png" alt="" class="wp-image-732" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.16.53.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Control Unit Case</strong></p>



<p>Das Gehäuse bietet ein sicheres Zuhause für das Custom PCB. Außerdem kann es von unten mit 4 Nutsteinen samt schrauben von unten am Aluprofil befestigt werden. Oben befindet sich eine Öffnung um die Kabel raus- bzw. reinzuführen. Auf der Hinterseite befinden sich Öffnungen für 2 Magentkontakte, über die die Mikroschalter angeschlossen werden. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14-1024x666.png" alt="" class="wp-image-733" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.17.14.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Plug lower</strong></p>



<p>Um den Magnetschaltern ein Zuhause zu geben, habe ich dieses Gehäuse entworfen: Unterseite</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41-1024x666.png" alt="" class="wp-image-735" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.41.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Plug upper</strong></p>



<p>Um den Magnetschaltern ein Zuhause zu geben, habe ich dieses Gehäuse entworfen: Oberseite</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49-1024x666.png" alt="" class="wp-image-736" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.22.49.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p><strong>Cover</strong></p>



<p>Die Abdeckung für die Steuereinheit. Hat Aussparungen für Display, Rotary Encoder, Kühlkörper und Motoransteuerung. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="666" src="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15-1024x666.png" alt="" class="wp-image-734" srcset="https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15-1024x666.png 1024w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15-300x195.png 300w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15-768x499.png 768w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15-1536x999.png 1536w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15-2048x1332.png 2048w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15-380x247.png 380w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15-800x520.png 800w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15-1160x754.png 1160w, https://datort.de/wp-content/uploads/2024/10/Bildschirmfoto-2024-10-02-um-18.18.15.png 3248w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h2 id="die-schaltung" class="cnvs-block-section-heading cnvs-block-section-heading-1728210425595 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Die Schaltung</span>
	</span>
</h2>



<p>Im Video hab ich es erwähnt: Ich bin immer wieder fasziniert davon, wie günstig man heute qualitativ hochwertige, selbst erstellte PCBs bestellen kann. Wenn ihr selbiges tun möchtet, biete ich euch hier gerne das Gerber-File ein, mit dem ich beim Hersteller eurer Wahl bestellen könnt. Für alle, die lieber selbst die einzelnen Komponenten verlöten möchten (so viele sind es ja am Ende nicht) haue ich hier aber auch einen Schaltplan rein. </p>



<p><strong>Beachtet: Wenn ihr die Schaltung nachbaut, macht ihr das auf eigene Gefahr!</strong><br>Lest bitte auch folgende Hinweise!</p>



<p><strong>Hinweis: </strong>Anders als im Schaltplan angegeben, habe ich noch eine Sperrdiode zwischen die 5V (im Schaltplan U10) und den daran angeschlossenen Buck-Converter gesetzt um sicher zu sein, dass die 5V auch nur in Richtung des ESP32-Boards fließen. Ohne die kann es sein, dass der Strom über das ESP32-Board zurück in Richtung Stepper-Treiber fließt und das Board oder die dahinter befindliche Stromquelle überlastet!</p>



<p><strong>Hinweis 2: </strong>Das ganze ist ein Hobby für mich, ich hab den Kram nicht gelernt. An der Schaltung kann mit Sicherheit einiges optimiert werden. Ich kann nicht garantieren, dass das alles sicher umgesetzt ist. Ich bin für konstruktives Feedback offen und erinnere: Wenn ihr das nachbaut, macht ihr das auf eigene Gefahr!</p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="724" src="https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06-1024x724.png" alt="" class="wp-image-743" srcset="https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06-1024x724.png 1024w, https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06-300x212.png 300w, https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06-768x543.png 768w, https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06-1536x1087.png 1536w, https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06-2048x1449.png 2048w, https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06-380x269.png 380w, https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06-800x566.png 800w, https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06-1160x821.png 1160w, https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06.png 2338w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<div class="wp-block-file"><a id="wp-block-file--media-9dd0c655-1bce-4c03-a8ca-1ee4104c9e16" href="https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06.pdf">Schaltplan als PDF herunterladen</a><a href="https://datort.de/wp-content/uploads/2024/10/Schematic_CameraSlider_2024-10-06.pdf" class="wp-block-file__button wp-element-button" download aria-describedby="wp-block-file--media-9dd0c655-1bce-4c03-a8ca-1ee4104c9e16">Herunterladen</a></div>



<h2 id="die-software" class="cnvs-block-section-heading cnvs-block-section-heading-1728212358002 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Die Software</span>
	</span>
</h2>



<p>Bei dem Projekt handelt es sich um ein Arduino-Projekt welches mit PlatformIO entwickelt wurde. Entsprechend sind die verwendeten Bibliotheken in der Konfiguration des Projekts enthalten. Ihr könnt euch das Projekt von meinem Github-Account ziehen, lokal mit PlatformIO bauen und auf das ESP32-Board flashen. Ein fertiger Build, wie ich das bei anderen Projekten teils anbiete, existiert hier leider bisher nicht. </p>



<div class="wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex">
<div class="wp-block-button"><a class="wp-block-button__link wp-element-button" href="https://github.com/datort/camera-slider" target="_blank" rel="noreferrer noopener">Camera Slider Software @Github</a></div>
</div>



<h2 id="bilder-im-detail" class="cnvs-block-section-heading cnvs-block-section-heading-1728225364022 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Bilder: Im Detail</span>
	</span>
</h2>



<p>Bilder sagen oft mehr als tausend Worte. Insbesondere wenn man ein etwas umfangreicheres Projekt wie dieses vor der Brust hat und keine Step-by-Step-Anleitung geliefert bekommt. Deshalb habe ich den Slider an allen Ecken einmal im Detail abfotografiert. </p>


<div class="cnvs-block-justified-gallery cnvs-block-justified-gallery-1728226010496" >
<div
	class='gallery cnvs-gallery-type-justified'
	data-jg-margins="10"
	data-jg-border="-10"
	data-jg-row-height="150"
	data-jg-max-row-height="-1"
	data-jg-last-row="nojustify"
	data-jg-captions="false"
	data-jg-randomize="false"
>
			<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8716-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8716-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8716-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8716-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8716-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8717-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8717-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8717-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8717-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8717-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8718-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8718-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8718-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8718-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8718-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8719-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8719-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8719-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8719-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8719-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8720-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8720-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8720-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8720-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8720-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8721-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8721-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8721-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8721-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8721-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8722-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8722-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8722-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8722-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8722-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8723-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8723-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8723-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8723-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8723-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8724-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8724-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8724-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8724-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8724-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8725-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8725-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8725-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8725-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8725-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8726-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8726-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8726-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8726-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8726-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8728-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8728-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8728-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8728-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8728-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8729-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8729-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8729-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8729-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8729-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8730-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8730-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8730-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8730-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8730-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8731-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8731-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8731-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8731-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8731-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
				<figure class="gallery-item">
							<a href="https://datort.de/wp-content/uploads/2024/10/IMG_8732-scaled.jpeg">
			
			<img loading="lazy" decoding="async" width="150" height="150" src="https://datort.de/wp-content/uploads/2024/10/IMG_8732-150x150.jpeg" class="attachment-thumbnail size-thumbnail" alt="" srcset="https://datort.de/wp-content/uploads/2024/10/IMG_8732-150x150.jpeg 150w, https://datort.de/wp-content/uploads/2024/10/IMG_8732-80x80.jpeg 80w, https://datort.de/wp-content/uploads/2024/10/IMG_8732-110x110.jpeg 110w" sizes="auto, (max-width: 150px) 100vw, 150px" />
							</a>
			
					</figure>
		</div>

</div>


<h2 id="fazit" class="cnvs-block-section-heading cnvs-block-section-heading-1728212688915 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Fazit</span>
	</span>
</h2>



<p>Ihr merkt, das Ganze ist kein 08/15-Projekt welches man mal eben schnell nachbaut. Ihr benötigt so einiges an Komponenten, einen 3D-Drucker und etwas Geduld und Hirnschmalz beim Zusammenbauen. Um ehrlich zu sein: Ich war mir anfangs unsicher, ob ich überhaupt ein Video oder diesen Blogbeitrag zu dem Kamera Slider schreiben will. Habe mich dann aber doch dafür entschieden. Denn vielleicht kann sich der Eine oder die Andere bei der Verwirklichung des eigenen Projekts irgendwas abschauen. Und dann wär es doch bereits ein Erfolg. In dem Sinne, danke für&#8217;s Lesen, viel Spaß und vielleicht sieht und ließt man sich ja mal auf meinem YouTube-Kanal. </p>
]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/youtube/717/kamera-slider-fuer-das-mobiltelefon-im-eigenbau/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>EchoTrack: DIY Ping-Check &#038; LED RGB-Effekt-Uhr</title>
		<link>https://datort.de/selbstgebaut/696/echotrack-diy-ping-check-amp-led-rgb-effekt-uhr/</link>
					<comments>https://datort.de/selbstgebaut/696/echotrack-diy-ping-check-amp-led-rgb-effekt-uhr/#comments</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Fri, 21 Jun 2024 18:06:10 +0000</pubDate>
				<category><![CDATA[Selbstgebaut]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<category><![CDATA[ESP8266]]></category>
		<category><![CDATA[maker]]></category>
		<guid isPermaLink="false">https://datort.de/?p=696</guid>

					<description><![CDATA[Zockt ihr ab und an Spiele online, bei denen es auf schnelle Reaktionen und einen guten Ping ankommt,&#8230;]]></description>
										<content:encoded><![CDATA[
<p>Zockt ihr ab und an Spiele online, bei denen es auf schnelle Reaktionen und einen guten Ping ankommt, ihr euch eure Leitung aber mit anderen in der Familie teilen müsst, kennt ihr vielleicht das Problem: Jemand anders schmeißt einen Videostream an, einen Download oder gleich alles zusammen und plötzlich geht der Ping in die Höhe. Manchmal nur kurz, manchmal auch von längerer Dauer. Hier kann euch mein aktuelles Bastelprojekt unterstützen.</p>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/selbstgebaut/696/echotrack-diy-ping-check-amp-led-rgb-effekt-uhr/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2FjuFKVcngFrU%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Getauft auf den Namen &#8222;EchoTrack&#8220; prüft dieses kleine und bunte Gadget kontinuierlich eure Internetverbindung, in dem es einen von euch definierten Host vier Mal pingt und euch danach den errechneten Mittelwert daraus anzeigt. Neben dem Host der angepingt werden soll könnt ihr zudem 2 Warnstufen definieren. Werden diese überschritten, so blinkt das Tool hektisch in orange oder rot um euch sofort zu informieren, dass der aktuelle Hinterhalt in Fortnite, Tarkov, Quake 3 Arena oder was ihr auch immer gerade zockt vielleicht nach hinten losgehen könnte &#8211; und es dann nicht (nur) am Skill gelegen hat.</p>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1024" height="576" src="https://datort.de/wp-content/uploads/2024/06/IMG_7678.jpeg" alt="" class="wp-image-699" srcset="https://datort.de/wp-content/uploads/2024/06/IMG_7678.jpeg 1024w, https://datort.de/wp-content/uploads/2024/06/IMG_7678-300x169.jpeg 300w, https://datort.de/wp-content/uploads/2024/06/IMG_7678-768x432.jpeg 768w, https://datort.de/wp-content/uploads/2024/06/IMG_7678-380x214.jpeg 380w, https://datort.de/wp-content/uploads/2024/06/IMG_7678-800x450.jpeg 800w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /><figcaption class="wp-element-caption">Der EchoTrack im Einsatz: Bei einem 14er Ping ist mit meiner Konfiguration noch alles im grünen Bereich</figcaption></figure>



<h2 id="schaltplan" class="cnvs-block-section-heading cnvs-block-section-heading-1717532348416 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Schaltplan</span>
	</span>
</h2>



<p>Um die Verkabelung ein bisschen transparenter zu machen, habe ich folgendes Schema für euch zusammengebastelt. Doc Brown würde sagen &#8222;mir fehlte die Zeit, es ist nicht ganz Maßstabsgetreu&#8220;: Statt einer 4-Digit-Anzeige verwendet natürlich wie im Video eine 6-Digit-Anzeige. Ich hab in meinem Tool einfach nicht die passende gefunden, die Anschlüsse sind aber natürlich die gleichen. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="635" src="https://datort.de/wp-content/uploads/2024/06/EchoTrack_Schematics-1024x635.png" alt="" class="wp-image-703" srcset="https://datort.de/wp-content/uploads/2024/06/EchoTrack_Schematics-1024x635.png 1024w, https://datort.de/wp-content/uploads/2024/06/EchoTrack_Schematics-300x186.png 300w, https://datort.de/wp-content/uploads/2024/06/EchoTrack_Schematics-768x476.png 768w, https://datort.de/wp-content/uploads/2024/06/EchoTrack_Schematics-380x236.png 380w, https://datort.de/wp-content/uploads/2024/06/EchoTrack_Schematics-800x496.png 800w, https://datort.de/wp-content/uploads/2024/06/EchoTrack_Schematics-1160x719.png 1160w, https://datort.de/wp-content/uploads/2024/06/EchoTrack_Schematics.png 1464w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h2 id="die-teileliste" class="cnvs-block-section-heading cnvs-block-section-heading-1717447165021 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Die Teileliste</span>
	</span>
</h2>



<p>Wie auch bei den letzten Projekten, ist das hier auch recht günstig und mit wenigen Teilen zu realisieren. Wenn ihr das Gehäuse auch so drucken wollt, braucht ihr natürlich einen 3D-Drucker. Die Dateien dazu findet ihr weiter unten. </p>



<ul class="wp-block-list">
<li>6-Stellen 7-Segment-Anzeige (z.B. bei eBay, Suche nach &#8222;TM1637 6-stellig 7-Segment&#8220;)</li>



<li>D1 Mini ESP-Board (z.B. im Makershop oder bei Aliexpress noch günstiger)</li>



<li>5V WS2812b LED-Streifen (z.B. bei Amazon, achtet darauf dass die LEDs nah beieinander sind und der Streifen mit 5 Volt betrieben wird)</li>



<li>Kapazitiver Touch-Sensor (sucht nach &#8222;TTP223&#8220;)</li>



<li>PLA nach eurer Wahl, natürlich ist weißes oder durchsichtiges für die Rückseite von Vorteil</li>



<li>Kabel/Litze und natürlich das passende Werkzeug wie Lötkolben oder Abisolierzange </li>
</ul>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="1024" height="768" src="https://datort.de/wp-content/uploads/2024/06/IMG_7633.jpg" alt="" class="wp-image-706" srcset="https://datort.de/wp-content/uploads/2024/06/IMG_7633.jpg 1024w, https://datort.de/wp-content/uploads/2024/06/IMG_7633-300x225.jpg 300w, https://datort.de/wp-content/uploads/2024/06/IMG_7633-768x576.jpg 768w, https://datort.de/wp-content/uploads/2024/06/IMG_7633-200x150.jpg 200w, https://datort.de/wp-content/uploads/2024/06/IMG_7633-260x195.jpg 260w, https://datort.de/wp-content/uploads/2024/06/IMG_7633-380x285.jpg 380w, https://datort.de/wp-content/uploads/2024/06/IMG_7633-800x600.jpg 800w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<h2 id="die-software" class="cnvs-block-section-heading cnvs-block-section-heading-1717447841318 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>Die Software</span>
	</span>
</h2>



<p>Damit aus Hardware mehr als nur ein Klumpen Einzelteile wird benötigt es natürlich auch die passende Software. Im Fall von EchoTrack habe ich die selbst geschrieben und dazu zum ersten Mal mit den Webtools von ESPHome experimentiert. Das ermöglicht eine &#8211; sofern ich alles richtig gemacht habe &#8211; einfache Installation über euren Browser. Vorausgesetzt ihr seid mit Chrome, Microsoft Edge oder Opera unterwegs. Wenn dem ist, findet ihr unter <a href="https://esp.datort.de" target="_blank" rel="noreferrer noopener">https://esp.datort.de</a> den Installer. Wie das genau funktioniert, könnt ihr euch natürlich auch nochmal in meinem kleinen YouTube-Werk anschauen. </p>



<p>Der Installer funktioniert aktuell nur mit ESP-Boards mit 8266er-Chipsatz. Wenn ihr ein anderes Board verwenden möchtet, nutzt gerne den Quellcode aus meinem <a href="https://github.com/datort/echotrack" target="_blank" rel="noreferrer noopener">Github-Repository</a> und erstellt euch einen eigenen Build.</p>



<h2 id="3d-dateien" class="cnvs-block-section-heading cnvs-block-section-heading-1717448104958 is-style-cnvs-block-section-heading-11 halignleft" >
	<span class="cnvs-section-title">
		<span>3D-Dateien</span>
	</span>
</h2>



<p>Wie häufig bei diesen Projekten stelle ich die 3D-Dateien als STL wieder zum Download bereit. Ihr könnt die gerne modifizieren und für eigene Kreationen nutzen, wie es euch beliebt. Gedruckt habe ich in meinem Fall mit Cura. Bei den Einstellungen habe ich das Profile &#8222;Dynamic Quality &#8211; 0.16mm&#8220; verwendet. Das Infill habe ich auf 100% gestellt. Supports sind nicht nötig, wenn ihr die Objekte so dreht, dass das &#8222;Front&#8220;-Modell nach mit der Vorderseite nach unten zeigt. Die Rückseite sollte ebenfalls auf dem Rücken liegen, dann passte das bei mir. </p>



<div class="wp-block-file"><a id="wp-block-file--media-094e3478-326d-4cef-a078-50337b89285c" href="https://datort.de/wp-content/uploads/2024/06/EchoTrack.zip">EchoTrack 3D-Dateien (STL)</a><a href="https://datort.de/wp-content/uploads/2024/06/EchoTrack.zip" class="wp-block-file__button wp-element-button" download aria-describedby="wp-block-file--media-094e3478-326d-4cef-a078-50337b89285c">Herunterladen</a></div>



<p>Wie genau der Zusammenbau lief und wie das ganze in Aktion aussieht, könnt ihr gerne dem Video entnehmen. Viel Spaß!</p>
]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/selbstgebaut/696/echotrack-diy-ping-check-amp-led-rgb-effekt-uhr/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
		<item>
		<title>DHT22 v BME280 v DS18B20 &#8211; Der Vergleich</title>
		<link>https://datort.de/vergleiche-tests/512/dht22-v-bme280-v-ds18b20-der-vergleich/</link>
					<comments>https://datort.de/vergleiche-tests/512/dht22-v-bme280-v-ds18b20-der-vergleich/#respond</comments>
		
		<dc:creator><![CDATA[datort]]></dc:creator>
		<pubDate>Fri, 03 Nov 2023 10:18:25 +0000</pubDate>
				<category><![CDATA[Featured]]></category>
		<category><![CDATA[Raspberry & Arduino]]></category>
		<category><![CDATA[Sensorkunde]]></category>
		<category><![CDATA[Vergleiche & Tests]]></category>
		<category><![CDATA[Youtube]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[BME280]]></category>
		<category><![CDATA[DHT22]]></category>
		<category><![CDATA[DIY]]></category>
		<category><![CDATA[DS18B29]]></category>
		<category><![CDATA[Elektrotechnik]]></category>
		<guid isPermaLink="false">https://datort.de/?p=512</guid>

					<description><![CDATA[Es ist noch nicht lange her, da habe ich mir hier DHT22-Temperatursensoren genauer angeschaut und 5 Sensoren gleichen&#8230;]]></description>
										<content:encoded><![CDATA[
<p>Es ist noch nicht lange her, da habe ich mir hier <a href="https://datort.de/raspberry-arduino/395/dht-22-temperatursensoren-im-test/" data-type="post" data-id="395">DHT22-Temperatursensoren genauer angeschaut</a> und 5 Sensoren gleichen Bautyps und ähnlichen Alters miteinander verglichen. Die Ergebnisse waren so mittel, aber lest den Artikel gerne selbst wenn euch das interessiert. </p>


<figure class="wp-block-embed-youtube wp-block-embed is-type-video is-provider-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><a href="https://datort.de/vergleiche-tests/512/dht22-v-bme280-v-ds18b20-der-vergleich/"><img decoding="async" src="https://datort.de/wp-content/plugins/wp-youtube-lyte/lyteCache.php?origThumbUrl=%2F%2Fi.ytimg.com%2Fvi%2FiZZr21FaaMw%2Fmaxresdefault.jpg" alt="YouTube Video"></a><br /><br /><figcaption></figcaption></figure>


<p>Damals hatte ich sowohl auf <a href="https://mastodon.social/@datort" data-type="link" data-id="https://mastodon.social/@datort" target="_blank" rel="noreferrer noopener">Mastodon</a> als auch unter dem Video den Tipp erhalten, mir mal den BME280 oder den DS18B20 anzuschauen. Diese Sensoren seien deutlich besser als der DHT22. Gesagt getan: Den BME280 gab es für ca. 6 Euro im 5er Pack aus Fernost, den DS18B20 habe ich für so ziemlich denselben Preis bei einem deutschen Händler bestellt. </p>



<p>Alle drei Sensoren sind im Detail ein bisschen anders. So ist der DHT22 der Klassiker, er ist nicht ganz schmal, sehr gut mit Bibliotheken für Android oder ESP-Boards unterstützt und liefert neben der Temperatur auch die relative Luftfeuchte. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="682" src="https://datort.de/wp-content/uploads/2023/10/IMG_5117-1024x682.jpg" alt="" class="wp-image-516" srcset="https://datort.de/wp-content/uploads/2023/10/IMG_5117-1024x682.jpg 1024w, https://datort.de/wp-content/uploads/2023/10/IMG_5117-300x200.jpg 300w, https://datort.de/wp-content/uploads/2023/10/IMG_5117-768x511.jpg 768w, https://datort.de/wp-content/uploads/2023/10/IMG_5117-1536x1022.jpg 1536w, https://datort.de/wp-content/uploads/2023/10/IMG_5117-380x253.jpg 380w, https://datort.de/wp-content/uploads/2023/10/IMG_5117-800x533.jpg 800w, https://datort.de/wp-content/uploads/2023/10/IMG_5117-1160x772.jpg 1160w, https://datort.de/wp-content/uploads/2023/10/IMG_5117.jpg 1600w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Der BME280 ist, nimmt man nur den Sensor für sich, sehr klein. Er wurde von Bosch entwickelt vor dem Hintergrund dort verbaut zu werden, wo wenig Energie und wenig Platz zur Verfügung steht. Neben Temperatur und relativer Feuchte kann er auch den Luftdruck ermitteln. Es gibt auch ein Modell, welches auf den Namen BMP280 hört. Dieser ist hingegen nicht in der Lage, die Luftfeuchte zu ermitteln. Auch für diese Sensoren gibt es einige gute Bibliotheken, welche die Verwendung relativ einfach machen. Allerdings muss man wissen, auf welcher Adresse der Sensor mittels I²C zu erreichen ist: In diesem Fall ist es 0x76, bei anderen 0x77. </p>



<p>Der DS18B20 ist gefühlt der Vielseitigste was seine unterschiedlichen Bauformen angeht. Neben der von mir verwendeten Variante gibt es u.a. auch in einer Wasserdichten Version. Allerdings kann er, anders als der DHT22 oder der BME280 rein die Temperatur ermitteln, nicht die Luftfeuchte. Übermittelt werden die Daten mit dem <a href="https://de.wikipedia.org/wiki/1-Wire" target="_blank" rel="noreferrer noopener">1-Wire-Protokoll</a>. Dabei handelt es sich um eine serielle Datenübertragung welche von der Firma Dallas Semiconductor entwickelt wurde. Der Name ist Programm: Es wird eben neben der Spannungsversorgung nur ein weiteres Kabel benötigt. Wobei, das stimmt nicht ganz: Für die Schaltung wird zudem ein Pull-Up-Widerstand benötigt. Sonst funktioniert das Ganze nicht. Keine große Herausforderung, wenn man es noch nie gemacht hat, sollte man sich dem Thema einmal annehmen. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="682" src="https://datort.de/wp-content/uploads/2023/10/IMG_5114-1024x682.jpg" alt="" class="wp-image-513" srcset="https://datort.de/wp-content/uploads/2023/10/IMG_5114-1024x682.jpg 1024w, https://datort.de/wp-content/uploads/2023/10/IMG_5114-300x200.jpg 300w, https://datort.de/wp-content/uploads/2023/10/IMG_5114-768x511.jpg 768w, https://datort.de/wp-content/uploads/2023/10/IMG_5114-1536x1022.jpg 1536w, https://datort.de/wp-content/uploads/2023/10/IMG_5114-380x253.jpg 380w, https://datort.de/wp-content/uploads/2023/10/IMG_5114-800x533.jpg 800w, https://datort.de/wp-content/uploads/2023/10/IMG_5114-1160x772.jpg 1160w, https://datort.de/wp-content/uploads/2023/10/IMG_5114.jpg 1600w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Für meinen Vergleich habe ich mir auf meinem Steckfeld 3 Teststrecken gebaut. Beide sind vom Aufbau identisch: Von jedem Sensor existiert pro Teststrang ein Exemplar. Angeschlossen sind sie an einen D1 Mini Clone, welcher die Daten an meine InfluxDb und damit an an ein Grafana-Dashboard sendet über das die Auswertung stattfindet. Den Code stelle ich euch gerne bereit. Auch wenn man vermutlich dieses Setup so nicht benötigt, kann man sich vielleicht für eigene Projekte etwas abschauen wenn man neu in der Materie ist: </p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: arduino; title: ; notranslate">
#include &lt;Wire.h&gt;
#include &lt;SPI.h&gt;
#include &lt;Adafruit_BME280.h&gt;
#include &lt;OneWire.h&gt;
#include &lt;DallasTemperature.h&gt;
#include &lt;ESP8266WiFi.h&gt;
#include &lt;InfluxDbClient.h&gt;
#include &quot;DHT.h&quot;
#include &quot;secrets.h&quot; // Einfache Konstanten-Sammlung für Credentials


#define ONE_WIRE_BUS 2 // GPIO PIN 2

InfluxDBClient influx(INFLUXDB_URL, INFLUXDB_ORG, INFLUXDB_BUCKET, INFLUXDB_TOKEN);
Point bmeSensor(&quot;bme_1&quot;);
Point dsSensor(&quot;ds_1&quot;);
Point dhtSensor(&quot;dht_1&quot;);


Adafruit_BME280 bme;
Adafruit_Sensor *bme_temp = bme.getTemperatureSensor();
Adafruit_Sensor *bme_humidity = bme.getHumiditySensor();

OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature ds18b20(&amp;oneWire);

DHT dht(14, DHT22); // GPIO PIN 14

void setup() {
  Serial.begin(9600);

  WiFi.mode(WIFI_STA);
  WiFi.begin(WIFI_SSID, WIFI_PASSWORD);

  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(&quot;.&quot;);
  }

  Serial.println(&quot;&quot;);
  Serial.print(&quot;Connected to &quot;);
  Serial.println(WiFi.SSID());
  Serial.print(&quot;IP address:\t&quot;);
  Serial.println(WiFi.localIP());


  
  Serial.println(F(&quot;BME280 Sensor event test&quot;));

  // Erzwinge Adresse 0x76 statt 0x77, nutzt die SCL/SDA Pins des D1 mini
  if (!bme.begin(0x76)) { 
    Serial.println(F(&quot;Could not find a valid BME280 sensor, check wiring!&quot;));
    while (1) delay(10);
  }
  
  bme_temp-&gt;printSensorDetails();
  bme_humidity-&gt;printSensorDetails();

  ds18b20.begin();

  dht.begin();

  influx.setInsecure();
}

void loop() {
  sensors_event_t temp_event, pressure_event, humidity_event;
  bme_temp-&gt;getEvent(&amp;temp_event);
  bme_humidity-&gt;getEvent(&amp;humidity_event);
  
  Serial.print(F(&quot;BME280 Temperature: &quot;));
  Serial.print(temp_event.temperature);
  Serial.println(&quot; °C&quot;);

  Serial.print(F(&quot;BME280 Humidity: &quot;));
  Serial.print(humidity_event.relative_humidity);
  Serial.println(&quot; %&quot;);

  bmeSensor.addField(&quot;temperature&quot;, temp_event.temperature);
  bmeSensor.addField(&quot;humidity&quot;, humidity_event.relative_humidity);
  if (!influx.writePoint(bmeSensor)) {
    Serial.print(&quot;InfluxDB write failed: &quot;);
    Serial.println(influx.getLastErrorMessage());
  }

  ds18b20.requestTemperatures();
  Serial.println(&quot;DS18B20 Temperature: &quot; + String(ds18b20.getTempCByIndex(0)) + &quot;°C&quot;);

  dsSensor.addField(&quot;temperature&quot;, ds18b20.getTempCByIndex(0));
  if (!influx.writePoint(dsSensor)) {
    Serial.print(&quot;InfluxDB write failed: &quot;);
    Serial.println(influx.getLastErrorMessage());
  }

  Serial.println(&quot;DHT22 Temperature: &quot; + String(dht.readTemperature()));
  Serial.println(&quot;DHT22 Humidity: &quot; + String(dht.readHumidity()));
  dhtSensor.addField(&quot;temperature&quot;, dht.readTemperature());
  dhtSensor.addField(&quot;humidity&quot;, dht.readHumidity());
  if (!influx.writePoint(dhtSensor)) {
      Serial.print(&quot;InfluxDB write failed: &quot;);
      Serial.println(influx.getLastErrorMessage());
    }

  delay(1000);
}
</pre></div>


<p>Für meinen Test habe ich das ganze Setup kurz in die &#8222;Kälte&#8220; gestellt. Das sollte dazu dienen um zu sehen wie schnell die Sensoren der Raumtemperatur annähern. Als Referenz diente ein Thermometer, was mehrere Stunden im Raum stand. Zugegeben: ist wieder nicht hochgradig wissenschaftlich, aber für die Stichprobe in meinen Augen ausreichend. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="682" src="https://datort.de/wp-content/uploads/2023/10/IMG_5128-1024x682.jpg" alt="" class="wp-image-515" srcset="https://datort.de/wp-content/uploads/2023/10/IMG_5128-1024x682.jpg 1024w, https://datort.de/wp-content/uploads/2023/10/IMG_5128-300x200.jpg 300w, https://datort.de/wp-content/uploads/2023/10/IMG_5128-768x511.jpg 768w, https://datort.de/wp-content/uploads/2023/10/IMG_5128-1536x1022.jpg 1536w, https://datort.de/wp-content/uploads/2023/10/IMG_5128-380x253.jpg 380w, https://datort.de/wp-content/uploads/2023/10/IMG_5128-800x533.jpg 800w, https://datort.de/wp-content/uploads/2023/10/IMG_5128-1160x772.jpg 1160w, https://datort.de/wp-content/uploads/2023/10/IMG_5128.jpg 1600w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Am Ende bestätigten sich eure Aussagen: Sowohl der DS18B20 als auch der BME280 sind weniger träge als der DHT22. Der DS18B20 ist bei der Disziplin das Rennpferd. Nach etwa 2-3 Minuten hatte er sich bereits bereits wieder angeglichen. Der BME280 war mit 5 Minuten unwesentlich langsamer, während der DHT22 ca. 10 Minuten brauchte. Hinzu kommt die Frage nach der Güte der Daten. Zwischen den drei DHT22 Sensoren lagen am Ende mehr als 1 Grad Unterschied. Auch hier waren beide andere Sensortypen deutlich besser mit ca. 0.2 Grad beim DS18B20 bzw. nur ca 0.1 Grad beim BME280. Der BME280 war auch der Sensor, der am nächsten am Standthermometer lag. Und das sowohl in Bezug auf die Temperatur als auch auf die relative Luftfeuchte. </p>



<figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="631" src="https://datort.de/wp-content/uploads/2023/10/Vergleichsdaten-1024x631.png" alt="" class="wp-image-519" srcset="https://datort.de/wp-content/uploads/2023/10/Vergleichsdaten-1024x631.png 1024w, https://datort.de/wp-content/uploads/2023/10/Vergleichsdaten-300x185.png 300w, https://datort.de/wp-content/uploads/2023/10/Vergleichsdaten-768x473.png 768w, https://datort.de/wp-content/uploads/2023/10/Vergleichsdaten-380x234.png 380w, https://datort.de/wp-content/uploads/2023/10/Vergleichsdaten-800x493.png 800w, https://datort.de/wp-content/uploads/2023/10/Vergleichsdaten-1160x715.png 1160w, https://datort.de/wp-content/uploads/2023/10/Vergleichsdaten.png 1487w" sizes="auto, (max-width: 1024px) 100vw, 1024px" /></figure>



<p>Somit ist das auch mein persönlicher Testsieger, wenngleich der DS18B20 unmittelbar danach kommt. Der DHT22 ist mit Sicherheit kein schlechter Sensor, aber mit dem Wissen ist seine Zeit bei mir zu Hause wohl vorbei. Ich werde ihn zeitnah gegen die BME280er tauschen.  </p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://datort.de/vergleiche-tests/512/dht22-v-bme280-v-ds18b20-der-vergleich/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
