F
FunDroid
Neues Mitglied
- 38
Hallo HAL9000,
Hier mal ein etwas techniklastiger Erklärung:
Die Standardkonfiguration für Taster ist, dass sie gegen Gnd (Masse) schalten wenn sie gedrückt werden und dass der Pegel des Tasters von einen Pull-Up-Widerstand gegen die IO-Spannung z.B. 3,3V gezogen wird wenn der Taster nicht gedrückt ist. So hat der Digitaleingang entweder "high" über den Pull-Up, erkennt also auf "nicht gedrückt" oder "low" wenn der Pegel über den Taster auf Masse gelegt wird, was als "gedrückt" erkannt wird.
Störungen fängt man sich um so leichter ein, je hochohmiger der Pull-Up ist. Würde man den Pull-Up Widerstand z.B. im Megaohm-Bereich wählen, dann würden schon kleinste Störungen z.B. durch 2G den Pegel zappeln lassen, da die Leitung aufgrund der nun hohen Impedanz wie eine Antenne wirkt. Wenn man den Pull-Up-Widerstand sehr klein wählen würde (nur einige Ohm), dann würde man beim Schalten einige Energie verbrauchen und den Taster unnötig belasten.
Das Optimum liegt irgendwo dazwischen (einige kOhm).
=> Im Zuge immer höherer Funktionsdichte und immer höherer Integration wurde in den meisten Controllern die Funktion der externen Pull-Up-Widerstände in den Controller verlagert und man kann z.B. für ein und denselben Pin wählen, ob er ein:
Analogeingang,
Digitaleingang,
Digitalausgang,
PWM-Ausgang,
etc. sein soll. Das kostet ein paar µmm^2 Fläche im Controller, spart aber die Bestückung von zwei SMD-Bauteilen und wertvollen Platz auf der Leiterplatte ein.
Typischerweise lässt sich für einen Digitaleingang dann auch noch wählen, ob man die Pull-Ups im Controller (die keine klassischen Widerstände mehr sind, sondern Stromquellen, da sich das leichter in Silizium fertigen lässt als wirkliche Widerstände) aktivieren will - und je nach Controller auch noch, wie "stark" (störunempfindlich) die Pull-Ups sein sollen. Darüberhinaus kann wiederum je nach Controller auch noch festgelegt werden, wie die Pull-Ups sich in den diversen Stromsparmodi verhalten soll, die jeder moderne Controller so hat. Um Energie zu sparen kann es z.B. sinnvoll sein, die Pull-Ups zu deaktivieren wenn man die Taster ohnehin nicht einlesen will, etc.
=> All die oben beschriebenen Einstellungen (letztlich quasi Hardwarekonfigurationen) werden rein per Software vorgenommen.
Die korrekte Konfiguration der Hardware-IO ist keine Raketenwissenschaft - aber der Teufel kann hier im Detail stecken. So kann es z.B. durch Leckströme passieren, dass selbst bei versehentlich nicht aktivierten Pull-Ups die Taster in störarmer Umgebungen einwandfrei funktionieren und niemand bemerkt, dass ein Konfigurationsfehler vorliegt.
Bis - ja bis der Roll-Out kommt und jemand in einem aus Sicht eines Koreaners fernen und exotischen Land (wie z.B. UK/DE) mit 900 MHz 2G-Netz telefoniert und merkt, dass nun Störungen auftreten.
Ich will Samsung hier nicht in Schutz nehmen - soetwas gehört im Vorfeld getestet, aber es ist im Gegensatz zur aktuell vorherrschenden Meinung im Forum keinesfalls sichergestellt, dass es ein Hardwarefehler ist, der ausschließlich durch ein Hardwareupdate grundlegend gefixt werden kann und dass jeder Fix in Software maximal ein "Pflaster" sein kann, das den Fehler kaschiert.
Gruß,
FunDroid
Bis auf den Teil "nicht korrekt entstört" 100 % Zustimmung.HAL 9000 schrieb:Dieser tatsächlich möglichen, aber sehr unwahrscheinlichen Variante steht die jetzt schon schlüssig erklärbare gegenüber, dass die Bauteile nicht korrekt entstört sind und dass eben der Lautstärke-Taster bzw. die Leiterbahnen dahin eine "Antenne" für 900 MHz bilden und damit einen Tastendruck vorgaukeln. Dass die Anzeige in den Videos so hin- und herspringt erklärt sich dadurch, dass quasi 900-mal pro Sekunde der Taster "gedrückt" wird.
Das ist ohne nähere Kenntnis der Hardware frei geraten und keinesfalls an Sicherheit grenzende Wahrscheinlichkeit. Es gibt einige SW-Fehler, die sich in genau dieser Weise äußern und die man per SW-Update korrigieren kann.HAL 9000 schrieb:Wirklich behoben ist das zugrunde liegende Problem damit aber nicht, das geht nur durch Hardware-Änderungen, weil es sich mit an Sicherheit grenzender Wahrscheinlichkeit um ein Hardware-Problem handelt.
Hier mal ein etwas techniklastiger Erklärung:
Die Standardkonfiguration für Taster ist, dass sie gegen Gnd (Masse) schalten wenn sie gedrückt werden und dass der Pegel des Tasters von einen Pull-Up-Widerstand gegen die IO-Spannung z.B. 3,3V gezogen wird wenn der Taster nicht gedrückt ist. So hat der Digitaleingang entweder "high" über den Pull-Up, erkennt also auf "nicht gedrückt" oder "low" wenn der Pegel über den Taster auf Masse gelegt wird, was als "gedrückt" erkannt wird.
Störungen fängt man sich um so leichter ein, je hochohmiger der Pull-Up ist. Würde man den Pull-Up Widerstand z.B. im Megaohm-Bereich wählen, dann würden schon kleinste Störungen z.B. durch 2G den Pegel zappeln lassen, da die Leitung aufgrund der nun hohen Impedanz wie eine Antenne wirkt. Wenn man den Pull-Up-Widerstand sehr klein wählen würde (nur einige Ohm), dann würde man beim Schalten einige Energie verbrauchen und den Taster unnötig belasten.
Das Optimum liegt irgendwo dazwischen (einige kOhm).
=> Im Zuge immer höherer Funktionsdichte und immer höherer Integration wurde in den meisten Controllern die Funktion der externen Pull-Up-Widerstände in den Controller verlagert und man kann z.B. für ein und denselben Pin wählen, ob er ein:
Analogeingang,
Digitaleingang,
Digitalausgang,
PWM-Ausgang,
etc. sein soll. Das kostet ein paar µmm^2 Fläche im Controller, spart aber die Bestückung von zwei SMD-Bauteilen und wertvollen Platz auf der Leiterplatte ein.
Typischerweise lässt sich für einen Digitaleingang dann auch noch wählen, ob man die Pull-Ups im Controller (die keine klassischen Widerstände mehr sind, sondern Stromquellen, da sich das leichter in Silizium fertigen lässt als wirkliche Widerstände) aktivieren will - und je nach Controller auch noch, wie "stark" (störunempfindlich) die Pull-Ups sein sollen. Darüberhinaus kann wiederum je nach Controller auch noch festgelegt werden, wie die Pull-Ups sich in den diversen Stromsparmodi verhalten soll, die jeder moderne Controller so hat. Um Energie zu sparen kann es z.B. sinnvoll sein, die Pull-Ups zu deaktivieren wenn man die Taster ohnehin nicht einlesen will, etc.
=> All die oben beschriebenen Einstellungen (letztlich quasi Hardwarekonfigurationen) werden rein per Software vorgenommen.
Die korrekte Konfiguration der Hardware-IO ist keine Raketenwissenschaft - aber der Teufel kann hier im Detail stecken. So kann es z.B. durch Leckströme passieren, dass selbst bei versehentlich nicht aktivierten Pull-Ups die Taster in störarmer Umgebungen einwandfrei funktionieren und niemand bemerkt, dass ein Konfigurationsfehler vorliegt.
Bis - ja bis der Roll-Out kommt und jemand in einem aus Sicht eines Koreaners fernen und exotischen Land (wie z.B. UK/DE) mit 900 MHz 2G-Netz telefoniert und merkt, dass nun Störungen auftreten.
Ich will Samsung hier nicht in Schutz nehmen - soetwas gehört im Vorfeld getestet, aber es ist im Gegensatz zur aktuell vorherrschenden Meinung im Forum keinesfalls sichergestellt, dass es ein Hardwarefehler ist, der ausschließlich durch ein Hardwareupdate grundlegend gefixt werden kann und dass jeder Fix in Software maximal ein "Pflaster" sein kann, das den Fehler kaschiert.
Gruß,
FunDroid