Nokia 5800 und m-shell Erfahrungsaustausch

Diskutiere Nokia 5800 und m-shell Erfahrungsaustausch im Nokia 5800 Forum Forum im Bereich Nokia Symbian Forum; Hallo Forumsteilnehmer, radelrama hat ja in diesem Thread die Script-Sprache fuer Symbian m-shell vorgestellt. Dafür noch einmal recht herzlichen...
I

Inse60

Junior Mitglied
Threadstarter
Mitglied seit
06.06.2010
Beiträge
47
Standort
Land Brandenburg
Modell(e)
Nokia 5800 NE (RM-356) PC 0586819
Netzbetreiber
Tchibo (O2)
Firmware
60.0.003
PC Betriebssystem
XUbuntu (Linux)
Hallo Forumsteilnehmer,

radelrama hat ja in diesem Thread die Script-Sprache fuer Symbian m-shell vorgestellt. Dafür noch einmal recht herzlichen Dank. Über Erfahrungen mit diesem Tool würde ich mich gern mit euch austauschen. Mir geht es dabei besonders um Scripte für das 5800 und seine Hardware.

Kurze Zusammenfassung aus dem anderen Thread:

radelrama schrieb:

verwirrendes DC oder OS oder gar nix

Es geht um Berechtigung, konkret: Willst Du zB die Funktion net.stop() aufrufen (beendet Internet-Verbindung), dann brauchst Du dafuer die hoechste Berechtigung. Das geht nur mit der DC... Also nimm' DC...

soviele Dateien welche Datei/Komponenten nehmen?
1xUmgebung (zu englisch Environement): Das sind Module mit spez. Funktionen, zB Modul audio, Modul sms
1xmShell selber, das ist die Kommandozeileneinheit, d.h. der Interpreter und der Kompilierer (hier kannste aus Deinem Code zB test.m ein test.mex generieren. Auf mShell Homepage dann auf "Make SIS" klicken, test.mex einfuegen und schon haste Dein installierbare .SIS Prograemmchen erstellt). Die mShell Skripts sind in !:\documents\mShell (am Anfang ist es einfacher ins E: zu installieren, weil man so problemlos auf E:\documents zugreifen kann).
1xmViewer, denn hab'i'ned installiert, den kannste sein lassen...

schlussfolgern wir also logisch: signiere und installiere
mEnvironment-S60-5th-DC
mShell-S60-5th-DC
dann starte mShell
sende einmaliges SMS zur Gratis-Registrierung
View, Properties, Permissions, stelle dort alles auf Yes
so, ready um mShell voll und ganz auszukosten.
radelrama schrieb:

source-code blinktest:


Code:
use audio,light;              // wir brauchen hier zumindest light, weil wir weiter unter funktionen aufrufen
app.show(0xa0000ccf);         // zeige uns selber, ist unsere uid, ist frei erfunden [sollte man nicht]
print "Targets:", light.targets(); // drucke auf Konsole Ergebnis von light.targets()
sleep(10000);                 // schlafe 10 sekunden
i=1;                          // setze variable auf eins
do                            // do-until (zu deutsch mach dies solange..) schleife
  try                         // try (zu deutsch versuche), sehr wichtig in mShell, falls es einen Fehler gibt....
    light.blink(i);           // blinke momentaner Wert i
    print i;                  // drucke i auf Konsole
    sleep(9000);              // schlafe 9 sekunden
    light.reset();            // setze alle lichter zurueck
  catch e by                  // ...dann gehts beim Fehler hier weiter, wir fangen ihn also ab resp. kontrollieren ihn
    ;                         // mach gar nix bei einem fehler
  end;                        // ende try
  i=2*i;                      // verdopple wert von i
until i<=256;                 // ende do-until (..solange bis i kleiner gleich 256)
print "Done and done!";       // drucke "Done and done!" auf Konsole
sleep(20000);                 // schlaf zu guter Letzt noch glatte 20 sekunden
Es wird also die schleife solange durchlaufen und i verdoppeln bis es <= 256 ist. dann geht er zur schleife raus und beendet nach 20sekunden-dornroeschen-schlaf. mDaemon's Skelett besteht aus solchen schleifen und mDaemon braucht fast alle module (use ui, app, audio, gsm, system, net, phone, sms, mms, light, vibra, io...
Ich hoffe es ist in Ordnung das ich das hier zusammenfasse und die Form etwas angepasst habe. Wenn nicht bitte melden.

