Python für OLED Display, 2 Buttons und Relaisesteuerung

Python auf Einplatinencomputer wie Raspberry Pi, Banana Pi / Python für Micro-Controller
Antworten
Troi
User
Beiträge: 3
Registriert: Donnerstag 9. Februar 2023, 14:51

Hallo zusammen,

ich versuche seit geraumer Zeit einen vorgegebenen, fertigen Code (Python) für ein ebenso vorgegebenes Projekt zum laufen zu bringen.
Aufgrund von geringen Abweichungen im Projekt muss ich den Code etwas abändern.
Nachdem ich heute das 4te mal die SD Karte fürs Raspberry neu aufsetzen musste, will ich doch lieber mal mein Glück in einem Forum versuchen, bevor das gute Stück noch in Flammen aufgeht.
Ich gebe es offen zu, ich bin total überfordert und hätte nicht gedacht, dass es doch so komplex wird. Daher erbitte ich euren Rat :)

Wahrscheinlich komme ich direkt mit einem zu großen Ganzen um die Ecke, daher bitte ich im Vorfeld um Entschuldigung und Nachsicht.
Für alle diejenigen, die aus Langeweile ihre kostbare Zeit mit einem Neuling opfern wollen, können gerne weiterlesen.
Die anderen sollten bitte direkt hier aufhören. :o
---------------------------------------------------------------------------------------------------------------------------------
Also, wo fange ich an....
Ich bin Mitglied in einem kleinen Dorfverein und wir wollten gerne aufgrund eines Youtube-Videos einen Cocktailautomaten bzw. Bartender nachbauen.
Der Link dazu ist hier:
Youtube: https://www.youtube.com/watch?v=2DopvpNF7J4&t=6s
HP: https://www.hackster.io/hackershack/sma ... der-5c430e
Github: https://github.com/HackerShackOfficial/Smart-Bartender

Ziel ist es mittels zwei Buttons über ein OLED-Display vorgegebene Programme anzusteuern, welche dann Relais bedienen, die wiederum 6 Schlauchpumpen ansteuern.
Dazu werden fertige Codes bereitgestellt.

Jetzt haben wir so gut wie alle Teile besorgt und wollten das Herzstück, den Raspberry mit der entsprechenden Software programmieren.
Der Raspberry läuft, die Software (bartender.py über Python) nicht.
Der Grund: Anderes OLED Display (I2C), neue Software, und keine Ahnung was noch bevorsteht.
Ich bin derzeit dabei den vorhandenen Code etwas abzuändern, da ich andere Anschlüsse auf dem OLED habe (SDA, SCK, GND, VDD anstatt 7) und unseres mit I2C läuft und auch einen anderen Controller (SH 1106) hat. Im fertigen Projekt waren es 7 Adern, Controller SSD1306 und dazu eine Steuerung zum Reset und DV des OLEDs.
Dazu habe ich alles was mit der LED Beleuchtung zu tun hat aus dem Code gelöscht, da wir diese nicht einsetzen.
Für mich sieht das so aus, als könnte ich den ganzen Code nicht gebrauchen, da hier an zu vielen Stellen das OLED eine Rolle spielt.

Was meint ihr, wäre es sinnvoller ein anderes Display zu kaufen, welches mit dem Code kompatibel ist oder lässt sich der Code wirklich anpassen?
Dazu kommt noch, das vorhandene Software oder Dateien nicht geladen werden können. Vermutlich ist das alles bereits veraltet oder nicht mehr vorhanden.
Wie bereits gesagt, dass ist für unser Team komplettes Neuland. Darauf waren wir nicht vorbereitet... :shock:
Natürlich würden wir sehr gerne das Projekt zu enden bringen.
Also falls sich hier wirklich ein Programmierer finden würde, der einige Tipps zu dem vorhandenen Code hätte, wären wir sehr, sehr dankbar und stehen für alle Fragen offen.

Grüße Troi
__deets__
User
Beiträge: 14543
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ohne konkrete Fehlermeldungen wird es schwer mit der Hilfestellung. Und salopp gesagt: alles anders machen wollen, aber nicht wissen wie, ist eine unguenstige Kombination. Da die Displays ja nun wirklich nicht die Welt kosten, wuerde ich dazu raten, ein passendes zu erstehen. Und ich wuerde auch keinen Code loeschen. Die LEDs sollten keine negativen Effekte haben (alle die ich kenne arbeiten mit einer reinen "fire-and-forget"-Logik. Da gibt es keinen Fehler, wenn die nicht angeschlossen sind).

Und zu guter Letzt ist das ein uraltes Projekt. Oder vielleicht auch zu schlecher Erst, denn die oben angesprochene Investition lohnt sich ggf nur, wenn auch andere Projekte die nutzen - die gibt es ja durchaus reichlich, ich wuerde nach einem suchen, dass noch aktiv maintained wird. Denn das Projekt basiert auf dem inzwischen nicht mehr unterstuetzten und Python 2.7, und Teile des Codes basieren auf etwas, dass gaugette heisst. Sehe ich aber nicht, woher das kommt. Und wer weiss was noch so alles nicht passt.

Das hier https://github.com/AndreWohnsland/CocktailBerry hat noch letzte Woche Aenderungen erfahren. Das sieht *deutlich* sinnvoller aus.
Troi
User
Beiträge: 3
Registriert: Donnerstag 9. Februar 2023, 14:51

Vielen Dank schonmal für die schnelle Rückmeldung.
Ich musste die LED Sache entfernen, weil die sich auf Teile (DotStar) bezogen, die nicht vorhanden waren.
Genau ist es mit gaugette. Das habe ich dann irgendwo unter github gefunden und geladen. Das bezieht sich auf die OLED Schnittstelle.

Der Link gefällt mir gut. Die Bestandteile habe ich sogar fast alle.
Leider habe ich das Gehäuse nun schon fertig, aber evtl. bringt es mehr Erfolg neu mit der anderen Sache anzufangen.
Schonmal vielen Dank dafür :)
__deets__
User
Beiträge: 14543
Registriert: Mittwoch 14. Oktober 2015, 14:29

Ah, dafuer war diese Bibliothek. Das ist natuerlich dann was anderes.

Ich wuerde es mir wirklich ueberlegen. Ich vermute du kannst das andere Projekt zB ohne den Screen, aber mit einem normalen Monitor einfach mal ausprobieren. Und so abschaetzen, was geht. Es war im uebrigen auch nur eines der ersten, dass ich gefunden habe. Doch dieses uralte Ding sollte einfach nicht die Grundlage sein.
Troi
User
Beiträge: 3
Registriert: Donnerstag 9. Februar 2023, 14:51

Das sieht wirklich alles up to date aus. Dementsprechend sollte das auch um einiges besser funktionieren.
Zur Zeit läuft mein Raspberry über den VNC Viewer und wenn das Tablet oder Monitor im o. a. Projekt über HDMI angeschlossen werden kann ohne den Code anzupassen (was man auf dem ersten Blick so sieht) umso besser.

Beim alten Projekt habe ich mir Gedanken um die Software gemacht, hier würde ich mir jetzt nur Gedanken um das Gehäuse machen... :)
Antworten