<?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>Electronics &amp; IOT Archives - Creatronix</title>
	<atom:link href="https://creatronix.de/category/electronics/feed/" rel="self" type="application/rss+xml" />
	<link>https://creatronix.de/category/electronics/</link>
	<description>My adventures in code &#38; business</description>
	<lastBuildDate>Thu, 05 Feb 2026 09:04:34 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>
	<item>
		<title>Wie funktioniert ein Breadboard &#8211; Neues YT-Short</title>
		<link>https://creatronix.de/wie-funktioniert-ein-breadboard-neues-yt-short/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Wed, 08 Oct 2025 12:14:33 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<guid isPermaLink="false">https://creatronix.de/?p=7586</guid>

					<description><![CDATA[<p>The post <a href="https://creatronix.de/wie-funktioniert-ein-breadboard-neues-yt-short/">Wie funktioniert ein Breadboard &#8211; Neues YT-Short</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><iframe title="Wie funktioniert ein Breadboard?" width="563" height="1000" src="https://www.youtube.com/embed/J_U2LDjYZyc?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>The post <a href="https://creatronix.de/wie-funktioniert-ein-breadboard-neues-yt-short/">Wie funktioniert ein Breadboard &#8211; Neues YT-Short</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Die wichtigsten Transistor-Gehäusetypen &#8211; YT-Short</title>
		<link>https://creatronix.de/die-wichtigsten-transistor-gehausetypen/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Sun, 14 Sep 2025 07:46:26 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<guid isPermaLink="false">https://creatronix.de/?p=7547</guid>

					<description><![CDATA[<p>In diesem Video zeige ich euch ein paar interessante Transistorgehäuse aus meiner Sammlung.</p>
<p>The post <a href="https://creatronix.de/die-wichtigsten-transistor-gehausetypen/">Die wichtigsten Transistor-Gehäusetypen &#8211; YT-Short</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>In diesem Video zeige ich euch ein paar interessante Transistorgehäuse aus meiner Sammlung.</p>
<p><iframe title="Die wichtigsten Transistor-Gehäusetypen￼" width="563" height="1000" src="https://www.youtube.com/embed/8kWEClinoaM?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>The post <a href="https://creatronix.de/die-wichtigsten-transistor-gehausetypen/">Die wichtigsten Transistor-Gehäusetypen &#8211; YT-Short</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Neues YouTube-Short: LCR-Tester von JoyIT</title>
		<link>https://creatronix.de/neues-youtube-short-lcr-tester-von-joyit/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Thu, 07 Aug 2025 10:00:02 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<guid isPermaLink="false">https://creatronix.de/?p=7493</guid>

					<description><![CDATA[<p>Heute mal ein Experiment gewagt: die Audiospur von diesem Video ist komplett AI-generiert. Elevenlabs sei Dank konnte ich aus einem von mir gesprochenem Track meine eigene Stimme synthetisieren. Klar, wenn man sich etwas auskennt, hört man das schon noch raus. Ich finde es aber trotzdem beeindruckend und gruselig zugleich 👻 Was meint ihr?</p>
<p>The post <a href="https://creatronix.de/neues-youtube-short-lcr-tester-von-joyit/">Neues YouTube-Short: LCR-Tester von JoyIT</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Heute mal ein Experiment gewagt: die Audiospur von diesem Video ist komplett AI-generiert. <a href="https://elevenlabs.io/">Elevenlabs</a> sei Dank konnte ich aus einem von mir gesprochenem Track meine eigene Stimme synthetisieren.</p>
<p>Klar, wenn man sich etwas auskennt, hört man das schon noch raus. Ich finde es aber trotzdem beeindruckend und gruselig zugleich 👻 Was meint ihr?</p>
<p><iframe title="LCR-Tester von joy-IT #electronics #diy #robotics" width="563" height="1000" src="https://www.youtube.com/embed/QAQ1a7tmZQk?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<p>The post <a href="https://creatronix.de/neues-youtube-short-lcr-tester-von-joyit/">Neues YouTube-Short: LCR-Tester von JoyIT</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Wie funktioniert eine H-Brücke?</title>
		<link>https://creatronix.de/wie-funktioniert-eine-h-brucke/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Sun, 03 Aug 2025 19:05:15 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<guid isPermaLink="false">https://creatronix.de/?p=7486</guid>

					<description><![CDATA[<p>Motivation Nachdem ich mich einige Zeit mit der Entwicklung eines eigenen Motorcontrollers beschäftigt habe, möchte ich hier euch die Grundlagen von H-Brücken erklären. Eine H-Brücke ist eine elektronische Schaltung, die es einem ermöglicht, die Richtung und Geschwindigkeit eines Gleichstrommotors zu steuern. Vereinfachte Darstellung mit Schaltern Man kann eine H-Brücke als eine Art Schalter betrachten. In&#8230;</p>
<p>The post <a href="https://creatronix.de/wie-funktioniert-eine-h-brucke/">Wie funktioniert eine H-Brücke?</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Motivation</h2>
<p>Nachdem ich mich einige Zeit mit der Entwicklung eines eigenen Motorcontrollers beschäftigt habe, möchte ich hier euch die Grundlagen von H-Brücken erklären.</p>
<p>Eine H-Brücke ist eine elektronische Schaltung, die es einem ermöglicht, die Richtung und Geschwindigkeit eines Gleichstrommotors zu steuern.</p>
<h2>Vereinfachte Darstellung mit Schaltern</h2>
<p>Man kann eine H-Brücke als eine Art Schalter betrachten. In der einfachsten Form besteht die Brücke aus vier Schaltern (S1, S2, S3, S4), die in einer H-Form angeordnet sind.<br />
Wenn alle Schalter offen sind, fließt kein Strom durch den Motor.<br />
<img fetchpriority="high" decoding="async" src="https://creatronix.de/wp-content/uploads/2025/08/01-h-bridge-all-open-1024x670.png" alt="" width="1024" height="670" class="alignnone size-large wp-image-7485" srcset="https://creatronix.de/wp-content/uploads/2025/08/01-h-bridge-all-open-1024x670.png 1024w, https://creatronix.de/wp-content/uploads/2025/08/01-h-bridge-all-open-300x196.png 300w, https://creatronix.de/wp-content/uploads/2025/08/01-h-bridge-all-open-768x502.png 768w, https://creatronix.de/wp-content/uploads/2025/08/01-h-bridge-all-open.png 1414w" sizes="(max-width: 1024px) 100vw, 1024px" /><br />
Wenn S1 und S4 geschlossen sind, fließt der Strom in eine Richtung durch den Motor, wodurch er sich in eine Richtung dreht.<br />
<img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/08/02-h-bridge-forward-1024x720.png" alt="" width="1024" height="720" class="alignnone size-large wp-image-7478" srcset="https://creatronix.de/wp-content/uploads/2025/08/02-h-bridge-forward-1024x720.png 1024w, https://creatronix.de/wp-content/uploads/2025/08/02-h-bridge-forward-300x211.png 300w, https://creatronix.de/wp-content/uploads/2025/08/02-h-bridge-forward-768x540.png 768w, https://creatronix.de/wp-content/uploads/2025/08/02-h-bridge-forward.png 1360w" sizes="(max-width: 1024px) 100vw, 1024px" /><br />
Wenn S2 und S3 geschlossen sind, fließt der Strom in die entgegengesetzte Richtung, wodurch sich der Motor in die andere Richtung dreht.<br />
<img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/08/03-h-bridge-backwards-1024x683.png" alt="" width="1024" height="683" class="alignnone size-large wp-image-7484" srcset="https://creatronix.de/wp-content/uploads/2025/08/03-h-bridge-backwards-1024x683.png 1024w, https://creatronix.de/wp-content/uploads/2025/08/03-h-bridge-backwards-300x200.png 300w, https://creatronix.de/wp-content/uploads/2025/08/03-h-bridge-backwards-768x512.png 768w, https://creatronix.de/wp-content/uploads/2025/08/03-h-bridge-backwards.png 1199w" sizes="(max-width: 1024px) 100vw, 1024px" /><br />
Wenn jedoch S2 und S4 geschlossen sind, fließt der Strom nicht durch den Motor, was zu einem Kurzschluss führen würde.<br />
<img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/08/04-h-bridge-shoot-through-1024x715.png" alt="" width="1024" height="715" class="alignnone size-large wp-image-7482" srcset="https://creatronix.de/wp-content/uploads/2025/08/04-h-bridge-shoot-through-1024x715.png 1024w, https://creatronix.de/wp-content/uploads/2025/08/04-h-bridge-shoot-through-300x210.png 300w, https://creatronix.de/wp-content/uploads/2025/08/04-h-bridge-shoot-through-768x536.png 768w, https://creatronix.de/wp-content/uploads/2025/08/04-h-bridge-shoot-through.png 1257w" sizes="(max-width: 1024px) 100vw, 1024px" /><br />
Das nennt man auch shoot-through. Den gilt es zu vermeiden</p>
<h2>Ersetze Schalter durch Transistoren</h2>
<p>Da wir die Schalter nicht manuell betätigen wollen, ersetzen wir sie durch Transistoren.<br />
<img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/08/05-h-bridge-mosfets-1024x676.png" alt="" width="1024" height="676" class="alignnone size-large wp-image-7480" srcset="https://creatronix.de/wp-content/uploads/2025/08/05-h-bridge-mosfets-1024x676.png 1024w, https://creatronix.de/wp-content/uploads/2025/08/05-h-bridge-mosfets-300x198.png 300w, https://creatronix.de/wp-content/uploads/2025/08/05-h-bridge-mosfets-768x507.png 768w, https://creatronix.de/wp-content/uploads/2025/08/05-h-bridge-mosfets.png 1475w" sizes="(max-width: 1024px) 100vw, 1024px" /><br />
Die Transistoren fungieren als elektronische Schalter, die durch ein Steuersignal (z.B. von einem Mikrocontroller) aktiviert werden können.</p>
<h3>Warum MOSFETs?</h3>
<p>MOSFETs (Metal-Oxide-Semiconductor Field-Effect Transistors) sind besonders geeignet für H-Brücken, da sie eine hohe Schaltgeschwindigkeit und geringe Verlustleistung bieten. Sie können mit niedrigen Spannungen gesteuert werden und haben eine hohe Stromtragfähigkeit, was sie ideal für Motorsteuerungen macht.</p>
<p>Es werden normalerweise selbst-sperrende Typen verwendet, das heißt im ungeschalteten Zustand leiten die Transistoren nicht.</p>
<p>Es gibt MOSFETs als n-Kanal und p-Kanal-Variante. In einer perfekten Welt würden wir nur n-kanal MOSFETs verwenden, da sie effizienter sind.<br />
Sie haben im eingeschalteten Zustand einen niedrigeren Widerstand RDS als p-kanal MOSFETs und benötigen eine niedrigere Gate-Spannung, um vollständig zu leiten. In der Praxis ist es jedoch schwieriger, eine H-Brücke nur mit n-Kanal-MOSFETs zu realisieren, da die High-Side-Transistoren, um vollständig zu leiten, eine Gate-Spannung benötigen, die höher als die Spannung am Source ist.</p>
<p>Deshalb können wir eine Kombination aus n-Kanal- und p-Kanal-MOSFETs verwenden.</p>
<p>&nbsp;</p>
<h2><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/08/06-h-bridge-p-and-n-mosfets-1024x654.png" alt="" width="1024" height="654" class="alignnone size-large wp-image-7479" srcset="https://creatronix.de/wp-content/uploads/2025/08/06-h-bridge-p-and-n-mosfets-1024x654.png 1024w, https://creatronix.de/wp-content/uploads/2025/08/06-h-bridge-p-and-n-mosfets-300x192.png 300w, https://creatronix.de/wp-content/uploads/2025/08/06-h-bridge-p-and-n-mosfets-768x491.png 768w, https://creatronix.de/wp-content/uploads/2025/08/06-h-bridge-p-and-n-mosfets.png 1276w" sizes="(max-width: 1024px) 100vw, 1024px" /></h2>
<h2>Freilaufdioden</h2>
<p>Freilaufdioden sind notwendig, um die Induktionsspannung des Motors abzufangen, wenn der Motor abgeschaltet wird.<br />
Andernfalls könnte die Induktionsspannung die MOSFETs beschädigen.</p>
<h2><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/08/07-h-bridge-flyback-1024x568.png" alt="" width="1024" height="568" class="alignnone size-large wp-image-7481" srcset="https://creatronix.de/wp-content/uploads/2025/08/07-h-bridge-flyback-1024x568.png 1024w, https://creatronix.de/wp-content/uploads/2025/08/07-h-bridge-flyback-300x166.png 300w, https://creatronix.de/wp-content/uploads/2025/08/07-h-bridge-flyback-768x426.png 768w, https://creatronix.de/wp-content/uploads/2025/08/07-h-bridge-flyback.png 1471w" sizes="(max-width: 1024px) 100vw, 1024px" /></h2>
<h2>Zusammenfassung</h2>
<p>Dies war ein erster kleiner Ausflug in die Welt der H-Brücken. Die gezeigten Schaltungen sollen das Prinzip verdeutlichen und eignen sich noch nicht für eine praktische Umsetzung, da noch Widerstände und Gate-Treiber fehlen. Dazu mehr in diesem <a href="https://creatronix.de/wir-bauen-einen-eigenen-motorcontroller/">Artikel</a></p>
<p>The post <a href="https://creatronix.de/wie-funktioniert-eine-h-brucke/">Wie funktioniert eine H-Brücke?</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Wir bauen einen eigenen Motorcontroller</title>
		<link>https://creatronix.de/wir-bauen-einen-eigenen-motorcontroller/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Mon, 28 Jul 2025 07:31:10 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<guid isPermaLink="false">https://creatronix.de/?p=7461</guid>

					<description><![CDATA[<p>Motivation / Tal der Tränen In meinem Line Follower Roboter Projekt habe ich mit dem Motortreiber L298N gearbeitet. Da Module mit diesem Treiber auf eine Leistung von maximal 25 Watt limitiert sind, musste für unser Azubi-Projekt ein anderer Treiber her. Die Anforderungen waren mit 50 Watt pro Motor und einer Vollbrücke nicht besonders hoch, aber&#8230;</p>
<p>The post <a href="https://creatronix.de/wir-bauen-einen-eigenen-motorcontroller/">Wir bauen einen eigenen Motorcontroller</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Motivation / Tal der Tränen</h2>
<p>In meinem <a href="https://creatronix.de/wir-bauen-einen-line-follow-roboter-mit-arduino/">Line Follower Roboter Projekt</a> habe ich mit dem Motortreiber L298N gearbeitet. Da Module mit diesem Treiber auf eine Leistung von maximal 25 Watt limitiert sind, musste für unser Azubi-Projekt ein anderer Treiber her.</p>
<p>Die Anforderungen waren mit 50 Watt pro Motor und einer Vollbrücke nicht besonders hoch, aber der Teufel steckt ja bekanntlich im Detail. Der erste Treiber, der Cytron SmartDriveDuo MDDS30 war mit 40A / 300W stark überdimensioniert. Er ist uns trotzdem nach ein paar Wochen abgeraucht.<br />
Der nächste Versuch mit dem Soldered DRV8424P war auch nicht von Erfolg gekrönt. Wir haben erst nach ein paar Tagen herausgefunden, dass der falsche Chip bestückt wurde. Auch bei der Nachlieferung war das der Fall, anscheinend war die ganze Charge des Lieferanten falsch.</p>
<p>Also schnell aus der Not eine Tugend machen und selber einen Treiber entwerfen.</p>
<h2>Anforderungen</h2>
<p>Der Motortreiber soll sich zur Ansteuerung mit Arduino GPIOs via TTL-Pegel eignen. Er soll zwei 2 Kanäle mit jeweils 50 Watt Leistung haben und via PWM in der Geschwindigkeit regelbar sein. Die Betriebsspannung soll zwischen 18 und 24 Volt liegen.</p>
<h2>Recherche</h2>
<p>Nach dem Schauen von dutzenden Videos und Lesen von einigen Blog-Artikeln habe ich den Beitrag von <a href="https://www.aeq-web.com">Alexander Egger</a> gefunden:<br />
<a href="https://www.aeq-web.com/arduino-mosfet-h-bruecke-dc-motor-steuern-mit-drehrichtung-und-geschwindigkeit-vierquadrantensteller/">https://www.aeq-web.com/arduino-mosfet-h-bruecke-dc-motor-steuern-mit-drehrichtung-und-geschwindigkeit-vierquadrantensteller/</a><br />
Dieser Artikel erschien mir sehr gut als Absprungbasis geeignet.</p>
<h2>Schaltungsentwurf &#8211; Revision 1</h2>
<p>Im ersten Versuch habe ich die Schaltung von Alex mit Fritzing nachgebaut. Als Transistoren habe ich für die High Side die im Artikel erwähnten IRF9540 benutzt. Für die Low Side habe ich IRLZ44N verwendet, da die L-Versionen für Logikpegel geeignet sind, weil sie bei 5V VGS schon durchschalten. Zusätzlich habe ich vier 1N4007 als Freilaufdioden eingebaut:</p>
<p>&nbsp;</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/01-h-bridge-with-flyback-1024x542.png" alt="" width="1024" height="542" class="alignnone size-large wp-image-7458" srcset="https://creatronix.de/wp-content/uploads/2025/07/01-h-bridge-with-flyback-1024x542.png 1024w, https://creatronix.de/wp-content/uploads/2025/07/01-h-bridge-with-flyback-300x159.png 300w, https://creatronix.de/wp-content/uploads/2025/07/01-h-bridge-with-flyback-768x407.png 768w, https://creatronix.de/wp-content/uploads/2025/07/01-h-bridge-with-flyback.png 1420w" sizes="(max-width: 1024px) 100vw, 1024px" />Daraus habe ich dann eine erste Platine gelayoutet:</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/02-h-bridge-with-flyback_pcb.png" alt="" width="728" height="601" class="alignnone size-full wp-image-7460" srcset="https://creatronix.de/wp-content/uploads/2025/07/02-h-bridge-with-flyback_pcb.png 728w, https://creatronix.de/wp-content/uploads/2025/07/02-h-bridge-with-flyback_pcb-300x248.png 300w" sizes="(max-width: 728px) 100vw, 728px" /><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/03-h-bridge-with-flyback_pcb_bottom.png" alt="" width="728" height="601" class="alignnone size-full wp-image-7457" srcset="https://creatronix.de/wp-content/uploads/2025/07/03-h-bridge-with-flyback_pcb_bottom.png 728w, https://creatronix.de/wp-content/uploads/2025/07/03-h-bridge-with-flyback_pcb_bottom-300x248.png 300w" sizes="(max-width: 728px) 100vw, 728px" /></p>
<p>Aus Fritzing heraus, konnte ich direkt eine Platine bei <a href="https://aisler.net">Aisler</a> fertigen lassen. Mindestabnahmemenge sind 3 Stück. Bei einem Gesamtpreis von knapp 20€ ein sehr interessanter Anbieter. Da die Produktion und Lieferung 2,5 Wochen dauern sollte, habe ich parallel dazu die Schaltung auf einem Breadbaord aufgebaut und getestet.</p>
<p>&nbsp;</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/05-h-bridge-breadboard-768x1024.jpg" alt="" width="768" height="1024" class="alignnone size-large wp-image-7459" srcset="https://creatronix.de/wp-content/uploads/2025/07/05-h-bridge-breadboard-768x1024.jpg 768w, https://creatronix.de/wp-content/uploads/2025/07/05-h-bridge-breadboard-225x300.jpg 225w, https://creatronix.de/wp-content/uploads/2025/07/05-h-bridge-breadboard-1152x1536.jpg 1152w, https://creatronix.de/wp-content/uploads/2025/07/05-h-bridge-breadboard-1536x2048.jpg 1536w, https://creatronix.de/wp-content/uploads/2025/07/05-h-bridge-breadboard-scaled.jpg 1920w" sizes="(max-width: 768px) 100vw, 768px" /></p>
<p>Hierbei ist mir dann aufgefallen, dass ich die p-kanal MOSFETs falsch herum eingezeichnet hatte.</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/04-h-bridge-manufactured-pcb-1024x768.jpg" alt="" width="1024" height="768" class="alignnone size-large wp-image-7455" srcset="https://creatronix.de/wp-content/uploads/2025/07/04-h-bridge-manufactured-pcb-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2025/07/04-h-bridge-manufactured-pcb-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2025/07/04-h-bridge-manufactured-pcb-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2025/07/04-h-bridge-manufactured-pcb-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2025/07/04-h-bridge-manufactured-pcb-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>Das konnte ich beim Bestücken der Platine -die doch bereits nach 10 Tagen eingetroffen war- noch halbwegs elegant beheben.<img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/06-h-bridge-soldered-1024x768.jpg" alt="" width="1024" height="768" class="alignnone size-large wp-image-7447" srcset="https://creatronix.de/wp-content/uploads/2025/07/06-h-bridge-soldered-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2025/07/06-h-bridge-soldered-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2025/07/06-h-bridge-soldered-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2025/07/06-h-bridge-soldered-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2025/07/06-h-bridge-soldered-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<h3>Lasttest</h3>
<p>Ich habe mich langsam herangetastet, einfacher 5V Motor mit wenigen 100mA Last.<br />
Dann den richtigen Motor bei 24V betrieben. Leider konnte ich keinen echten Lasttest durchführen.<br />
Die Schaltung lief aber stabil bei 12-15Watt Leistungsaufnahme.<br />
Die Transistoren haben sich dabei auf ca 40° Celsius erwärmt.</p>
<h3>Lasttest Nummer 2</h3>
<p>Um mal die Platine richtig zu stressen, habe ich eine elektronische Last drangehängt.</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/07-electronic-load-1024x768.jpg" alt="" width="1024" height="768" class="alignnone size-large wp-image-7446" srcset="https://creatronix.de/wp-content/uploads/2025/07/07-electronic-load-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2025/07/07-electronic-load-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2025/07/07-electronic-load-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2025/07/07-electronic-load-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2025/07/07-electronic-load-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>Hierbei hat sich dann der Steckverbinder des Jumnperkabels verabschiedet, da die Zuleitung für mehr als 1 Ampere überfordert war. Das bedeutet die Spannungsversorgung über die Pin Header ist nicht optimal.</p>
<h2>Schaltungsentwurf &#8211; Revision 2</h2>
<p>Nicht lang snacken, Kopp inn Nacken! Im zweiten Wurf wollte ich dann die Spannungsversorgung auch über eine WAGO-Klemme realisieren.<br />
Zudem sind noch ein paar Optimierungen möglich. Die Freilaufdioden sollten näher an den MOSFETs platziert werden. (Danke Hubert für den Tip!)<br />
Es fehlten noch die Montage-Löcher, um die Platine sinnvoll zu befestigen. Für die WAGO-Klemme hatte ich den falschen Footprint benutzt, sodass ich zum verlöten von der Klemme zwei Beinchen abzwicken musste. Duh!</p>
<h3>Schematic</h3>
<p>Da mir die Möglichkeiten mit fritzing etwas eingeschränkt vorkommen, habe ich mich in KiCAD eingearbeitet. Die Lernkurve ist etwas steiler, aber machbar.</p>
<p>Die Schaltung habe ich fast eins zu eins von den Schematics aus fritzing ins KiCAD übertragen. (Und die p-Kanal-Mosfets richtig herum angeschlossen LOL)</p>
<p>Der Standard-Header hat jetzt einen Pin mehr, da er die Betriebsspannung ans Logik-Board übertragen muss. Dazu später mehr.</p>
<p>&nbsp;</p>
<h3><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/08-h-bridge-rev2-schem-1024x495.png" alt="" width="1024" height="495" class="alignnone size-large wp-image-7452" srcset="https://creatronix.de/wp-content/uploads/2025/07/08-h-bridge-rev2-schem-1024x495.png 1024w, https://creatronix.de/wp-content/uploads/2025/07/08-h-bridge-rev2-schem-300x145.png 300w, https://creatronix.de/wp-content/uploads/2025/07/08-h-bridge-rev2-schem-768x371.png 768w, https://creatronix.de/wp-content/uploads/2025/07/08-h-bridge-rev2-schem.png 1093w" sizes="(max-width: 1024px) 100vw, 1024px" />PCB-Layout</h3>
<p>Beim PCB Layout habe ich mich an der ersten Version orientiert, habe aber die Freilaufdioden näher an die MOSFETs platziert. Für die Leistung die Leiterbahnbreite auf 2 mm erhöht.</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/09-h-bridge-rev2-pcb.png" alt="" width="630" height="474" class="alignnone size-full wp-image-7445" srcset="https://creatronix.de/wp-content/uploads/2025/07/09-h-bridge-rev2-pcb.png 630w, https://creatronix.de/wp-content/uploads/2025/07/09-h-bridge-rev2-pcb-300x226.png 300w" sizes="(max-width: 630px) 100vw, 630px" /></p>
<p>Im 3D-Viewer kann man schön sehen, ob die Teile gut positioniert sind.</p>
<p>&nbsp;</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/10-h-bridge-rev2-pcb-3d-view.png" alt="" width="990" height="729" class="alignnone size-full wp-image-7450" srcset="https://creatronix.de/wp-content/uploads/2025/07/10-h-bridge-rev2-pcb-3d-view.png 990w, https://creatronix.de/wp-content/uploads/2025/07/10-h-bridge-rev2-pcb-3d-view-300x221.png 300w, https://creatronix.de/wp-content/uploads/2025/07/10-h-bridge-rev2-pcb-3d-view-768x566.png 768w" sizes="(max-width: 990px) 100vw, 990px" />Auch diese Platine habe ich wieder bei Aisler bestellt. Perfekter Service.</p>
<p>&nbsp;</p>
<h3><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/11-h-bridge-rev2-pcb-768x1024.jpg" alt="" width="768" height="1024" class="alignnone size-large wp-image-7453" srcset="https://creatronix.de/wp-content/uploads/2025/07/11-h-bridge-rev2-pcb-768x1024.jpg 768w, https://creatronix.de/wp-content/uploads/2025/07/11-h-bridge-rev2-pcb-225x300.jpg 225w, https://creatronix.de/wp-content/uploads/2025/07/11-h-bridge-rev2-pcb-1152x1536.jpg 1152w, https://creatronix.de/wp-content/uploads/2025/07/11-h-bridge-rev2-pcb-1536x2048.jpg 1536w, https://creatronix.de/wp-content/uploads/2025/07/11-h-bridge-rev2-pcb-scaled.jpg 1920w" sizes="(max-width: 768px) 100vw, 768px" /></h3>
<h3>Bestückung</h3>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/12-h-bridge-rev2-pcb-soldered-1024x768.jpg" alt="" width="1024" height="768" class="alignnone size-large wp-image-7454" srcset="https://creatronix.de/wp-content/uploads/2025/07/12-h-bridge-rev2-pcb-soldered-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2025/07/12-h-bridge-rev2-pcb-soldered-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2025/07/12-h-bridge-rev2-pcb-soldered-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2025/07/12-h-bridge-rev2-pcb-soldered-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2025/07/12-h-bridge-rev2-pcb-soldered-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /><br />
Beim Bestücken ist mir aufgefallen, dass ich für die Bipolar-Transistoren den schmalen Footprint genommen habe. Das macht das Löten etwas anstrengender, aber noch ok.</p>
<h3>Lasttest</h3>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2025/07/13-h-bridge-rev2-load-test-1024x768.jpg" alt="" width="1024" height="768" class="alignnone size-large wp-image-7451" srcset="https://creatronix.de/wp-content/uploads/2025/07/13-h-bridge-rev2-load-test-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2025/07/13-h-bridge-rev2-load-test-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2025/07/13-h-bridge-rev2-load-test-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2025/07/13-h-bridge-rev2-load-test-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2025/07/13-h-bridge-rev2-load-test-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /><br />
Beim Lasttest konnte ich eine Leistung von knapp 50 Watt abrufen, ohne dass sich die MOSFETS überhitzt haben.<br />
Die p-Kanal MOSFETs werden mit 65°C jedoch deutlich wärmer als die n-Kanal (45°C)</p>
<h2>Steuerungssoftware</h2>
<p>Für die PWM-Ansteuerung habe ich mich am Programm von Alex orientiert, allerdings etwas optimiert und für eine Anbindung an ein Python-Programm mit GUI erweitert.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-cpp" data-lang="C++"><code>const byte P_FET_Q1 = 2;
const byte N_FET_Q4 = 3; // PWM controlled
const byte P_FET_Q3 = 8;
const byte N_FET_Q2 = 9; // PWM controlled

byte current_PWM_port = N_FET_Q4;

void setup()
{
    //This sets frequency to 7812.5 hz.
    TCCR0B = TCCR0B &amp; 0b11111000 | 0x01; 

    pinMode(P_FET_Q1, OUTPUT);
    pinMode(N_FET_Q2, OUTPUT);
    pinMode(P_FET_Q3, OUTPUT);
    pinMode(N_FET_Q4, OUTPUT);
    Serial.begin(9600);
} 
</code></pre>
</div>
<p>Am Anfang werden alle Pins deklariert und als Output gesetzt.<br />
Wie auch bei meinem Line Follower setze ich die PWM-Frequenz auf 7kHz.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-cpp" data-lang="C++"><code>
void forward()
{
    digitalWrite(N_FET_Q2, LOW);
    digitalWrite(P_FET_Q3, LOW);
    digitalWrite(P_FET_Q1, HIGH);
    current_PWM_port = N_FET_Q4;
}
</code></pre>
</div>
<p>digitalWrite ist hier sehr nützlich, weil es relativ langsam ausgeführt wird.<br />
Die 4–5 µs Verzögerung, die durch den Funktionsaufruf entstehen, wirken hier wie eine kurze Dead Time.</p>
<h2>Fazit &amp; Ausblick Rev3</h2>
<p>Da ich beim Testen von beiden Platinen die Spannungsquelle ein paar Mal falsch herum angeschlossen hatte, sollte in Revision 3 ein Verpolungsschutz hinzukommen. Eine Beschriftung der WAGO-Klemme ist natürlich auch sinnvoll.<br />
Zudem hätte ich auch gerne eine Indikator-LED, die mir anzeigt, dass die Schaltung mit Spannung versorgt wird. Zwei LEDs, die die Drehrichtung anzeigen, werde ich auch einbauen. Bei Rev1 und Rev2 fehlen auch die Bezeichnungen an den Digital-Eingängen, sodass ich beim Testen immer rätseln musste, welcher Pin welchen Transistor ansteuert.</p>
<p>Da die Schaltung außerdem nicht gegen shoot-through gesichert ist, muss das derzeit Software-seitig passieren. Für Revision 3 werde ich noch eine Logikschaltung entwerfen, die sicherstellt, dass nur die korrespondierenden Hi- und Lo-Side gleichzeitg aktiv werden können.</p>
<p>Last but not least werde ich versuchen, die Platine in SMD-Technik zu layouten.</p>
<h2>Arduino-Code</h2>
<p>Hier der komplette Arduino Code:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-cpp" data-lang="C++"><code>
const byte P_FET_Q1 = 2;
const byte N_FET_Q4 = 3; // PWM controlled
const byte P_FET_Q3 = 8;
const byte N_FET_Q2 = 9; // PWM controlled

byte current_PWM_port = N_FET_Q4;

void setup()
{
    //This sets frequency to 7812.5 hz.
    TCCR0B = TCCR0B &amp; 0b11111000 | 0x01; 

    pinMode(P_FET_Q1, OUTPUT);
    pinMode(N_FET_Q2, OUTPUT);
    pinMode(P_FET_Q3, OUTPUT);
    pinMode(N_FET_Q4, OUTPUT);
    Serial.begin(9600);
}

void stop()
{
    analogWrite(current_PWM_port, 0);
}

void forward()
{
    digitalWrite(N_FET_Q2, LOW);
    digitalWrite(P_FET_Q3, LOW);
    digitalWrite(P_FET_Q1, HIGH);
    current_PWM_port = N_FET_Q4;
}

void backwards()
{
    digitalWrite(P_FET_Q1, LOW);
    digitalWrite(N_FET_Q4, LOW);
    digitalWrite(P_FET_Q3, HIGH);
    current_PWM_port = N_FET_Q2;
}

void drive(byte speed)
{
    analogWrite(current_PWM_port, speed);
}

void loop()
{
 if (Serial.available()) {
    String cmd = Serial.readStringUntil('\n');

    if (cmd.startsWith("PWM:")) {
      int value = cmd.substring(4).toInt();
      if (value &lt; 0) {
        backwards();
        value = -value;
      } else {
        forward();
      }
      value = constrain(value, 0, 255);
      drive(value);
    } else if (cmd == "STOP") {
      stop();
    }
  }

}
</code></pre>
</div>
<p>The post <a href="https://creatronix.de/wir-bauen-einen-eigenen-motorcontroller/">Wir bauen einen eigenen Motorcontroller</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>So kontrollierst du die CPU Temperatur am Raspberry Pi</title>
		<link>https://creatronix.de/so-kontrollierst-du-die-cpu-temperatur-am-raspberry-pi/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Wed, 02 Oct 2024 06:10:24 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<guid isPermaLink="false">https://creatronix.de/?p=7115</guid>

					<description><![CDATA[<p>Motivation Standardmäßig wird der Raspberry Pi nicht mit einem Kühler geliefert. Für kleine Projekte ist das kein Problem, aber wenn du den Raspberry Pi für längere Zeit belastest, kann er überhitzen. In diesem Artikel zeige ich dir, wie du die Temperatur deines Raspberry Pi überwachen kannst. &#8220;vcgencmd&#8221; sollte bei einer offiziellen Distribution von Raspbian dabei&#8230;</p>
<p>The post <a href="https://creatronix.de/so-kontrollierst-du-die-cpu-temperatur-am-raspberry-pi/">So kontrollierst du die CPU Temperatur am Raspberry Pi</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Motivation</h2>
<p>Standardmäßig wird der Raspberry Pi nicht mit einem Kühler geliefert. Für kleine Projekte ist das kein Problem, aber wenn du den Raspberry Pi für längere Zeit belastest, kann er überhitzen.<br />
In diesem Artikel zeige ich dir, wie du die Temperatur deines Raspberry Pi überwachen kannst.</p>
<p>&#8220;vcgencmd&#8221; sollte bei einer offiziellen Distribution von Raspbian dabei sein.<br />
Es ist ein Befehl, der von der Raspberry Pi Foundation bereitgestellt wird, um Informationen über die Hardware des Raspberry Pi zu erhalten.</p>
<h2>Installation</h2>
<p>Falls du keine offizielle Distribution von Raspbian hast, kannst du das Paket <code>libraspberrypi-bin</code> installieren.<br />
Du installierst das Paket mit folgendem Befehl:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-bash" data-lang="Bash"><code>sudo apt install libraspberrypi-bin</code></pre>
</div>
<h2>Konsolen-Kommando</h2>
<p>Nun kannst du die Temperatur mit folgendem Befehl kontrollieren:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-bash" data-lang="Bash"><code>vcgencmd measure_temp</code></pre>
</div>
<h2>Automatisiertes Überwachen</h2>
<p>Wenn wir die Temperatur regelmäßig überwachen wollen, können wir das mit dem <code>watch</code> Befehl machen:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-bash" data-lang="Bash"><code>watch -n 5 vcgencmd measure_temp</code></pre>
</div>
<p>Das -n 5 gibt an, dass der Befehl alle 5 Sekunden ausgeführt wird.</p>
<h2>Kühlkörper und Lüfter</h2>
<p>Wenn du deinen Raspberry Pi kühl halten möchtest, kannst du auch einen Kühlkörper installieren.<br />
Die gibt es sowohl als passiv gekühlte Variante, als auch mit einem Lüffter.<br />
Bei Amazon findest du eine große Auswahl an Kühlkörpern und Lüftern für den Raspberry Pi.<br />
Beispiel: <a href="https://amzn.to/4gKEpHw">Körper und Lüffter für Raspberry Pi</a></p>
<h2>Fazit</h2>
<p>Der vcgencmd Befehl ist ein nützliches Tool, um die Temperatur des Raspberry Pi zu überwachen.<br />
Er kann auch für andere Informationen über die Hardware des Raspberry Pi verwendet werden.</p>
<p>The post <a href="https://creatronix.de/so-kontrollierst-du-die-cpu-temperatur-am-raspberry-pi/">So kontrollierst du die CPU Temperatur am Raspberry Pi</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Wir bauen einen Line Follow Roboter mit Arduino</title>
		<link>https://creatronix.de/wir-bauen-einen-line-follow-roboter-mit-arduino/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Wed, 07 Feb 2024 07:36:28 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<category><![CDATA[Robotics]]></category>
		<guid isPermaLink="false">https://creatronix.de/?p=6900</guid>

					<description><![CDATA[<p>Idee In diesem Artikel zeige ich euch, wie wir einen Line Follow Roboter mit Arduino bauen können. Die Idee hinter diesem Roboter ist es, mit zwei IR-Sensoren eine schwarze Linie zu erkennen und den Roboter entsprechend zu bewegen. Teile Um den Linienverfolgungsroboter zu bauen, benötigen wir das yourDroid 2WD Smart Car Chassis für DIY Roboter.&#8230;</p>
<p>The post <a href="https://creatronix.de/wir-bauen-einen-line-follow-roboter-mit-arduino/">Wir bauen einen Line Follow Roboter mit Arduino</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Idee</h2>
<p>In diesem Artikel zeige ich euch, wie wir einen Line Follow Roboter mit Arduino bauen können.</p>
<p>Die Idee hinter diesem Roboter ist es, mit zwei IR-Sensoren eine schwarze Linie zu erkennen und den Roboter entsprechend zu bewegen.</p>
<h2>Teile</h2>
<p>Um den Linienverfolgungsroboter zu bauen, benötigen wir das yourDroid 2WD Smart Car Chassis für DIY Roboter.<br />
<img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8050-1024x768.jpg" alt="" class="alignnone wp-image-6894 size-large" width="1024" height="768" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8050-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8050-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8050-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8050-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8050-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8051-1024x768.jpg" alt="" class="alignnone size-large wp-image-6893" width="1024" height="768" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8051-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8051-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8051-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8051-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8051-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>Außerdem benötigen wir einen Arduino Uno</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-7864-1024x768.jpg" alt="" class="alignnone size-large wp-image-6901" width="1024" height="768" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-7864-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-7864-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-7864-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-7864-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-7864-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>zwei IR-Sensormodule,<br />
<img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8054-1024x768.jpg" alt="" class="alignnone size-large wp-image-6888" width="1024" height="768" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8054-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8054-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8054-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8054-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8054-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>ein L298N Motortreiber-Modul mit doppelter H-Brücke,</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8052-1024x768.jpg" alt="" class="alignnone size-large wp-image-6889" width="1024" height="768" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8052-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8052-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8052-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8052-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8052-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>4 Doppel-A Akkus und einige Jumper-Kabel.</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8252-1024x576.jpg" alt="" class="alignnone size-large wp-image-6895" width="1024" height="576" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8252-1024x576.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8252-300x169.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8252-768x432.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8252-1536x864.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8252-2048x1152.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>Für den Parcours brauchen wir ein großes helles Brett und schwarzes Gaffertape für die Linie.<br />
<img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8251-1024x576.jpg" alt="" class="alignnone size-large wp-image-6890" width="1024" height="576" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8251-1024x576.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8251-300x169.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8251-768x432.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8251-1536x864.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8251-2048x1152.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<h2>Werkzeug</h2>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8253-1024x576.jpg" alt="" class="alignnone size-large wp-image-6892" width="1024" height="576" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8253-1024x576.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8253-300x169.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8253-768x432.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8253-1536x864.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8253-2048x1152.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>Ein guter Lötkolben oder eine Lötstation, Lötzinn und eine Heißklebepistole sind sehr hilfreich.<br />
Falls ihr keine Heißklebepistole habt, könnt ihr auch doppelseitiges Klebeband benutzen.<br />
Ich benutze für dieses Projekt eine Abisolierzange, ihr könnt aber auch eine kleine Schere oder ein Messer zum abisolieren nehmen.</p>
<h2>Zusammenbau</h2>
<p>Zuerst löten wir Drähte an die Getriebemotoren. Dann montieren wir die zwei Motoren am Auto.</p>
<p>Wir befestigen jetzt das Motortreiber-Modul. Ich hatte hier noch ein paar passende Schrauben, aber kleben geht natürlich auch<br />
<img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8212-1024x768.jpg" alt="" class="alignnone size-large wp-image-6897" width="1024" height="768" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8212-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8212-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8212-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8212-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8212-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>Jetzt stecken wir die Räder auf die Achsen der Motoren. Nun befestigen den Arduino Uno mit der Heißklebepistole.</p>
<p>Auf der anderen Seite des Chassis können wir die Batteriebox ankleben. Wir zerschneiden den roten Draht von der Batteriebox und entfernen den Mantel mit der Abisolierzange.</p>
<p>Nun Löten wir die Batterieanschlussdrähte an den Schalter und stecken den Schalter in die Platte.<br />
<img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8238-1024x768.jpg" alt="" class="alignnone size-large wp-image-6899" width="1024" height="768" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8238-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8238-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8238-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8238-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8238-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>Wir verbinden die Anschlüsse der Motoren mit dem Motortreiber-Modul</p>
<p>Nun Befestigen wir die zwei IR-Sensoren vorne am Auto mit Winkeln. Die Winkel habe ich mit Tinkercad erstellt und mit meinem 3D-Drucker gedruckt. Du kannst natürlich auch hier wieder die Heißklebepistole benutzen.</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/LFR-8239-1024x768.jpg" alt="" class="alignnone size-large wp-image-6898" width="1024" height="768" srcset="https://creatronix.de/wp-content/uploads/2024/02/LFR-8239-1024x768.jpg 1024w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8239-300x225.jpg 300w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8239-768x576.jpg 768w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8239-1536x1152.jpg 1536w, https://creatronix.de/wp-content/uploads/2024/02/LFR-8239-2048x1536.jpg 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<h2>Elektrische Verbindung</h2>
<p>Jetzt machen wir eine Verbindung wie im Schaltplan.</p>
<p><img decoding="async" src="https://creatronix.de/wp-content/uploads/2024/02/line_follow_robot_bb-1024x755.png" alt="" class="alignnone size-large wp-image-6891" width="1024" height="755" srcset="https://creatronix.de/wp-content/uploads/2024/02/line_follow_robot_bb-1024x755.png 1024w, https://creatronix.de/wp-content/uploads/2024/02/line_follow_robot_bb-300x221.png 300w, https://creatronix.de/wp-content/uploads/2024/02/line_follow_robot_bb-768x566.png 768w, https://creatronix.de/wp-content/uploads/2024/02/line_follow_robot_bb-1536x1133.png 1536w, https://creatronix.de/wp-content/uploads/2024/02/line_follow_robot_bb-2048x1511.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<ul>
<li>Wir verbinden das L298N-Motortreiber-Moduls mit den Arduino Uno-Pins.</li>
<li>Schließe Drähte der Batteriebox an die Plus-5-Volt- und Masse-Pins des Motortreiber-Moduls an.</li>
<li>Wir nehmen Plus-5-Volt und Masse vom Motortreiber-Modul und versorgen damit auch die zwei IR-Sensoren sowie den Arduino Uno.</li>
<li>Verbinde die rechten und linken IR-Sensor-Ausgangs-Pins mit D11 und D12 am Arduino.</li>
</ul>
<h2>Software</h2>
<p>Lasst uns jetzt einen kurzen Blick auf den Code werfen.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-c" data-lang="C"><code>const byte MOTOR_SPEED = 210;
const byte DELTA = 45;
</code></pre>
</div>
<p>Die Motorgeschwindigkeit setzen wir auf 210 und das Delta auf 45. Damit bleiben wir im Bereich der PWM von 0 bis 255.<br />
Nun definieren die Variablen für die Eingangs- und Ausgangspins.</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-c" data-lang="C"><code>const byte SPEED_RIGHT_MOTOR = 6;
const byte SPEED_LEFT_MOTOR = 5;

const byte RIGHT_MOTOR_PIN1 = 7;
const byte RIGHT_MOTOR_PIN2 = 8;

const byte LEFT_MOTOR_PIN1 = 9;
const byte LEFT_MOTOR_PIN2 = 10;

const byte IR_SENSOR_RIGHT = 11;
const byte IR_SENSOR_LEFT = 12;
</code></pre>
</div>
<h3>Setup</h3>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-c" data-lang="C"><code>void setup()
{
    //This sets frequency to 7812.5 hz.
    TCCR0B = TCCR0B &amp; B11111000 | B00000010;
    pinMode(SPEED_RIGHT_MOTOR, OUTPUT);
    pinMode(RIGHT_MOTOR_PIN1, OUTPUT);
    pinMode(RIGHT_MOTOR_PIN2, OUTPUT);

    pinMode(SPEED_LEFT_MOTOR, OUTPUT);
    pinMode(LEFT_MOTOR_PIN1, OUTPUT);
    pinMode(LEFT_MOTOR_PIN2, OUTPUT);

    pinMode(IR_SENSOR_RIGHT, INPUT);
    pinMode(IR_SENSOR_LEFT, INPUT);

    digitalWrite(LEFT_MOTOR_PIN1, HIGH);
    digitalWrite(LEFT_MOTOR_PIN2,LOW);

    digitalWrite(RIGHT_MOTOR_PIN1, HIGH);
    digitalWrite(RIGHT_MOTOR_PIN2, LOW);

}
</code></pre>
</div>
<p>Innerhalb der Setup-Funktion müssen wir die PWM-Frequenz höher einstellen. Dies ist ein sehr wichtiger Schritt, da das Problem bei TT-Getriebemotoren darin besteht, dass sie sich bei einem sehr niedrigen PWM-Wert gar nicht drehen.<br />
Dies ändert die Frequenz des PWM-Signals an den Pins D5 und D6 auf 7800 Hertz, wodurch der Motor bei niedriger Geschwindigkeit und hohem PWM-Wert kontrolliert läuft.<br />
Innerhalb der Setup-Funktion setzen wir auch alle Motorpins als Ausgang, die Pins der IR-Sensoren als Eingang.</p>
<h3>Loop</h3>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-c" data-lang="C"><code>void loop()
{

    int rightIRSensorValue = digitalRead(IR_SENSOR_RIGHT);
    int leftIRSensorValue = digitalRead(IR_SENSOR_LEFT);

    //If none of the sensors detects black line, then go straight
    if (rightIRSensorValue == LOW &amp;&amp; leftIRSensorValue == LOW)
    {
        driveStraight();
    }
    //If right sensor detects black line, then turn right
    else if (rightIRSensorValue == HIGH &amp;&amp; leftIRSensorValue == LOW )
    {
        turnRight();
    }
    //If left sensor detects black line, then turn left
    else if (rightIRSensorValue == LOW &amp;&amp; leftIRSensorValue == HIGH )
    {
        turnLeft();
    }
    //If both the sensors detect black line, then stop
    else
    {
        stop();
    }
}
</code></pre>
</div>
<p>In der Loop-Funktion lesen wir die Werte der rechten und linken IR-Sensoren mit der digitalRead-Funktion.</p>
<ul>
<li>Wenn beide Werte niedrig sind, bedeutet das, dass der Sensor die schwarze Linie nicht erkannt hat und wir vorwärtsfahren wollen.</li>
<li>Wenn der rechte Sensor die schwarze Linie erkennt, sind wir zu weit links und wir lassen den linken Motor etwas schneller und den rechten etwas langsamer drehen.</li>
<li>Wenn der linke Sensor die schwarze Linie erkennt, dann machen wir es genau umgekehrt: rechts schneller und links langsamer.</li>
<li>Wenn beide Sensoren die schwarze Linie erkennen, dann beide Motoren stoppen.</li>
</ul>
<h2>Video</h2>
<p><iframe title="So baust du einen Line Follower Robot / Linienfolger mit Arduino - Your first DIY robot" width="1200" height="675" src="https://www.youtube.com/embed/p5PLiHRS--Q?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe></p>
<h2>Links</h2>
<h3>Source Code / Diagramm</h3>
<p><a href="https://github.com/jboegeholz/line_follow_robot_tutorial">https://github.com/jboegeholz/line_follow_robot_tutorial</a></p>
<p>&nbsp;</p>
<h3>Winkel für IR-Sensoren</h3>
<p><a href="https://www.printables.com/de/model/695860-ir-sensor-holder">https://www.printables.com/de/model/695860-ir-sensor-holder</a></p>
<p>&nbsp;</p>
<h3>Teile</h3>
<p>bei Roboterbausatz</p>
<p><a href="https://www.roboter-bausatz.de/p/yourdroid-2wd-smart-car-chassis-fuer-diy-roboter">https://www.roboter-bausatz.de/p/yourdroid-2wd-smart-car-chassis-fuer-diy-roboter</a><br />
<a href="https://www.roboter-bausatz.de/p/uno-r3-atmega328p-atmega16u2-board-arduino-kompatibel">https://www.roboter-bausatz.de/p/uno-r3-atmega328p-atmega16u2-board-arduino-kompatibel</a><br />
<a href="https://www.roboter-bausatz.de/p/ir-infrarot-sensor-hinderniserkennung-abstandssensor">https://www.roboter-bausatz.de/p/ir-infrarot-sensor-hinderniserkennung-abstandssensor</a><br />
<a href="https://www.roboter-bausatz.de/p/l298n-motortreiber-mit-doppelter-h-bruecke">https://www.roboter-bausatz.de/p/l298n-motortreiber-mit-doppelter-h-bruecke</a></p>
<p>Bei Amazon (Affiliate-Links)</p>
<p><a href="https://amzn.to/3GchTcS">Chassis 2WD</a></p>
<p><a href="https://amzn.to/4cDFXBk">Arduino-Klon</a></p>
<p><a href="https://amzn.to/3YAEmXe">AZDelivery 3 x IR Infrarot Modul für Hinderniserkennung</a></p>
<p><a href="https://amzn.to/42mm2Uc"> Motor Drive Controller Board-Modul L298N</a></p>
<p><a href="https://amzn.to/3OAO6M3">4x AA Wiederaufladbare Akkus </a></p>
<p>The post <a href="https://creatronix.de/wir-bauen-einen-line-follow-roboter-mit-arduino/">Wir bauen einen Line Follow Roboter mit Arduino</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>How to connect to your ESP32 on macos</title>
		<link>https://creatronix.de/esp32-serial-connection/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Thu, 06 Jan 2022 09:02:04 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<category><![CDATA[esp32]]></category>
		<category><![CDATA[esp8266]]></category>
		<category><![CDATA[screen]]></category>
		<category><![CDATA[tty]]></category>
		<guid isPermaLink="false">https://creatronix.de/?p=4443</guid>

					<description><![CDATA[<p>To find out as what USB device the ESP32 is connected, open Terminal and enter: ls /dev/tty* &#124; grep usb in my case I got /dev/tty.usbserial-14120 Now we can connect via screen: screen /dev/tty.usbserial-14120 115200 When you reset the board you should see something like this configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0030,len:5656 load:0x40078000,len:12696&#8230;</p>
<p>The post <a href="https://creatronix.de/esp32-serial-connection/">How to connect to your ESP32 on macos</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>To find out as what USB device the ESP32 is connected, open Terminal and enter:</p>
<pre><code class="language-bash">ls /dev/tty* | grep usb</code></pre>
<p>in my case I got</p>
<pre><code class="language-bash">/dev/tty.usbserial-14120</code></pre>
<p>Now we can connect via screen:</p>
<pre><code class="language-bash">screen /dev/tty.usbserial-14120 115200</code></pre>
<p>When you reset the board you should see something like this</p>
<pre><code class="language-bash">configsip: 0, SPIWP:0xee
clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
mode:DIO, clock div:2
load:0x3fff0030,len:5656
load:0x40078000,len:12696
load:0x40080400,len:4292
entry 0x400806b0</code></pre>
<p>To end the session in screen, press Ctrl+a, and type <strong>:quit</strong> and press Enter.</p>
<h2>Further Reading</h2>
<p><a href="https://creatronix.de/install-esp32-in-arduinoide/">Install ESP32 in ArduinoIDE</a></p>
<p><a href="https://creatronix.de/using-micropython-on-firebeetle-esp32/">Using MicroPython on FireBeetle ESP32</a></p>
<p><a href="https://creatronix.de/firebeetle-project/">Mailbox IoT ESP 32 Project</a></p>
<p>&nbsp;</p>
<p>The post <a href="https://creatronix.de/esp32-serial-connection/">How to connect to your ESP32 on macos</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Telegram Bot with MicroPython</title>
		<link>https://creatronix.de/telegram-bot-with-micropython/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Fri, 10 Apr 2020 13:34:47 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<guid isPermaLink="false">http://creatronix.de/?p=3199</guid>

					<description><![CDATA[<p>Motivation In my project Mailbox IoT ESP 32 Project I needed a Telegram bot to relay the messages. So here is a short tutorial Create TG bot Open Telegram Search for @botfather Start chat Send /newbot Pick a name Pick a username (must be unique) Receive credentials Chat with your bot Now you can search&#8230;</p>
<p>The post <a href="https://creatronix.de/telegram-bot-with-micropython/">Telegram Bot with MicroPython</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2>Motivation</h2>
<p>In my project <a href="https://creatronix.de/firebeetle-project/">Mailbox IoT ESP 32 Project</a> I needed a Telegram bot to relay the messages.</p>
<p>So here is a short tutorial</p>
<h2>Create TG bot</h2>
<ol>
<li>Open Telegram</li>
<li>Search for @botfather</li>
<li>Start chat</li>
<li>Send /newbot</li>
<li>Pick a name</li>
<li>Pick a username (must be unique)</li>
<li>Receive credentials</li>
</ol>
<h2>Chat with your bot</h2>
<p>Now you can search for your bot&#8217;s name and send a message</p>
<h2>Python test Program</h2>
<p>Telegram has a nice python package which you can pip install</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-bash" data-lang="Bash"><code>pip install python-telegram-bot --upgrade
</code></pre>
</div>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>import telegram 
bot = telegram.Bot(token='&lt;your_token&gt;') 
if __name__ == '__main__': 
    print(bot.get_me()) 
    bot.send_message(chat_id="&lt;your_chat_id&gt;", text="Post ist da")</code></pre>
</div>
<p>This program is just to used to test the connectivity of your bot.</p>
<p>Because we don&#8217;t have access to the telegram package inside the ESP / MicroPython environment we use urequests.</p>
<h2>urequests</h2>
<p>The telegram package isn&#8217;t available on the ESP32 / microPython, so we send our requests with the microPython port of the requests package called urequests.</p>
<h3>Sending messages</h3>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>import urequests
requests.get("https://api.telegram.org/bot&lt;your_token&gt;/sendMessage?text=hallo&amp;chat_id=&lt;your_chat_id&gt;")</code></pre>
</div>
<p>Lets clean up the code a bit:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>try:
    import urequests as requests
except ModuleNotFoundError:
    import requests

TOKEN = "&lt;your_token"
URL = f"https://api.telegram.org/bot{TOKEN}/"
CHAT_ID = "&lt;your_chat_id"

def send_message(text, chat_id):
    url = f"{URL}sendMessage?text={text}&amp;chat_id={chat_id}"
    response = requests.get(url)
    content = response.text
    return content

if __name__ == '__main__':
    print(send_message("Your parcel arrived", CHAT_ID))</code></pre>
</div>
<h2>References</h2>
<p><a href="https://makeblock-micropython-api.readthedocs.io/en/latest/public_library/Third-party-libraries/urequests.html">https://makeblock-micropython-api.readthedocs.io/en/latest/public_library/Third-party-libraries/urequests.html</a></p>
<p>The post <a href="https://creatronix.de/telegram-bot-with-micropython/">Telegram Bot with MicroPython</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>MicroPython uos package</title>
		<link>https://creatronix.de/micropython-uos-package/</link>
		
		<dc:creator><![CDATA[Jörn]]></dc:creator>
		<pubDate>Fri, 10 Apr 2020 11:12:22 +0000</pubDate>
				<category><![CDATA[Electronics & IOT]]></category>
		<guid isPermaLink="false">http://creatronix.de/?p=3210</guid>

					<description><![CDATA[<p>When you are familiar with Python os and platform package You may wonder how to use it on ESP32 in MicroPython. Because this doesn&#8217;t work: &#62;&#62;&#62; os.name Traceback (most recent call last): File "", line 1, in AttributeError: 'module' object has no attribute 'name' &#62;&#62;&#62; import platform Traceback (most recent call last): File "&#60;stdin&#62;", line&#8230;</p>
<p>The post <a href="https://creatronix.de/micropython-uos-package/">MicroPython uos package</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>When you are familiar with Python os and platform package You may wonder how to use it on ESP32 in MicroPython. Because this doesn&#8217;t work:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-bash" data-lang="Bash"><code>&gt;&gt;&gt; os.name
Traceback (most recent call last):
File "", line 1, in 
AttributeError: 'module' object has no attribute 'name'
&gt;&gt;&gt; import platform
Traceback (most recent call last):
File "&lt;stdin&gt;", line 1, in &lt;module&gt;
ImportError: no module named 'platform'</code></pre>
</div>
<h2>UOS for the rescue</h2>
<p>uos is a port of the standard Python packages os and platform to MicroPython.<br />
You can use it by importing the package like this</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>import uos</code></pre>
</div>
<p>One handy function is uname:</p>
<div class="hcb_wrap">
<pre class="prism line-numbers lang-python" data-lang="Python"><code>uos.uname()</code></pre>
</div>
<p>It gives you information about your system in my case about the esp32 and the microPython version:</p>
<p><img decoding="async" class="alignnone wp-image-3216 size-full" src="https://creatronix.de/wp-content/uploads/2020/04/Bildschirmfoto-2020-04-10-um-12.55.02.png" alt="" width="871" height="126" srcset="https://creatronix.de/wp-content/uploads/2020/04/Bildschirmfoto-2020-04-10-um-12.55.02.png 871w, https://creatronix.de/wp-content/uploads/2020/04/Bildschirmfoto-2020-04-10-um-12.55.02-300x43.png 300w, https://creatronix.de/wp-content/uploads/2020/04/Bildschirmfoto-2020-04-10-um-12.55.02-768x111.png 768w" sizes="(max-width: 871px) 100vw, 871px" /><br />
<a href="https://docs.micropython.org/en/latest/library/uos.html">https://docs.micropython.org/en/latest/library/uos.html</a></p>
<p>The post <a href="https://creatronix.de/micropython-uos-package/">MicroPython uos package</a> appeared first on <a href="https://creatronix.de">Creatronix</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