Als erstes Projekt würde ich mit euch gern einen "Radiowecker" basteln.
Interessant ist auch die Frage ob man den Stromverbrauch und die Prozessorauslastung des Telefons kontrollieren kann.

Martin, der eigentlich des programmierens mächtig ist (Delphi, ein wenig C und Java) nur mit Englisch so seine Probleme hat
 
Zuletzt bearbeitet:
M

MrPotter

Mitglied
Mitglied seit
22.10.2009
Beiträge
193
Modell(e)
Nokia 5800 XM
Netzbetreiber
Vodafone
Firmware
52.0.007
Radiowecker klingt gut ... woher du diese geniale Idee nur her hast :)

Ich bin in der letzten halben Stunde mal über die Docs geflogen ... Allerdings weiß ich nicht, wie ich am besten auf meinem Rechner entwickle, da mir eine Entwicklungsumgebung fehlt ... oder habe ich da etwas übersehen?

Lg, MrPotter
 
R

radelrama

Mitglied
Mitglied seit
24.01.2010
Beiträge
81
Modell(e)
Nokia 5800
Firmware
V51.0.006
MrPotter hat den Zauberstaub zu schwingen vergessen :-)

Mit Notepad oder Text-Editor machst Du Textdateien mit Endung .m, diese dann auf !:\documents\mshell kopieren, mShell selber starten und schon siehst Du Dein Skript. Doppeklick drauf und Go/Compile...

Ach und betr. Radiowecker noch folgende Idee meinerseits (zu bewerkstelligen mit app.key):
* starten
* einige Male Volume- Knopf senden, Vol. geht runter
* nun Optionen aufmachen, 5. unterster Eintrag anwaehlen und Lautsprecher einschalten
* nun in einer Schleife alle 500ms oder so einmal Volume+ Knopf senden. Hier koennte man eine vom Benutzer definierte Variable setzen: Wieviele Male Vol+...

sog. Fade-In im Neudeutsch... Man koennte auch sagen: Sanft aufwachen :-)



PS: Im Anhang Liste der Tasten und deren Scancode (Parameter von app.key)
 

Anhänge

Zuletzt bearbeitet:
M

MrPotter

Mitglied
Mitglied seit
22.10.2009
Beiträge
193
Modell(e)
Nokia 5800 XM
Netzbetreiber
Vodafone
Firmware
52.0.007
MrPotter hat den Zauberstaub zu schwingen vergessen :-)
Das habe ich natürlich bereits versucht, leider ohne Erfolg :)

Ich danke dir für deine Instruktionen und Ansätze für die Umsetzung unserer Idee. Allerdings finde ich es auf Dauer ganz schön unkomfortabel nach jeder kleinen Codeänderung mein Script auf das Handy zu transferieren um es da zu testen. Wenn ich nämlich mit Linux das Mobiphone mounte, dann wird auf diesem der Zugriff auf die Speicherkarte verweigert, sodass ich nach dem Kopieren wieder erst aushängen müsste, um dann festzustellen, dass meine Codeänderung doch nicht so sinnvoll war.

Wie ich gesehen habe, gibts leider auch keine vernünftige Symbian Emulation. Hiermot hätte man die Entwicklung ganz auf den Rechner verlagern können. Ich lass mir die Tage mal was einfallen ... :)

Lg
 
R

radelrama

Mitglied
Mitglied seit
24.01.2010
Beiträge
81
Modell(e)
Nokia 5800
Firmware
V51.0.006
Nach'm Daemon geht's wie geschmiert mit mShell, hier nochmal 'ne Hilfe.

Anbei ein Skelett eines Radioweckers....
 

Anhänge

I

Inse60

Junior Mitglied
Threadstarter
Mitglied seit
06.06.2010
Beiträge
47
Standort
Land Brandenburg
Modell(e)
Nokia 5800 NE (RM-356) PC 0586819
Netzbetreiber
Tchibo (O2)
Firmware
60.0.003
PC Betriebssystem
XUbuntu (Linux)
Danke, zwei Dinge waren für mich wichtig.

