Boop geflasht, nichts geht ?

Begonnen von maselx, 02. Okt 2012, 08:55

« vorheriges - nächstes »
Nach unten

chefpro

Hallo femto,

hast du mal eine gebaute Version zum testen.
Der Source wäre auch gut.

Ich würde gerne die Oszi Software anpassen und mit Deiner Vorarbeit sollte ich das am Wochenende schaffen.

Danke, Peter

chefpro

Hallo femto,

hab gesehen, dass da schon eine gebaute Version ist von Dir.

Ich war nicht eingeloggt und konnte das nicht sehen.

Der Source wäre trotzdem schön.

Vielen Dank, Peter

femto

Hi Peter,

sorry. hatte diese Woche tierisch viel zu tun, aber ich schau mal das ich heute Abend die automatische Umschaltung eingebaut bekomme ...

Gruss,

~ Hans-Dieter ~

Telekatz


Generell sehe ich zwei Wege: entweder wir verwenden die eine Matrix für alle Versionen unter 3 und die andere für alle ab 3 oder wir zeigen bei allen Versionen außer 02 und 03 eine entsprechende Meldung an. Letzteres würde dem "principle of least surprise" entsprechen, weil jemand, der Boop auf eine andere HW-Version flasht (falls es solche wirklich gibt), eine klare Ansage bekommt, vorausgesetzt, die Display-Ansteuerung ist gleich, aber man könnte die Meldung ja auch zusätzlich noch seriell ausgeben.


Du kannst davon ausgehen, dass bei Hardwareversion <=2 die Swisscom Matrix und bei Hardwareversion >=3 die andere Matrix verwendet wird.

Es scheint so, als ob es noch mindestens eine Hardwareversion 4 geben müsste. Die hat aber einen anderen Displaycontroller. Eine Ausgabe auf dem Display würde da nicht funktionieren. Diese Version war aber vermutlich nie im Umlauf.

femto


Du kannst davon ausgehen, dass bei Hardwareversion <=2 die Swisscom Matrix und bei Hardwareversion >=3 die andere Matrix verwendet wird.


Ok, soll ich das so einbauen?

Und wie sieht es im Fehlerfall aus, soll ich trotzdem versuchen eine Warnung auf dem Display auszugeben?

Telekatz

Bau das so ein und lass die Warnung auf dem Display weg. Die ist unnötig.

Torsten

Hi,

ich habe meine Pollin-Betty jetzt mit dem hier angehängten ROM geflasht. Leider funktioniert bei mir das Tasten-Kreuz (um den OK-Button) nicht sauber. Hoch und Runter werden teilweise nicht angenommen oder als Links/Rechts interpretiert.
Tritt das nur bei mir auf oder ist das ein bekannter Fehler?

Gruß
  Torsten

swausd

Hallo Torsten,

dieses Verhalten habe ich auch beobachtet. Bei mir tritt es auf, wenn ich die Tasten fest durchdrūcke. Wenn nur leicht gedrückt wird, funktionieren sie zuverlässiger.

Gruß

Siegfried

Torsten

Hi,

ein bischen besser geht es dann, aber eine Lösung ist das nicht. Die Frage ist jetzt, ob das ein HW-Problem ist, oder ob man das per SW lösen kann.
Habe die original-FW leider nicht genug ausprobiert, deswegen weiß ich nicht, ob das Problem schon vor dem Flashen vorhanden war.

Gruß
  Torsten

Axel

#24
20. Nov 2012, 23:23 Last Edit: 21. Nov 2012, 23:26 by Axel
Hallo,

hier mal mein erster Beitrag.

Es gibt m. Meinung nach einen Fehler im keyirq.c

