Sokat gondolkodtam hogyan lehetne kijelzőt használni, mi az ami fontos, és mi az ami csak "sallang" de nem ér semmit.. Arra jutottam kísérletezés közben, hogy el lehet hagyni a LED visszajelzést, mert a kijelzőre lehet írni bármit.. A kijelzéshez olyan drivert kerestem, ami egyaránt tudja kezelni az SSD1306, és az SH1106 kijelző I2C rendszereket. Én az SH1106 mellett döntöttem. Az Eventmanager rész is kihagyható mert külső jelzőként aktív piezo vagy jelgenerátor is megteszi. Ráadásul nem akad össze a kijelző frissítésével. Szerintem nem kell "cifrázni" a visszajelzés gyakoriságát, mert a mai mérőkészülékek több száz méterről képesek megmérni. Mivel másképpen használom a lábkiosztást, ezért csakis I2C kijelzőt használok. El lehet hagyni a térképeknél az irányszöget, mert bebizonyosodott tény, hogy a kapuknál a kamerák a "hátunkat" is figyelik, nem csak előről "kacsintanak"..
Előtérbe került hogy az ESP-nek van egy analóg bemenete, amit fel lehetne használni akksifeszültség mérésére. Ezáltal észlelhető hogy van-e töltés vagy nincs. Aztán dátumot és időt is ki lehet jelezni. Az időnél probléma az "időszámítási eltolódás", de egy kimeneti láb felhasználásával megoldható a pontosítás. Rakható rá hőmérséklet jelző is.
Én feleslegesnek tartom a "tiveda hálózat" létrehozását, mert ha adott az SSID, és jelszó, akkor a készülék felcsatlakozik a hálózatra.
Nem kell automatikusan indítani a felcsatlakozást, ezáltal a készülék hamarabb "tér magához". Viszont ezt is egy kimeneti lábhoz rendeltem. Ez a verzió is frissíti hálózatról a térképet(gombnyomásra), viszont a szoftver frissítését elhagytam. /Ezt a verziót nem tervezem tovább../ Aztán lecseréltem a GPS beépülő modult, mert a régi igen csak az EventManagerre támaszkodott. Készítettem kapcsolási rajzot Wemos D1, és NodeMcu használatával is
Akinek kedve van megépíteni, az láss csodát... mi mindent lehet kihozni ezekből a készülékekből..
Összeszerelés..
Az összeszerelés során alapvetően csak az egyes komponenseket kell a D1 mini, vagy a NodeMcu megfelelő kimeneteire ráforrasztani. Kijelzőként 128x64 pixeles 1.3" LCD-t választottam. De megy a 0.96", vagy a 2.4" -os LCD-ken is. Elvileg némi átírással lekezeli az SS1306 vezérlőt, de én az SH1106 mellet szavaztam. GPS vevőként a V.KEL VK2828U7G5LF modulját tartom a legjobbnak hozzá, de megy G28U7FTTL modullal is. Mindkettő megy 3.3V-5V tápfeszültséggel, de én a G28U... modult lassabbnak találtam. Természetesen motoron elhagyható a hangjelzés. A csipogóról csak anyit, mivel nincs "Ticker" vezérlés, ezért riasztási kimenetnek a D8. láb alacsony szintről magasra emelése a kimeneti jelzés.. Ez egy 1Kohm-os ellenálláson keresztűl meghajta a BC639 tranzisztor bázisát. A +5V és a kollektor kivezetésekhez csatlakoztatható aktív csipogó, vagy hangkeltő áramkör. Azért kell a tranzisztor, hogy a csipogó ne terhelje meg a mikrovezérlő modult.
/ 3 vezetékes aktív csipogónál: + --> +5V, - -->G, I/O --> közvetlen ALERT kivezetésre! /
Feltöltés:
Ide jön a feltőltési szöveg..
uliuliuloiu
éiuloiugozug
kuzkckigtc
Használat:
Figyelem!! Az áramkör szigorúan 5V tápfeszültségről üzemel, a pozitív(+) az 5V jelzésű lábhoz, a negatív(-) a G jelzésű lábhoz kötendő!!
Az elsőnek kijelzett kép információt közöl a térkép meglétéről. Kiolvassa az (SPIFS) tárterület adatait, amiből látjuk hogy a térkép fájl ott "csücsül"-e.. Ez így néz ki: Összes bájt= SPIFS tárterület mérete bájtokban Használt bájt= A térkép fájl hossza bájtokban, /ha 0, akkor nincs térkép../ Blokkméret= Felosztott blokkok száma bájtokban Oldalméret= Felosztott oldal méret bájtokban..
Ha van térkép akkor a rendszer a (Heap) memóriába tölti a térképet /hogy tudjon vele dolgozni../.
Ha nincs térkép, akkor a következő részt átugorja, betolja a főképernyőt.. OTA nyomógomb segítségével a térkép letölthető..
A következő kijelzett kép információ a betöltött térképről. Ez így néz ki: Map version= Térkép verziószáma Load Poi= Hány darab zónapont található /minden zóna 1 mérőhely/ Free Heap= Mennyi maradt a heap memóriából bájtokban
A következő kijelzett kép a főképernyő, amely így néz ki:
A felső sorban baloldalt a jármű serbessége, jobb oldalt az elérhető műholdak száma jelenik meg.
(Itt megemlíteném hogy a rendszer a "háromszögeléses" módszert használja. Minnél több műhold kapcsolódik, annál pontosabbak a mért értékek.)
Középen az aktuális hosszúsági, és szélességi koordinátákat írja a kijelzőre.
Alul bal oldalról indulva a dátum, idő, akksifeszültség került kijelzésre.
Ha belépünk egy Poi zónába a felső sor marad (sebesség, műholdak száma).
Középre nagybetűvel irja hogy TIVEDA, alá kiírja az aktuális szakaszon megengedett sebességet: Limit= xx
A kijelzés 0.5sec időközönként frissül. (Ezalatt feldolgozza az aktuális GPS NMEA infót, és lekérdezi a térkép adatbázist)
A kijelző képfrissítése: az emulált I2C buszrendszer 700KHz dolgozik, ezáltal a frissítés szemmel észrevehetetlen...
Funkciógombok használata:
Ide jön a funkciógombok leírása..
WIFI beállítása
TIVEDA firmware feltöltés
Átírni!!!!
A Wemos D1 mini a CH340 meghajtót igényli. Telepítés után, csatlakoztatáskor egy új COM portot kapunk. Ennek a száma gépenként eltérő lehet, általában a legmagasabb lesz a megfelelő. Az egyes lépések előtt és után a PuTTY terminállal ellenőrizhető az is, hogy az eszköz az elvártak szerint működik. Ha elakadnátok valahol, az itt kiírtak sokat segíthetnek a hiba felderítésében. A firmware feltöltésére végül az Espressif saját programozóját választottam, mert sokkal többet tud mint a többiek.
Tapasztalataim szerint jobb két lépésben feltölteni a firmwaret és a térképet, mint egyszerre.
Firmware: ezt a 0x0000 címre kell írni.
Térkép: ezt pedig a 0x100000 címre.