Ich hatte die Tasten nur gedrückt und nicht losgelassen und ich habe sie direkt an das Radio geschickt.
Außerdem musste ich meine Version noch signieren. Nun erschließen sich auch die verschiedenen Dateien.

Wenn alles klappt werde ich morgen mit Musik geweckt. :thumbs:

Martin
 
M

MrPotter

Mitglied
Mitglied seit
22.10.2009
Beiträge
193
Modell(e)
Nokia 5800 XM
Netzbetreiber
Vodafone
Firmware
52.0.007
Wow, super! Hab den Code noch etwas angepasst und optimiert. Außerdem den gewünschten Fade-Effekt eingebaut. Werde das ebenfalls testen und die App morgen hochladen.
 
I

Inse60

Junior Mitglied
Threadstarter
Mitglied seit
06.06.2010
Beiträge
47
Standort
Land Brandenburg
Modell(e)
Nokia 5800 NE (RM-356) PC 0586819
Netzbetreiber
Tchibo (O2)
Firmware
60.0.003
PC Betriebssystem
XUbuntu (Linux)
Nun ich wurde nicht mit Musik geweckt, aber das wusste ich vorher.

"Tastatureingaben" akzeptiert das Telefon nur wenn es entsperrt ist. Vor den normalen Tasten muss also der Schieberegler nach unten gezogen werden. Keycode 179.

Martin
 
padrinoX

padrinoX

Profi Mitglied
Mitglied seit
10.06.2010
Beiträge
547
Modell(e)
Nokia C6-01 Silver (PC: 059C1C7)
Firmware
V012.006.02.01
Hi,

ich glaub meine Basic-Zeiten sind zu lange her und waren evtl. auch zu "basic" ;)
Wenn ich die Scripte lese, werd ich traurig, dabei war damals beim Abi Informatik meine einzige "1"... :(

CU,
Mario
 
Zuletzt bearbeitet:
R

radelrama

Mitglied
Mitglied seit
24.01.2010
Beiträge
81
Modell(e)
Nokia 5800
Firmware
V51.0.006
Vor den normalen Tasten muss also der Schieberegler nach unten gezogen werden. Keycode 179.
Martin
nicht noetig, ist vorgesehen:

if system.lock() then // gesperrt?
system.lock(false); // entsperren
end;
 
I

Inse60

Junior Mitglied
Threadstarter
Mitglied seit
06.06.2010
Beiträge
47
Standort
Land Brandenburg
Modell(e)
Nokia 5800 NE (RM-356) PC 0586819
Netzbetreiber
Tchibo (O2)
Firmware
60.0.003
PC Betriebssystem
XUbuntu (Linux)
Warum einfach wenn kompliziert auch geht. ;)

Schön wäre es wenn man die Tastencodes direkt bei gesperrtem Telefon zur entsprechenden Anwendung schicken könnte. Das ist ja vorgesehen nur scheinen diverse Tasten (Lautstärke, Lautsprecher an usw.) nicht zum Radio zu gehören.
Es ist noch Forschungsarbeit nötig. :)

Martin
 
R

radelrama

Mitglied
Mitglied seit
24.01.2010
Beiträge
81
Modell(e)
Nokia 5800
Firmware
V51.0.006
Schön wäre es wenn man die Tastencodes direkt bei gesperrtem Telefon zur entsprechenden Anwendung schicken könnte. Das ist ja vorgesehen nur scheinen diverse Tasten (Lautstärke, Lautsprecher an usw.) nicht zum Radio zu gehören.
Hey Martin,

Und leider kann man auch kein Beruehren des Bildschirms on Position x simulieren...
Schau' mal bei ui.keys rein, da kannste die Tasten abzufangen. Die absolut geniale Option ui.raw geht ned bei mir, leider... Es geht, wenn ich mich recht erinnere, auch nur wenn die Konsole angezeigt wird.
Mittels ui.keys koennte man rausfinden, welcher Tastencode die Knoepfe denn haben....



