hiveeyes / hanimandl

HaniMandl ist ein halbautomatischer Honig-Abfüll-Roboter.
https://hanimandl.readthedocs.io/
GNU General Public License v3.0
38 stars 32 forks source link

Pin-Anpassungen für Heltec Lora Devices #15

Open SBajonczak opened 3 years ago

SBajonczak commented 3 years ago

Habe hier die Pinbelegung für Lora Geräte entsprechend angepasst.

Um das Wiring für HELTEC zu verwenden, sollte lediglich das LORAHELTEC Define einfach eingebunden werden.

Das Wiring bzw die zu verwendenten Pins habe ich in der Readme.md definiert.

amotl commented 3 years ago

Hallo Sascha,

vielen Dank fuer Deinen Beitrag. Ich habe ein paar Anmerkungen dazu.

a) Koenntest Du die Aenderungen an den Dateien unter .vscode wieder rausnehmen und dafuer .vscode in die .gitignore-Datei eintragen? So rutschen diese Dateien nicht versehentlich wieder mit in den commit rein.

b) Weitere Kommentare kommen inline.

Viele Gruesse, Andreas.

andreash-esp commented 3 years ago

Wenn ich das recht lese, dann ist mit dieser Änderung der HARDWARE_LEVEL 1 nicht mehr brauchbar für den normalen Heltec!

SBajonczak commented 3 years ago

Hi @amotl habe deine Anpassungen eingefügt.

Ich würde dann auf die Inlinekommentare warten.

@andreash-esp ich hab jetzt den Hardware Level 1 nicht angepasst, weil ich wollte so wenig Eckpunkte wie nur möglich haben. Aber du hast mich auf die Idee gebracht, dort ein ENUM zu verwenden, welches wir in einer Header Datei definieren können.

Generell wäre das bestimmt nett, die Einstellungen in einer Header Datei zu überführen, so dass auch Personen die nicht gleich die Entwickler sind, auch mal Einstellungen vornehmen können.

amotl commented 3 years ago

Hallo Sascha,