Es muss heissen:
#ifdef SWISSCOM
        IOSET2= (126<<18);   // Alle Port 2 Ausgaenge physikalisch auf 1 setzen
        IO2_P = (1<<18);      // In IO2_P ist jeweils ein Bit gesetzt  (erstmal das auf pin 18)
        IO2_0=0;           // Wird zum shiften von keys[0] verwendet
        IO2_1=0;
        keys[0]=0;
        keys[1]=0;
        for(IO2_PC=18;IO2_PC<=24;IO2_PC++)     // Durch alle P2 durch jeweils ein P2 bit loeschen, Wert abfragen und wieder setzen
        {
                        IOCLR2 = IO2_P;       // Physikalisch clearen eine Leitung wird gelöscht
                        keys[0] |= ((IOPIN1>>16) & 0xF)<<IO2_0;     // Resultat an Pin1 abfragen default is all one (no key pressed)
                        keys[1] |= ((IOPIN1>>21) & 0x3)<<IO2_1;     // Resultat an Pin1 abfragen (obere hälfte)
                        IO2_0 +=4;     // nun das Resultat schiften
                        IO2_1 +=2;     // nun das Resultat schiften
                        IOSET2 = IO2_P;        // Nun wieder setzen, alle P2 sind wieder 1
                        IO2_P = (IO2_P<<1);
        }
        IOCLR2 = (127<<18);     // P2 Ausgaenge wieder alle löschen
        keys[0]= (~keys[0]) & 0x0fffffff;       // Resultat ist jetzt invertiert
        keys[1]= (~keys[1]) & 0x00003fff;
#else

d. h. die letzten beiden Zeilen vor dem #else waren falsch. So wie es vorher war, (also mit   keys[0]= (~keys[0]); ) konnte keys niemals 0 werden, so dass die Tastaturentprellung in den späteren Zeilen nicht vernünftig funktioniert hat.

So scheint es bei mir jetzt zu gehen (zumindest das Kreuz, Rest muss ich noch mal testen).

Gruss
Axel

0xDEAD

Hallo Axel,

wäre es möglich dass Du dein Rom-Image zur Verfügung stellst, ich habe nämlich genau das selbe Problem.

Gruß,
0xDEAD

maselx

Ich hatte das mit den tasten als normal abgestellt  :)
Es wäre natürlich schöner wenn es besser geht.

Axel

#27
22. Nov 2012, 20:05 Last Edit: 22. Nov 2012, 22:54 by Axel
Bitte schön.

Allerdings habe ich festgestellt, dass das das Problem nicht löst. Dafür löst es das Problem, dass die IR Signale nicht stoppen. Ich hatte bei einigen beide Probleme.

Das Problem mit dem Kreuz kann man lösen, indem man den Ausschnitt in der schwarzen Abdeckung mit einem Messer etwas (also so 1/4 mm) vergrössert, so dass das "Kreuzteil" der Gummiplatte mehr Platz hat. 

Übrigens findet man unter LIRC neue Fernbedienungen für x10  (das ist eine Fernbedienung, die über Funk und USB Empfänger an den PC geht ) sowie Tevion (Aldi Funksteckdosen). Bei der Tevion kann man über Lautstärke  und Programm jeweils Steckdosen für A und B steuern. 

Sources stelle ich zur Verfügung, sobald die ausreichend getestet sind.

Gruss
Axel

0xDEAD

Hallo Alex,

erstmal Danke! - mit der X10 Funktion hast Du einen Wunsch erfüllt, den ich noch gar nicht geäusert hatte!

aber leider funktioniert das mit den Tasten bei meinen beiden Bettys noch nicht zuverlässig - ab und zu werden immer noch Menüeinträge übersprungen, oder der Tastendruck wird gar nicht erkannt.

Gruß, 57005

Axel

Wie ich schon schrieb, gibt es zwei Probleme.

1. Die Führung der Wippe/Kreuz ist zu eng. Dadurch kippt der Ring nicht und drückt nur einen der vier Knöpfe, sondern man drückt mit dem "Unten" Knopf praktisch diesen ganzen Ring runter, so dass die anderen Knöpfe auch Kontakt bekommen. Bei mir habe ich das gelöst, indem ich mit einem Messer die Öffnung für den Ring, der das Kreuz bildet, etwas vergrössert habe, so dass der tatsächlich kippt und nur den einen Knopf aktiviert, auf den man drückt. Ich habe vier Bettys, das Problem trat bisher bei zweien auf, bei einer nicht. 

2. Die Software hat den oben erwähnten Bug, der dazu führt, dass die Erfassung der Knöpfe nicht richtig funktioniert. Bei mir hat das teilweise dazu geführt, dass die Sendesequenz nie gestoppt hat. Ob das auftritt, hängt aber anscheinend auch vom verwendeten IR-Code ab.

Gruss
Axel

Nach oben