GEHT
use ui,audio;
ui.keys(ui.strokes);
do
c=ui.cmd();
print "Du hast Taste mit Scancode",c,"gedrueckt";
audio.beep(); audio.wait();
until c=ui.gokey;

GEHT NED
use ui;
ui.keys(ui.strokes | ui.raw ); // dabei waere ui.raw so genial
do
c=ui.cmd();
print "Du hast Taste mit Scancode",c,"gedrueckt";
audio.beep(); audio.wait();
until c=ui.gokey;


In der ganzen Thematik mit den Tasten ist bei 'nem 5800er eine virtuelle Tastatur sehr nuetzlich, zb sowas
Virtual Keyboard 0.9.4 Mod.Unsigned
 
M

MrPotter

Mitglied
Mitglied seit
22.10.2009
Beiträge
193
Modell(e)
Nokia 5800 XM
Netzbetreiber
Vodafone
Firmware
52.0.007
Gerade wollte ich meine Version zum testen rausgeben, da stelle ich fest, dass ich massive Schwierigkeiten beim Erstellen der SIS Datei habe.

Klar, wir arbeiten ohne Zertifikate, das macht die Sache besonders schwierig.
Zur Info: mein 5800 ist gehackt mit laufendem Install Server RP+. Dies setze ich als Voraussetzung für die Anwender; alternative wäre das manuelle Signieren.

Aber trotzdem schaffe ich es nicht, meine erstellte SIS Datei mit der mEnvironment zu installieren. Bei der Installation der mEnvironment gibt es immer ein "Installation nicht möglich. Beschränkt durch Zertifikat".

Wenn ich die SIS ohne mEnvironment installiere, erscheint zwar das Programmicon in Menü. Aber wenn ich draufklicke, passiert nichts, da eben die Environment fehlt.

Welche Optionen beim Erstellen der SIS führen mich zum Ziel?

Lg, MrPotter
 
M

martinp.

Newbie
Mitglied seit
28.08.2009
Beiträge
6
Modell(e)
Nokia 5800 (PC 0578313)
Netzbetreiber
callmobile (D1)
Firmware
51.0.006
Ähm, ich will euch ja nicht den Spaß verderben - so 'n Radiowecker wär schon was :)
Aber habt ihr berücksichtigt, dass zum Starten der Radio-App das Headset-Kabel angeschlossen sein muss?
Außerdem: wenn das Equipment nur bis zur Fernbedienung (also ohne Kopfhörer) verwendet wird, ist der Lautsprecher sofort aktiviert und die entsprechende Option taucht meines Wissens auch gar nicht mit auf.

Mein Vorschlag wäre ein Prüfen, welches Equipment angeschlossen ist (falls das geht?) und dann ggf. Lautsprecher zu aktivieren bzw. wenn gar nichts angeschlossen ist, auf eine herkömmliche oder sogar frei wählbare Audiodatei zurückzugreifen. Wenn's euch gefällt, könntet ihr euch ja auch mehrere Radiosendungen aufnehmen und per Zufall auswählen lassen ;-)

Viel Erfolg weiterhin!
 
R

radelrama

Mitglied
Mitglied seit
24.01.2010
Beiträge
81
Modell(e)
Nokia 5800
Firmware
V51.0.006
Aber trotzdem schaffe ich es nicht, meine erstellte SIS Datei mit der mEnvironment zu installieren. Bei der Installation der mEnvironment gibt es immer ein "Installation nicht möglich. Beschränkt durch Zertifikat".
Optionen beim Erstellen:
mEnvironement Inclusion: STATIC
Signing: DON'T SIGN
Autostart: wie de willst
Capability Set: CERTIFIED [ist maximum, da geht zB auch net.stop()]

Hab' NIE die Sis mit der env. drinne installiert, auch nie ausgetestet, denn bei mir ist Environement im Z:\ schon fest drinne...
Bei Dir sollte zumindest gehen:
1. Environement installieren
2. Deine .SIS (ohne Environement) installieren
 
I

Inse60

