Archiv der Kategorie: Arduino

Arduino Leonardo mit Problemen bei WebUSB

Ein Arduino Leonardo hat ein eingebautes USB-Interface welches es ermöglicht das Teil als Tastatur oder Maus im PC zu benutzen. Das ist ein recht cooles Feature und klappt auch ohne größere Probleme.

Eine weitere Möglichkeit ist WebUSB welches über Google-Chrome ermöglicht den Leonardo über eine Webseite im Browser zu steuern. Die WebUSB-Schnittstelle emuliert dabei die serielle Console.

Als ich das erste Mal ein Programm mit WebUSB testen wollte, kam ständig die Meldung im Browser “Es wurden keine kompatiblen Geräte gefunden”.

Ein Blick in den Gerätemanager zeigt den Arduino Leonardo als nicht korrekt installiertes Gerät. (Der serielle Port zur Steuerung über die Arduino-IDE ist weiterhin ok und installiert.)

Auf der Suche nach Treibern findet man immer wieder die Hinweise: “Man braucht keinen Treiber.” “Die Treiber kommen in der Arduino-IDE mit.” “Installiere den Treiber im Gerätemanager von Hand über das Arduino-Treiber-Verzeichnis.”

Was soll ich sagen: Alles “Quatsch” in meinem Fall. Hat nicht funktioniert.

Einfache Lösung:

Treiber (WinUSB) von Zadig installieren: https://zadig.akeo.ie/

Dauert etwas, aber danach findet auch mein Windows 8 oder Windows 10-Rechner in Google-Chrome den Arduino Leonardo und die Steuerung des Leonardo klappt problemlos über WebUSB.

Automatische Hühnerklappe mit Arduino

Hühner sind ja recht einfach zu halten wenn man einen großen Garten hat. Sie kommen von alleine aus dem Stall raus und gehen abends bei Dämmerung von selbst in den Stall hinein. Nur auf und zu machen muss man den Stall von Hand (natürlich neben den anderen Arbeiten…)

Gerade im Sommer ist das frühe Aufstehen am Wochenende etwas lästig und im Herbst/Winter findet je nach Arbeitsbeginn/Ende das Ganze immer im Dunkeln statt und etwas Angst vor Raubtieren ist da schon angebracht.

Also “musste” eine Automatik her. Man kann solche Lösungen bereits seit langem kaufen und auch im Internet findet man viele Anleitungen zum Selbstbau. Trotzdem entschied ich mich für eine komplett eigene Lösung. Automatische Hühnerklappe mit Arduino weiterlesen

Siemens Handy als Display

Ein altes Handy kann über RS232-Schnittstelle noch recht nützlich sein. Entweder z.B. einfach zum SMS-Senden oder anrufen, hier gibt es genügend Beispiele im Netz über normale AT-Kommandos. Das klappt auch über einen Arduino. So kann man sich z.B. eine SMS senden lassen wenn irgendein Status eingetreten ist, oder einmal kurz anklingeln.

Ich habe lange gesucht ob es möglich ist auch das Display des Handies zu benutzen und auch das geht über AT-Kommandos. Siemens Handy als Display weiterlesen

Probleme mit digitalem Eingang 13 des Arduino

Ich hatte das Problem, dass ich einen einfachen Taster mit dem digitalen Eingang D13 des Arduino nicht abfragen konnte.

Lösung: Öfter mal die Doku lesen:

http://arduino.cc/en/Tutorial/DigitalPins

Hier steht, dass der Pin etwas schwerer als Eingang zu verwenden ist, da intern eine LED und ein Widerstand schon dran hängen. Deshalb kommt da bei einer lesenden PIN-Abfrage immer ein LOW-Pegel.

Also entweder einen anderen Pin benutzen oder einen externen PullDown-Widerstand zur Masse benutzen.

Probleme mit analogen Eingängen des Arduino

Ein Arduino-Projekt an dem ich gerade bastele übertrage ich gerade vom Breadboard auf das was später das Endprodukt werden soll.

Seltsamerweise kämpfe ich dabei mit ein paar Problemen die ich auf dem Entwicklungsbrett nicht hatte, obwohl ich einen baugleichen Arduino benutze.

So messe ich auf einem analogen Eingang die Spannung einer kleinen Solarzelle, um damit festzustellen wann Dämmerung ist (ich weiß es ginge auch mit einem einfachen Fotowiderstand, aber die Solarzelle hatte ich nun mal gerade zur Hand).

Auf dem Entwicklungs-Arduino hatte ich keine Probleme. Auf dem aktuellen “flattert” aber der Eingang wild hin und her wenn keine Solarzelle angeschlossen ist. Ein super Zufallsgenerator…

Zuerst dachte ich, setze ich den Eingang mit digitalWrite(Eingang,HIGH) auf den eingebauten pullUp-Widerstand, das ist aber kontraproduktiv, da die Solarzelle ja selbst eine Spannung erzeugt. Ein digtalWrite(Eingang, LOW) wird zwar vom Compiler akzeptiert, bringt aber nichts, da der Arduino keinen internen pullDown-Widerstand hat…

Lösung: Ein 1kOhm Widerstand zwischen Masse/Ground und dem Eingang. Dieser externe pullDown-Widerstand sorgt für einen Low-Pegel bei nicht gesteckter Solarzelle und stoppt das ständige Rauschen auf dem Eingang.

Arduino UNO R3 Clone

Momentan bin ich etwas im “Arduino-Fieber” und hatte mir über die Bucht einen sehr günstigen (3€) Klon bestellt, der sich “UNO R3 Atmega328P” nennt.

Im Beschreibungstext steht:

Uses an CH340T  instead of Atmega16U2,but the function has no different

Trotzdem hat es mich einige Stunden gekostet nach Installation der Arduino-Entwicklungsumgebung den ersten Sketch auf das Teil laden zu können.

Zuerst dachte ich, dass es etwas mit meinem Windows 8.1 zu tun hätte, aber schließlich habe ich herausgefunden, dass man als USB-Treiber nicht den “normalen” für “normale” Arduinos nehmen kann sondern einen USB-Treiber für den Chipsatz “CH340” benötigt.

Nach Installation des richtigen Treibers funktioniert das Teil ohne Probleme.

Merke: Wer lesen kann ist klar im Vorteil

Treiber-Download: http://wch-ic.com/download/list.asp?id=73