Ankündigung

Einklappen
Keine Ankündigung bisher.

Neues aus der Enertex Werkstatt

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • enertegus
    antwortet
    Zitat von Jambala Beitrag anzeigen
    Chartbuffer -> Basis für eine sich bewegende Betrachtung ohne Wertesprünge beim Tageswechsel?
    Ja, das ist dann einfach möglich.
    256 Darstellungwerte -> heisst der Buffer kann 65k und die 256 Werte können frei wählbar nach Vorgabe des gewünschten Zeitfensters aus dem Buffer angezeigt werden? Wäre damit mit einem Slider das Betrachtungsfenster im Chart beweglich?
    genau das ist das Ziel, wobei das Chart auch eine Art Unterabtastung der Werte vornehmen kann.
    Höhe: heute gibt es Charts mit Breite von 2 Elementen und Höhe von 1 Element (Single) bzw. Breite von 2 Elementen und Höhe von 2 Elementen (Double) -> was bedeuten die neuen Grössen konkret?
    Das ist noch nicht endgültig festgelegt, wir müssen uns das erst live anschauen.
    Farbe: Ich vermisse eine Vorgabemöglichkeit für die Farben der Kennlinie, also neben Style und Beschriftung noch Farbe
    Hm, muss ich mal nachdenken.
    Überschriften und Texte können jetzt bis 128 Zeichen lang sein -> klasse
    Der dynamische Text auch.
    Line: sind feste Tabulatoren passend zu dem Rasterformat der Webelemente möglich? Dies wäre in Zusammenhang mit line Überschriften sehr hilfreich. Also z.B. Line 1,$Chart Keller$ 3,$Chart Garten$
    bisher nicht.Wir diskutieren das mal.
    Legende: Bitte berücksichtigen, dass diese heute oft teilweise die Kennlnie verdeckt
    Ich kenn das Problem, blos kenn keine echte Lösung.
    Chart-Buffer: Wird dieser automatisch vor einem Neustart in den Flash geschrieben?
    nee, dass soll mit der strore-Funktion dem Anwender überlassen werden.
    Es wird auch ein Texteingabe-Element für den Webserver geben, am Textoutput (1400 Zeichen) arbeiten wir noch.

    Einen Kommentar schreiben:


  • Jambala
    antwortet
    Wahnsinn, mehr als 13h kein Puls auf dem Thema ...

    Ohne Screenshots ist Deine Beschreibung natürlich etwas schwer verdaubare Kost, aber ich versuche mich in einem spontanen Feedback zu den Chart Funktionen:

    2 Y-Achsen möglich mit unterschiedlicher Skalierung -> klasse

    min/max Vorgabe -> klasse

    Chartbuffer -> Basis für eine sich bewegende Betrachtung ohne Wertesprünge beim Tageswechsel?

    256 Darstellungwerte -> heisst der Buffer kann 65k und die 256 Werte können frei wählbar nach Vorgabe des gewünschten Zeitfensters aus dem Buffer angezeigt werden? Wäre damit mit einem Slider das Betrachtungsfenster im Chart beweglich?

    Höhe: heute gibt es Charts mit Breite von 2 Elementen und Höhe von 1 Element (Single) bzw. Breite von 2 Elementen und Höhe von 2 Elementen (Double) -> was bedeuten die neuen Grössen konkret?

    Farbe: Ich vermisse eine Vorgabemöglichkeit für die Farben der Kennlinie, also neben Style und Beschriftung noch Farbe

    Überschriften und Texte können jetzt bis 128 Zeichen lang sein -> klasse

    Line: sind feste Tabulatoren passend zu dem Rasterformat der Webelemente möglich? Dies wäre in Zusammenhang mit line Überschriften sehr hilfreich. Also z.B. Line 1,$Chart Keller$ 3,$Chart Garten$

    Legende: Bitte berücksichtigen, dass diese heute oft teilweise die Kennlnie verdeckt

    Chart-Buffer: Wird dieser automatisch vor einem Neustart in den Flash geschrieben?

    Viele Grüße

    Michael

    Einen Kommentar schreiben:


  • Uwe!
    antwortet
    puh! viel Neues! Das muss man mal in Ruhe ausprobieren, aber ich glaube das wird sehr gut!

    Einen Kommentar schreiben:


  • enertegus
    antwortet
    Teil II

    Hier mal wieder etwas PseudoCode für die Möglichkeiten der Zeitreihen. Ich mach mir nix vor: Es wird die nächsten 45 Minuten sicherlich 20 Anmerkungen geben
    • "Das bräuchte ich aber dann doch etwas anders"
    • "Da hast Du zuviel versprochen"
    • "So bringt das gar nix"
    • "Das muss aber alles für umsonst sein"
    • "Der XYZ kann das viel besser"

    So damit steht das schon mal da, braucht keiner zu wiederholen.

    Die Möglichkeiten, die sich mit dem Code unten auftun, werden für das "visuelle Loggen" im EibPC-Webserver sicher schon erheblich erweitert.
    Code:
    [WebServer]
    page(1)[$$,$TD$]
    design $black$
    // Sämtliche Beschriftungen sollen mindestens 128 Zeichen enthalten dürfen
    // Element picture
    // Neu: der Typ HALF (halbes Seiten und Höhenverhältnis zu double)
    picture (ID) [HALF,CENTERGRAF]($Label$,$www-LINK$)
    
    
    /// Zeitchart: Optional 2 Achsen (eine links, eine rechts)
    ///            Style: 0 für Ausgabe auf linke, 1 für rechte Achse 
    ///            Typ:   0 für autoscale der linken Achse , in diesem Fall wird YLMAX etc. ignoriert.
    ///            Typ:   1 für autoscale der rechten Achse , in diesem Fall wird YLMAX etc. ignoriert.
    ///            Typ:   2 für autoscale der beiden Achsen
    ///            Typ:   3 für kein autoscale
    ///            Jeder Graf wird mit einem Chartbuffer verlinkt (s.u.)
    ///            Len:  Die Anzahl der Punkte, welche das Chart aus dem Timebuffer darstellen kann (max. 256)
    mtimechart(24) [Hoehe, Typ,256, YLMAX,YLMIN,YRMAX,YRMIN] ($Beschriftung1$,Style1,$Beschriftung2$,Style3,$Beschriftung3$,Style3, $Beschriftung4$,Style4)
    
    // Überschriften und Texte können jetzt bis 128 Zeichen lang sein
    pbutton(2)[2] $Textfchndjkfhdhfkdjshfkjsdhfklsdhvjksed789436zp9fzsdlfhv3tezfp97zwövchxhnvr3w8r6zfwazhdv,scnvlks$
    [EibPC]
    xd=2.0f32
    
    Hoehe=0
    Typ=2
    Len2=256u16
    YLMAX=2.3
    YLMIN=-85.3
    YRMAX=4.0
    YRMIN=6.0
    Style1=0
    Style2=1
    Style3=0
    Style4=1
    
    // Gibt die Anzahl der verstrichenen Millisekunden seit Jan 1, 1970 00:00 an. 
    // Datentyp u64
    x=utctime()
    
    
    // configtimebuffer: Einen Zeitbuffer konfigurieren
    // Typ : Datentyp u08
    //       0 Ringspeicher 
    //       1 Linearer Speicher 
    // Len : Datentyp u16
    //       0 bis 65364u16
    // Datatyp: Wie werden die Daten interpretiert, z.B. 0f16, s32 etc.
    // Ein Zeitbuffer kann max 4 Bytes an Daten pro Sampling aufnehmen 
    // (siehe addtotimebuffer). d.h. alle Datentypen bis f32 oder u32
    //
    // Der Zeitbuffer besteht dabei immer aus Wertepaar UTC-Zeitstempel plus Wert
    // siehe bei addtotimebuffer
    ChartBuffer1=0
    ChartBuffer2=1
    ChartBuffer3=2
    ChartBuffer4=3
    Len=4000u16
    MemTyp=0
    Datatyp=3.3f32
    timebufferconfig(ChartBuffer1, MemTyp, Len, Datatyp)
    timebufferconfig(ChartBuffer2, MemTyp, Len, 2b04)
    timebufferconfig(ChartBuffer3, MemTyp, Len, 1s32)
    timebufferconfig(ChartBuffer4, MemTyp, Len, 1f16)
    
    if mtime(0,15) then {
       //
       // addtotimebuffer: Einen Wert eintragen (Zeitstempel wird automatisch generiert)
       //
       timebufferadd(ChartBuffer4,'1/2/3'f16);
    } endif
    
    status=0
    
    /// Bearbeiten des Puffers und das Schreiben auf das Flash.
    if htime(0,0,0) then {
       /// Den Buffer auf das Flash schreiben
       // Zuweisung erfolgt asynchron
       // status (Erfolg = 0 / Verarbeitung = 1 / Fehler = 2)
    
       status= timebufferstore(ChartBuffer3);
       /// Den Buffer vom Flash lesen
       // Zuweisung erfolgt asynchron
       // status (Erfolg = 0 / Verarbeitung = 1 / Fehler = 2)
       status= timebufferread(ChartBuffer1);
    } endif
    
    
    Zeit=$$
    Value=0.0
    Value2=0s32
    t=0u64
    tExakt=0u64
    Pos=0u16
    if htime(0,0,0) then {
       t=utc($2012-09-03-20-00-17$);
    
       // Wert zurückgegeben, der zum Zeitpunkt t0=<t im Speicher steht
       // tExakt wird von der Funktion auf den Wert in utc-Tics modifiziert,
       // an dem der Wert tatsächlich im Speicher stand
       status=timebufferValue(ChartBuffer1,t,Datatyp,tExakt);
       status=timebufferValue(ChartBuffer3,t,Value2,tExakt);
       status=timebufferValue(ChartBuffer4,t,Value,tExakt);
    
    
       // Füllstand des Puffers abfragen
       Pos=timebuffersize(ChartBuffer1);
    
    } endif
    
    
    ID=0
    ChartNo=2
    StartPos=01u16
    EndPos=400u16 
    PageID=3
    if htime(1,1,1) then {
       //
       // Nur einen Ausschnitt aus dem Puffer darstellen:
       // Maximal können 256 Punkte im Chart dargestellt werden. Sollte 
       // mehr als diese Anzahl gewählt werden, kann eine Komprimierungsstrategie gewählt werden
       // 
       // Die Kurve ChartNo (u08) nur in
       // den Punkten StartPos, EndPos zeichnen
       // bei EndPos==65365u16 wird das Chart auf die jeweils letzten Daten zeigen
       mtimechartpos(ID,ChartIdx,ChartNo,StartPos,EndPos);   
    
       /// zwischen zwei Zeiten 
       /// Ende kann in der Zukunft liegen
       mtimechart(ID,ChartIdx,ChartNo,utc($2012-09-03-20-00-17$),utc($2012-12-31-20-00-17$));   
    } endif
    
    Strategy=1
    ChartIdx=0
    
    if stime(0) then {
      // ein update an die Visu-darstellung (shared mem im Chart) schicken
      //   
      // Dabei steht ChartIdx für den Index des Grafen im Chart, ChartNo für den Zeitpuffer
      //
      // Strategy==0  Wenn mehr als 256 Punkte mit mptimechartpos bzw. mptimechart
      //              ausgewählt wurden, dann nimm nur die letzten Werte
      // Strategy==1  Wenn mehr als 256 Punkte mit mptimechartpos bzw. mptimechart
      //              ausgewählt wurden, dann nimm nur die ersten Werte
      // Strategy==2  Wenn mehr als 256 Punkte mit mptimechartpos bzw. mptimechart
      //              ausgewählt wurden, dann nimm nur jeden n-ten Wert (n so, dass die 
      //              die Anzahl der Punkte ins chart passt)
      timechartupdate(ID,ChartIdx,ChartNo,Strategy);
    } endif

    Einen Kommentar schreiben:


  • albatros
    antwortet
    Zitat von enertegus Beitrag anzeigen
    Apropos Doku: Wir haben auch schon ernsthaft überlegt, ob man eine Art Programmierhanduch "EibPCs für Dummies" auf dem Markt bringt - aber ich habe Euch schon vorher "Abzocke!!!" schreien hören....
    Also ich fände so ein Buch eine sehr gute Idee. Euer YouTube Kanal geht ja schon in diese Richtung. Nur dass man dafür ja nichts verlangen "darf".

    Gruß
    Flo

    Einen Kommentar schreiben:


  • Jambala
    antwortet
    Hi Oliver,

    ich würde auch gerne Geld mit Freizeit kompensieren. Gerne auch viel Geld mit viel Freizeit.

    Ich fürchte aber Du meintest nicht vorhandenes Geld durch Einsatz von Freizeit kompensieren.

    Viele Grüße in den Süden

    Michael

    Einen Kommentar schreiben:


  • Dragonos2000
    antwortet
    @Sandman:
    Besser und treffender lässt sich das nicht beschreiben
    Daher auch von mir:

    Einen Kommentar schreiben:


  • Sandman60
    antwortet
    *** leichter Off-Topic Mode An ****
    @Enertex:
    Heute mal (ausnahmsweise ) ein von mir.
    Das mit dem Buch hätte mir seinerzeit beim Einstieg ws. geholfen und ich hätte es gekauft, stimme Dir aber zu, dass die meisten dann tatsächlich wie so oft schreien würden. Es gibt hier eben anscheinend 3 Arten von Usern:
    1. User der kleine Münzen einwirft um sich Zeit zu ersparen
    2. Der Tüfftler, der Geld durch Freizeit kompensiert und alles selber macht
    3. Der Gewinnmaximierer, der für 1. zu geizig ist und für 2. keine Zeit und Skill hat und CENSORED (das schreib ich jetzt nicht, sonst fühlen sich wieder ein paar Leute auf den Schlips getreten ).

    Ich denke die Klientel beim HS ist da nicht anders (und hat auch nicht die dickeren Portemonnaies), allerdings ist die Einstiegshürde bei der Entwicklung von was eigenem deutlich größer als beim EIBPC, daher tümmeln sich weniger User in der Kategorie 3.

    *** leichter Off-Topic Mode Aus ****
    Cheers,
    Oliver

    Einen Kommentar schreiben:


  • Jambala
    antwortet
    Hallo Michael,

    eine sehr sehr interessante Zusammenfassung.

    Ich bin jetzt schon gespannt wie ein Flitzebogen auf die neue Firmware.

    Der Ausblick sieht für mich nach einem echten Meilenstein aus.

    Ich drücke die Daumen, dass Euer Schlußsprint maximal erfolgreich wird.

    Viele Grüße

    Michael

    Einen Kommentar schreiben:


  • enertegus
    antwortet
    Zitat von macflei Beitrag anzeigen
    Nachdem was ich gesehen habe (sh.py und smarthome) entwickeln sich diese wirklich zu Alternativen.
    Natürlich kann man mit einem RPI da viel machen, aber vor dem smarthome.py gabs ja schon vierschiedenste durchaus brauchbare Ansätze - auch schon 2008, als der EibPC entwickelt wurde (misterhouse etc.).

    Was die Flexibilität der Visu betrifft, wäre sicher auch Homecontrol eine mögliche Variante.

    Aber man muss da auch die Kirche im Dorf lassen: Nicht jeder der einen HS hat, hat automatisch eine "Hochglanz" 3D-Visu vom EibTech, und derjenige, der sowas hat, ist es letztlich egal, ob das ein HS oder sonst was ist und ob die Hardware 3000 oder 2000 Euro kostet. Daher ist das nicht unsere primär erreichbare Zielgruppe.

    Unsere Erfahrung zeigt: von 1000 Usern arbeiten
    • 900 zu 90% mit den knapp 1.000 Makros, ein paar einfache Logiken mit dem Code.
    • 50 mit eigenem Code,
    • 30 verändern auch vorhanden Makros
    • 17 schreiben einfache bis mittel-komplizierte Makros
    • 2 schreiben Makros, die es in sich haben
    • 1 schreibt Makros, dass es einem die Augen verdreht und man bewundernd den Code durchschaut - zum einen was den Ideenreichtum betrifft und zum andern, was da alles so geht...


    Aus der Erfahrung der letzten 4 Jahre mit der Kundschaft und dem Feedback sehe ich eben
    • einfacheres Loggen auf FTP
    • einfaches und verbesserte Darstellung von Zeitreihen mit größerem Gedächtnis

    für den Standardanwender als Handlungsbedarf. Das soll einerseits einfach sein und dann aber auch flexibel genug, daß hier auch die Spezialisten ihren Spass haben.

    Für das "Forum" (also die letzten 100 User) haben wir die
    • Echzeitvisu
    • das Hochladen des gesamten Projekts in den EibPC
    • Erweiterung der Doku mit ausführlicheren und komplexeren Beispielen (wir sind da bei inzwischen bei 290 Seiten)

    und dann noch für unsere Poweruser
    • Strings bis 65k
    • Utc-Zeit
    • Zeitreihendarstellung (die wird so flexibel, dass auch Jambala Tränen der Freude in den Augen haben wird - zumindest hoffe ich das).
    • und noch ein paar Dinge, die aber erst angekündigt werden, wenn es geht - sonst wird das gleich wieder tot krititisert.

    Apropos Doku: Wir haben auch schon ernsthaft überlegt, ob man eine Art Programmierhanduch "EibPCs für Dummies" auf dem Markt bringt - aber ich habe Euch schon vorher "Abzocke!!!" schreien hören....

    Einen Kommentar schreiben:


  • macflei
    antwortet
    Zitat von Jambala Beitrag anzeigen
    .....einen Raspberry PI für billige 30€ zu kaufen und alles in Linux selbst zu programmieren. Dann ist auch garantiert jede Software kostenlos, sogar die Updates.
    Nachdem was ich gesehen habe (sh.py und smarthome) entwickeln sich diese wirklich zu Alternativen.
    Kostenpflichtiges Update hin oder her. Noch weiß ja keiner was oder wieviel seitens Michael verlangt wird.
    Deshalb kann ich Dragons2000 seiner Aussage in Post 121 nur 100%ig zustimmen.

    Einen Kommentar schreiben:


  • Jambala
    antwortet
    Zitat von enertegus Beitrag anzeigen
    Ok, aber nconf ist nun auch nicht viel besser/schlechter als der FTP Server:
    Richte mal auf die Schnelle einen FTP Server ein, bau Dir ein Tool zum Erzeugen einer ASCII Datei und schon kannst du die Konstanten in den EibPC laden.
    Ein FTP Server befindet sich auf jeder Fritzbox. Dort ist nur einmal ein User einzurichten und eine Datei abzulegen. Da geht von jedem Rechner und von jedem Ort dieser Welt aus mit serienmäßig installierten Programmen.

    Dies ist der Grund, warum ich FTP als perfekte Schnittstelle zwischen EibPC und der EDV Welt empfinde.

    UDP und nconf geht bestimmt auch, aber meine Bereitschaft sich für jedes kleine Thema in irgendetwas einzuarbeiten sinkt mit steigendem Alter und sich immer weiter reduzierender Freizeit ...

    Einen Kommentar schreiben:


  • Jambala
    antwortet
    Wann wird hier endlich einmal verstanden, dass Software Entwicklung neben Kreativität und Zeit vor allem Geld kostet.

    Eigentlich müßte sich hier einmal jemand die Mühe machen zu schauen, was bisher der persönliche Programmierbeitrag in Form von Code-Beispielen oder Makros der hier ständig über Kosten mosernden User ist.

    Enertex ist keine Sozialeinrichtung und Michael wird sich sehr genau überlegen, was er entwickelt und was an Einnahmen dafür im Gegenzug zu erzielen sind. Im Vertrieb gibt es dafür einen simplen Spruch: "keine Arme, keine Kekse".

    Wenn hier ständig über Kosten gemosert wird, ist eine mögliche unternehmerische Konsequenz von Michael weniger zu entwickeln.

    Im Interesse aller EibPC Nutzer die an einer möglichst vielfältigen Weiterentwicklung von Features interessiert sind, empfehle ich einfach den EibPC zu verkaufen, einen Raspberry PI für billige 30€ zu kaufen und alles in Linux selbst zu programmieren. Dann ist auch garantiert jede Software kostenlos, sogar die Updates.

    Einen Kommentar schreiben:


  • EPIX
    antwortet
    ...die bei den Neukunden ebenfalls enthalten sind und zudem die Bestandskunden ja auch Anteil an der Entwicklung geleistet haben und zB Makrobibliotheken zur Verfügung stellen....

    Einen Kommentar schreiben:


  • enertegus
    antwortet
    Zitat von EPIX Beitrag anzeigen
    DAS!! wäre ein Killerargument - allerdings GEGEN das Produkt: da wäre jeder dumm wenn er sich heute einen eibPC kauft, weil er ja "morgen" einen "besseren" ums gleiche Geld bekommt...
    Davon rede ich ja bei der Schonfrist: Diejenigen, die jetzt kaufen, werden dann das Update kostenlos bekommen. Ältere Kunden haben ja auch schon jede Menge Feature-Updates kostenlos bekommen.

    Einen Kommentar schreiben:

Lädt...
X