Junior Mitglied
Threadstarter
Mitglied seit
06.06.2010
Beiträge
47
Standort
Land Brandenburg
Modell(e)
Nokia 5800 NE (RM-356) PC 0586819
Netzbetreiber
Tchibo (O2)
Firmware
60.0.003
PC Betriebssystem
XUbuntu (Linux)
Also ich wurde heute morgen mit Musik geweckt. :) Nun muss die Bedienfreundlichkeit verbessert werden und es treiben sich in meinem Kopf noch weitere Möglichkeiten rum.

Eine *.sis Datei würde ich erst erstellen wenn alles zur vollsten Zufriedenheit funktioniert. Der Vorteil eines Scriptes ist doch das man auf dem Telefon mal schnell was ändern und testen kann. Zum probieren nutze ich teilweise auch die Shell.

Ob das Haedset eingesteckt ist wird geprüft, ohne Headset startet das Radio ja nicht. Ob es auch funktioniert wenn man nur eine "Antenne" einsteckt muss noch geprüft werden. Welcher Kontakt des Steckers wird eigentlich als Antenne benutzt? Mein Headset kann ich nicht auseinander bauen, alles ist eingegossen (Stecker, Mikrofon und Hörer).

Martin
 
M

MrPotter

Mitglied
Mitglied seit
22.10.2009
Beiträge
193
Modell(e)
Nokia 5800 XM
Netzbetreiber
Vodafone
Firmware
52.0.007
RadioAlarm v0.32

So, nun ist es endlich so weit. Meine erste Version zum Testen ist fertig. Perfekt ist das Tool noch nicht, aber dafür funktionsfähig. Ich wurde heute erfolgreich geweckt. Trotzdem sollte dieses Tool noch nicht in der praxis eingesetzt werden, es könnte noch zu Ausfällen/Fehlern kommen.

Zur besseren Übersicht (da ja z.B noch an einer anderen Version gearbeitet wird), geht's zumindest für meine Version in diesem Thread weiter.

Thx radelrama für die Instruktionen zur Erstellung der SIS. Hatte es durch vieles rumprobieren dann auch geschafft. Hoffe nur, dass das alles so funktioniert ... Dazu eine Frage: muss jede Version eine neue UID tragen? Ich hatte bei einem Versionsupdate mit derselben UID erhebliche Probleme. Musste mir daher eine neue generieren lassen.

Viele Grüße
MrPotter
 
Zuletzt bearbeitet:
padrinoX

padrinoX

Profi Mitglied
Mitglied seit
10.06.2010
Beiträge
547
Modell(e)
Nokia C6-01 Silver (PC: 059C1C7)
Firmware
V012.006.02.01
@inse60

Haste ein Klinke-Cinch-Kabel für eine DigiCam z.B?
Steck das mal an und auch damit wirste Musik hören können. :)
Ein ein stereo kline auf cinch sollte es tun.

CU,
Mario
 
R

radelrama

Mitglied
Mitglied seit
24.01.2010
Beiträge
81
Modell(e)
Nokia 5800
Firmware
V51.0.006
Leides Thema: mShell und Profile.

Unbegreiflicherweise kann man mit mShell das aktuell gewaehlte Profil ned herausfinden. Weder hier noch zB system.hal gehen, keine Moeglichkeit..! Wie soll man denn herausfinden, ob das Skript leise sein soll? :confused:

Als Abhilfe ueberlege ich mir, mit sog. Gestures zu arbeiten, d.h. aufgrund der Position des Handys im Raum (siehe Modul accel). Es gibt wohl bald ein Update zu mDaemon... ;)

Anbei ein Skelett einer accel-Abfrage, druckt jeweils die Koordinaten auf die Konsole. Mir ist bewusst, dass die ganze Umwandlung der Koordinaten sehr unschoen programmiert ist, ich hasse jedoch Arrays und verweigere mich des Moduls array... ... Jeder hat seine Macken...

use accel;
while true do

curacc=str(accel.get());
tmp1=index(curacc, ",");
tmp2=rindex(curacc, ",");
xacc=num(substr(curacc,1,tmp1-1));
yacc=num(substr(curacc,tmp1+1,tmp2-tmp1-1));
zacc=num(substr(curacc,tmp2+1,len(curacc)-tmp2-2));
print "x:", xacc, "y:", yacc, "z:", zacc;

