fritzler-avr.de
Feuerwehrtelefon

Vor einem halben Jahr kam der Firefighter aus dem Quadfreunde Berlin Forum auf mich zu. Ich soll ihm ein Gerät bauen, welches angerufen werden kann und dann anzeigt wer angerufen hat und wann. Wozu das Ganze? Wenn bei der freiwilligen Feuerwehr ein Notruf eingeht, kann nicht jeder kommen und so kann wertvolle Zeit vergehen indem auf jemanden gewartet wird, der nicht kommen kann. Deshalb soll jeder der kommen kann dieses Gerät anrufen somit wissen diejenigen, die schon auf der Wache sind ob es sich lohnt zu warten oder nicht.

Auf dem Display werden die ersten 14 Anrufer angezeigt, sowie einige Systemmeldungen wie Kalenderdaten, Netz, Empfang und Firmwareversion. Weiterhin ob ein USB Kabel angeschlossen ist und/oder die Übertragung aktiv ist. Bei den Anrufern wird die Uhrzeit angezeigt, sowie die Telefonnummer, hat diese Nummer einen Eintrag im Telefonbuch wird der dazu passende Name angezeigt. Manche unterdrücken ihre Handynummer (es wird unbekannt angezeigt), diese können auch eine SMS an das Gerät senden, denn dort gibt es keine Unterdrückung. Zusätzlich blitzt eine helle LED auf, wenn ungesichtete Anrufe eingegangen sind, durch einmaliges drücken auf die Resettaste, hört das blinken auf. Kommen weitere Anrufe herein blitzt die LED wieder, bei 2 maligen betätigen werden die Anrufe gelöscht. Das Gerät wird noch in ein Spritzwasser geschütztes Gehäuse eingebaut und dann in der Fahrzeughalle an der Wand befestigt.

Hier nun ein paar Daten:

Nun zur Hardware: Um die Kommunikation zum Handy GSM Netz kümmert sich das SIM900D GSM Modul von SIMCOM, dieses ist einfach per UART anzusteuern und recht günstig. Den Hauptprozessor bildet ein ATmega16, da dieser nur ein UART besitzt musste ein 2. in Software aufgespielt werden, trotzdem teilen sich Displaycontroller und GSM Modul einen UART. Der Software UART wird einfach über 2 Transistoren für denjenigen der grade nichts Empfangen soll Taubgestellt. Der Hardware UART hängt am FT232 um den USB Anschluss bereit zu stellen, der Hardware UART wird hier wegen dem Bootloader benötigt. Da das GSM Modul mit 3,3V auf dem UART arbeitet und der ATmega mit 5V mussten noch Spannungsteiler eingebaut werden. Als Display wird ein Controllerloses von Pollin verwendet (das hier), mit 320x240 Pixeln. Es kann allerdings jedes 320x240 Grafikdisplay mit 4 bit Ansteuerung verwendet werden. Es verlangt meistens dann nur eine andere Kontrastspannung. Als Displaycontroller wird ein ATmega8 verwendet, auf diesem werkelt der Displaytreiber von Benedikt K (guckst du hier) Oben rechts befinden sich dann noch die Spannungswandler für die 4V des GSM Modul, die 5V der ATmega und die 17V Kontrastspannung des Displays. Leider passte kein 3. Schaltwandler auf die Platine, daher werden die ATmega durch einen 7805 besaftet, der sich merklich erwärmt. Mit einem weiteren Wandler könnte man die Leistungsaufnahme sicherlich in den 1W Bereich drücken. (todo für Version2?). Eigentlich war noch eine Batteriepufferung vorgesehen konnte aber aus Platzgründen nicht Implementiert werden, daher wird Version 2 komplett SMD. Zu beachten ist, dass der Pixeltakt des Displays 3MHz beträgt, daher sollte hier unbedingt ein 50 Ohm Widerstand direkt an den Takteingang des Displays in Reihe zum Kabel gelötet werden.

Zur Software: Bei der Software habe ich diesmal einen kleinen Hardware Abstraktion Layer eingebaut damit nicht nach IO Prozeduren im Gesamten Programm gesucht werden muss bei Layoutänderungen. Dieser HAL verteilt unter anderem die UART Bytes an den richtigen Empfänger und führt sonstige Zugriffe auf die Prozessorpins aus. Der HAL ruft als Bibliotheken nurnoch die beiden UARTs auf. Das Hauptprogramm greift nur auf die Display und GSM Bibliothek zu, welche vom HAL von der Hardware abgekoppelt sind. Es sind also große Hardwareänderungen möglich ohne das Hauptprogramm zu verändern, zB das Display über I²C ansteuern oder eine leichte Portierung auf einen anderen ATmega. Die Simkarte sollte vorher mithilfe eines Handys von der PIN befreit werden, da dies von der Software noch nicht Unterstützt wird. Das Bespielen des Telefonbuchs der SIMkarte erfolgt über eine PC Software.

Datenblatt SIM900D
AT Befehle SIM900D
Datenblatt ATmega8
Datenblatt ATmega16
Datenblatt E8504CZZ
Datenblatt FT232RL
Datenblatt MC34063
Datenblatt 7805
Download Schaltplan/Layout
Download SIM300D/900D Eagle Library von ComWebNet

Software für Hardwareversion 1.2:

Download Firmware v0.5b
PC Kommunikationsfunktionen umgeschrieben und Bug beim Telefonbucheinträge löschen entfernt.

Software für Hardwareversion 1.1:

Download Firmware v0.5b
PC Kommunikationsfunktionen umgeschrieben und Bug beim Telefonbucheinträge löschen entfernt.

Download Firmware v0.4b
Genauso wie v0.3b, nur mit Funktionen zur Zusammenarbeit mit der PC Software.

Download Firmware v0.3b
Erste stabile Version, zeigt den Empfang als Grafik an und nicht mehr als Zahl. Es wird eine Weile klingeln gelassen vorm Auflegen, damit der Anrufer weis, dass er durchkam.

PC Software ist bisher für alle Hardwareversionen:

Download PC Software v1.2
Firmwarupdate jetzt mit XON/XOFF zur Sicherheit, kleine Konsole zum rumspielen. Bug behoben der auftritt wenn direkt nach dem Fimwareupdate Telefonbucheinträge editiert werden.

Download PC Software v1.1
PC Software zum Nummern auslesen/speichern von Datei oder Gerät, Firmwareupdate und Zeit Einstellen.
Erst ab Firmware 0.4b nutzbar. Die Firmwaredatei wird nun automatisch heruntergeladen.

Download PC Software v1.0
PC Software zum Nummern auslesen/speichern von Datei oder Gerät, Firmwareupdate und Zeit Einstellen.
Erst ab Firmware 0.4b nutzbar.

Das Gehäuse ist wasserdicht und schlicht gehalten. Der Resetknopf und die Alarmluchte reichen. Auf dem Gehäuse ist noch eine GSM Antenne angebracht für besseren Empfang. Weiterhin bootet das Gerät auch ohne Empfang.

Wie würde man nur ohne Heißkleber überleben?

Inzwischen gibt es Version 1.2 der Hardware. Es wurde einfach der Displaycontroller auf eine Extraplatine ausgelaget um verschiednene Displays nutzen zu können.

Home

Kontakt - Haftungsausschluss - Impressum