herzlichen Dank, ich schau gleich nochmal durch. Unabhaengig davon, dass .vscode nun in der .gitignore steht, sind die entsprechenden Dateien aber immer noch im Patch und muessten per git rm .vscode/* entfernt werden. Danke!

Viele Gruesse, Andreas.

amotl commented 3 years ago

Hallo Sascha,

mit #21 bringen wir nun generellen Multiboard-Support in den Code. So koennen die von Dir gewuenschten Aenderungen bzgl. der Pin-Anpassungen deutlich besser aufgenommen werden, ohne dass wir dafuer separate HARDWARE_LEVEL == 3 oder eigene LORAHELTEC #define-Konstanten einfuehren muessen.

Herzlichen Dank fuer Deinen Impuls.

Viele Gruesse, Andreas.

ClemensGruber commented 3 years ago

Hi Sascha / @SBajonczak, vielen Dank für den Input hier und deinen pull request, Andreas / @amotl hat das zum Anlass genommen die board-Unterstützung grundlegen zu implementieren und dabei auch auf Variablen zuzugreifen die (automatisch) über die board definitions da sind wenn man über den Board-Verwalter die entsprechenden boards installiert, siehe https://github.com/ClemensGruber/hani-mandl/pull/21

Wenn man die Heltec-Boards installiert gibt es vom LoRa-Board zwei Versionen:

welches hast denn du verwendet und weißt du zufällig was da der Unterschied ist?

amotl commented 3 years ago

Hi Sascha,

mit #22 habe ich nun Deine Verbesserungen auf Basis von #21 eingebracht, dabei jedoch nicht zwischen Heltec WiFi LoRa 32 vs. Heltec WiFi LoRa 32 V2 unterschieden.

Vielleicht kannst Du da noch einmal drueberschauen und uns Rueckmeldung geben, ob das so klappen koennte?

Viele Gruesse, Andreas.

andreash-esp commented 3 years ago

Funktioniert das, wenn die Pins 14, 27 und 5 bereits vom Lora-Board verwendet werden? Da steht im Pinout ja explizit "they must not be used for other purposes unless you know what you are doing"

SBajonczak commented 3 years ago

@andreash-esp ich habe den hier im Einsatz. Bisher konnte ich keine Probleme sehen. Aber davon ab, ich verwende auch das Lora Device nicht aktiv. Ich vermute das es zu Problemen kommen wird, wenn man es aktiviert. Das habe ich nämlich mit der originalen Pinbelegung gemerkt. Dann konnte ich den Poti halt nicht gescheit verwenden :)

SBajonczak commented 3 years ago

@ClemensGruber Ich habe den V2 im Einsatz. Genau sowas hatte ich auch schon im Kopf gehabt, wenn Andreas jetzt zuvor gekommen war dann ist das ja perfekt 👍 .

Ich bin nicht sicher, aber wenn ich mir meinen Heltec anschaue hab ich direkt ein Antennenanschluss on board (Antenne lag auch bei).

Wenn ich mit die V1 anschaue (https://www.banggood.com/SX1278-LoRa-ESP32-0_96-Inch-Blue-OLED-Display-bluetooth-WIFI-Lora-Kit-32-Module-p-1238495.html?utm_source=googleshopping&utm_medium=cpc_organic&gmcCountry=DE&utm_content=minha&utm_campaign=minha-de-en-pc&currency=EUR&cur_warehouse=CN&createTmp=1&utm_source=googleshopping&utm_medium=cpc_bgs&utm_content=frank&utm_campaign=frank-ssc-de-css-all-newcustom-ncv90-0623&ad_id=443949120684&gclid=Cj0KCQiA3Y-ABhCnARIsAKYDH7vHkbZc2TwGkZN7hKmqy7O505JTTErCA3_KCv3C-MvArU9rFyLqxNMaAimLEALw_wcB) dann scheint der ein größeren Flashspeicher zu haben als die V2 (https://heltec.org/project/wifi-lora-32/). Wieso man aber in V2 weniger verbaut, ist mir schleierhaft.

ClemensGruber commented 3 years ago

Funktioniert das, wenn die Pins 14, 27 und 5 bereits vom Lora-Board verwendet werden? Da steht im Pinout ja explizit "they must not be used for other purposes unless you know what you are doing"

Wenn es bei Sascha mit der Doppelbelegung funktioniert LoRa-Modul / HaniMandl funktionier ist das schon mal gut, wie verwenden das LoRa-Modul ja nicht was elektronisch passiert wenn wir das LoRa-Modul nicht per Software initialisiert haben weiß ich nicht. Input-Pins des LoRa-Moduls sollten kein Problem sein, wenn wir dei ebenfalls als Heltec output nutzen, ausser wir triggern damit irgendwas was wir nicht wollen. output des LoRa-Moduls, die erratisch dann doch einen impuls abgeben könnten für uns problematisch sein, wenn bei uns da z.B. ein Taster dranhängt und das (LoRa-Modul-)Signal dann fälschlicherweise als Tastendruck interpretiert wird. Sicher ist es auch nicht gut für die Hardware wenn wir auf einen output vom LoRa-Modul einen output des HaniMandl legen und den mit Signalen / Strom beschießen. Daher ist der Hinweis "unless you know what you are doing" schon ganz gut und wir sollten da nochmal genau schauen, falls du, Sascha / @SBajonczak das nicht schon getan hast. Der Heltec mit dem LoRa-Modul ist für den HaniMandl immer nur eine Notlösung und für Leute gedacht, die nur an das Board rankommen oder einfach falsch bestellt haben und nicht nochmal drei Wochen auf die nächste Lieferung warten möchten.

andreash-esp commented 3 years ago

Der Heltec mit dem LoRa-Modul ist für den HaniMandl immer nur eine Notlösung und für Leute gedacht, die nur an das Board rankommen oder einfach falsch bestellt haben und nicht nochmal drei Wochen auf die nächste Lieferung warten möchten.

Da wäre ich vorsichtig. Wenn der LORA im stable-Code drinsteht, dann wird das auch als "offiziell unterstützte" Hardware gesehen. Vermutlich passiert wirklich nix, wenn man die LORA-Hardware nicht anspricht, aber ich kann auf jeden Fall von mir nicht behaupten, dass ich wüßte, was ich da tue :-)

SBajonczak commented 3 years ago

Das kann ja alles gut sein.

Aktuell läuft es ja mit dem v2 Heltect. Ich bin mir nicht sicher, ob ihr Lora noch verwenden wollt, Jedoch würde es ja keinen verünftigen Grund haben 😊.

Daher gehe ich mal davon aus das es sann weniger eine Rolle spielt. Es sei denn jemand verwendet die Quellen und kombiniert das mit was anderem. Doch dann ist es ja wieder nicht mehr supported oder?

Derzeit ist es halt ein Benefit, man muss es ja nicht aufnehmen. Kann das auch bei mir belassen und Anpassungen vom main übernehmen. Mir hat es halt geholfen, Daher wollte ich es halt contributen 😊