sleep(1000);
end;
 
M

MrPotter

Mitglied
Mitglied seit
22.10.2009
Beiträge
193
Modell(e)
Nokia 5800 XM
Netzbetreiber
Vodafone
Firmware
52.0.007
Hier gibts nen NMI-Modul für deinen Wunsch. Allerdings hat es da anscheinend noch niemand unter der Version 5 zum laufen gebracht. Daher würde ich den Rat befolgen und die Anwendung mit der aktuellen SDK neu kompilieren.

Wenn mal Zeit ist, werde ich mich dem auch widmen.

m-shell.net

Lg, MrPotter
 
Thema:

Nokia 5800 und m-shell Erfahrungsaustausch

Nokia 5800 und m-shell Erfahrungsaustausch - Ähnliche Themen

  • Will das Nokia 5800 updaten auf v60 funktioniert nicht

    Will das Nokia 5800 updaten auf v60 funktioniert nicht: Ich hab das Nokia 5800 schon seit es heraus gekommen ist und benutze es schon seit 12 Jahren weil ich das Handy noch in guten Zustand ist und weil...
  • Nokia 5800 Zertifikatsfehler

    Nokia 5800 Zertifikatsfehler: Sehe geehrtes Forum, habe kürzlich ein Nokia 5800 geerbt und festgestellt das die Firmware Nr. 50.0.005 ist und eine Zertifikatüberschreitung...
  • wie kann ich Überspielen die Inhalte von Nokia 5800 auf Samsung S4 mini

    wie kann ich Überspielen die Inhalte von Nokia 5800 auf Samsung S4 mini: wie kann ich Überspielen die Inhalte von Nokia 5800 auf Samsung S4 mini?
  • Failed to create file - whatsapp

    Failed to create file - whatsapp: Also. Mein 'Whatsapp’ geht nicht mehr seit ich versucht hatte ’spotify’ herunterzuladen, was den ganzen C-Speicher austrocknete und es dann hiess...
  • Ähnliche Themen
  • Will das Nokia 5800 updaten auf v60 funktioniert nicht

    Will das Nokia 5800 updaten auf v60 funktioniert nicht: Ich hab das Nokia 5800 schon seit es heraus gekommen ist und benutze es schon seit 12 Jahren weil ich das Handy noch in guten Zustand ist und weil...
  • Nokia 5800 Zertifikatsfehler

    Nokia 5800 Zertifikatsfehler: Sehe geehrtes Forum, habe kürzlich ein Nokia 5800 geerbt und festgestellt das die Firmware Nr. 50.0.005 ist und eine Zertifikatüberschreitung...
  • wie kann ich Überspielen die Inhalte von Nokia 5800 auf Samsung S4 mini

    wie kann ich Überspielen die Inhalte von Nokia 5800 auf Samsung S4 mini: wie kann ich Überspielen die Inhalte von Nokia 5800 auf Samsung S4 mini?
  • Failed to create file - whatsapp

    Failed to create file - whatsapp: Also. Mein 'Whatsapp’ geht nicht mehr seit ich versucht hatte ’spotify’ herunterzuladen, was den ganzen C-Speicher austrocknete und es dann hiess...
  • Sucheingaben

    mshell

    ,

    nokia 5800 shell

    ,

    mshell Script

    ,
    5800 shell
    , nokia 5800 m, installation nicht möglich beschränkt durch zertifikat, nokia rm 356 radio app installieren, installieren shell 5800, Nokia 5800 RM 356 FW 52.0.007 unsignierte Programme instalieren, http://www.usp-forum.de/nokia-5800-forum/60548-nokia-5800-m-shell-erfahrungsaustausch.html, wie kann ich tastencode bei 5800 machen ?, nokia 5800 konsole, download mEnvironment-s60-5th-dc, installation nicht möglich. beschränkt durch zertifikat e72, mvnc symbian 2.0 5800, 5800 shell ui, nokia 5800 virtual keyboard v0.94, mshell nokia, nokia installation nicht möglich beschränkt durch zertifikat, m-shell light.blink, mshell nokia n8, Script Shell nokia 5800, m-shell, nokia m 5800, m-shell 5800
    Oben