Beiträge von Gnom

    Ich glaube, so weit musst du gar nicht gehen. Die Befehle, die C in seinen Libraries für den Zugriff auf GPIOs des Pi zur Verfügung stellt, bringen schon 22 MHz - so hab ich den Test verstanden. Direkte Registermanipulation mit hardwarenahen C-Befehlen ist sicher noch schneller.
    I2C bringt bidirektional max. 3,4 MBit... Was hast du denn vor, dass du einen extrem schnellen Zugriff benötigst? Ich fürchte ja, dass im Normalfall der Rest des Programms mehr Ressourcen bindet, als du mit irgendwelchen schnellen Zugriffen rausholen kannst. Kannst du eine Anforderung mal erläutern?

    Die Bude fackelt dir so schnell nicht ab. Wenn deine Stripes 150 Watt umsetzen und deine Wohnung nicht in Flammen aufgeht, brauchst du dir um das Kabel keine Sorgen machen (so lange die LEDs noch leuchten und nicht das Kabel). Die Frage ist eher, welchen Spannungsabfall du am Kabel hinnehmen willst. Bei 10 A ist der Spannungsabfall in 10 Meter (5 hin und zurück) Kupferkabel mit 1 mm² immerhin U = Rs*I*l = 0,0171 * 10 * 10 = 1,71 Volt - dann kommen bei deinen LEDs nur noch 3,3 V an. Insofern kommen da tatsächlich horrende Werte raus. Oder steh ich genauso auf dem Schlauch wie du?
    Vielleicht nimmst du besser an jeden Stripe ein eigenes Netzteil und gehst mit 230 V so nah wie möglich dran. Noch sicherer ist es, wenn du jeden Stripe von beiden Seiten speist. Es wird oft berichtet, dass die hinteren LEDs sonst schwächer leuchten als die vorderen...

    Welches Display ist es genau? Hast du ein Datenblatt dazu? Das mit den 3,3 V Pegeln auf 5 V ist je nach Fall mal mehr und mal weniger praktikabel. Da du nur Daten sendest, bau dir doch einen Treiber mit ein paar Transistoren und schau, ob das Problem verschwindet. Du hast ja nur vier Leitungen...

    Geile Sache! Kannst du mal ein paar Fotos posten von Platine, Verschaltung, Tastenfeld, Display und so?

    Dein Display hängt an 5V, die Datenleitungen an den Pi GPIOs, die nur für 3,3 V ausgelegt sind. Bist du sicher, dass das keine Probleme gibt? Im Falle von Spannung auf den Display-Eingängen kannst du den Pi schrotten (wobei es unsinnig wäre, wenn ein Eingang plötzlich Spannung führt). Es kann aber sein, dass das Display in ungünstigen Situationen die Pegel vom Pi nicht richtig erkennt. Hast du einen Level Shifter dazwischen? Vielleicht liegt schon da das Problem.
    Falle es das nicht ist: Hast du mal ein anderes Display ausprobiert oder auch mal das Display unabhängig von dem Kaffeesystem gecheckt? Vielleicht liegt es am Display...

    Warum soll das mit der Sendestärke nicht gehen, wenn in jedem Raum ein Empfänger ist und die Empfangsstärke verglichen wird. Im gleichen Raum sollte das Signal doch immer stärker sein als in einem anderen Raum. - ist ja ne Wand dazwischen... Die Signalstärken an mehreren Empfängern kann man gut vergleichen. Interessant - besonders ab Seite 19. Ist so ziemlich das, was ich mir vorgestellt habe.

    Barcode Karte? Und dann muss jeder Kerzengerade und mit konstanter Geschwindigkeit durch die Tür gehen, damit das Ding richtig gelesen wird? Oder willst du einen Hochleistungslaserscanner einbauen, wie an der Supermarktkasse? Zwei natürlich - links und rechts. Oder der Proband behängt sich rundherum mit Barcodes. Dann vielleicht besser den Barcode auf die Stirn tätowieren und eine Kamera am anderen Ende des Raumes anbringen... ;)

    Wie wäre es mit ner Kamera und Klamottenerkennung - Farbe/Muster... Und zur späteren Nachprüfung der Funktionstüchtigkeit sollte man die Videos unbedingt speichern. Oder Sensoren zur Mundgerucherkennung? ;)

    Es gibt solche Systeme kommerziell. Entweder aktive - dann ermittelt eine App auf dem Handy die Position anhand von Signalstärken der Access Points und meldet das an das System. Oder passiv, dann werden Signale von Geräten wie RFID-Chip (mit Stromversorgung Reichweiten bis 10 m), Handy oder speziellen Sendern erfasst und bezüglich der Position ausgewertet. Mit Wlan-Empfängern in jedem Raum könntest du die Signalstärke jedes Handys messen. Das stärkste Signal kommt aus dem Raum, wo sich das Handy befindet.
    Signallaufzeiten auszuwerten, ist natürlich etwas schwieriger, zumal zwischen verschiedenen Signalen unterschieden werden müsste. Eine rein hardwaretechnische Bestimmung, der Reihenfolge des Signaleingangs (also letztlich des nächsten oder der beiden nächsten Empfänger) ist vielleicht machbar. Alle Empfänger über gleich lange Leitungen an eine zentrale Elektronik anschließen... oder die Signalzeit sehr exakt messen und nachrechnen, welches Signal zuerst war. Bei Lichtgeschwindigkeit entspricht 1 Meter ca. 3 ns - das wird nur mit sehr schnellen Prozessoren erfassbar sein (klar, da bräuchtest du mindestens 300 MHz). Ein Microcontroller wird damit in der Regel überfordert. Ich bezweifele, dass man mit dem Pi ein Signal zeitlich so genau auflösen kann... Vielleicht kann man mit vergleichenden Empfängern arbeiten - je zwei Empfänger bekommen das Signal und der, der es zuerst bekommen hat, bekommt den Zuschlag (so ne art Flipflop-Schaltung) und meldet sich dann bei der zentrale. Mehrere solcher Doppelempfänger - an allen Türen zum Beispiel, könnten erkennen lassen, wo das Signal her kommt. Man könnte auch je einen Empfänger vor und hinter der Wand platzieren und die Signalstärken vergleichen - daraus könnte man schließen, in welchem Raum der Sender ist - zumindest bei angrenzenden Räumen. Dazu muss dann aber das Signal noch irgendwie angeben, welcher Sender es war - also alle Sender müssen unterschiedliche Signale senden, die dann zusätzlich ausgewertet werden... Oder man arbeitet mit unterschiedlichen Frequenzen...
    Eine spannende Aufgabe jedenfalls.
    Weiß jemand, wie man einen einzelnen Signalimpuls am schnellsten mit einer einfachen Elektronik erkennen/auswerten kann?

    Das sind alles sehr gewagte Ansätze. Ich denke da eher an etwas mit mehreren Empfängern und Vergleich von Signallaufzeiten vom Objekt zum Empfänger oder mit Peilung, so dass der Empfänger nur reagiert, wenn das Signal aus einer bestimmten Richtung kommt...
    Tragen die Personen denn ggf. einen Sender freiwillig oder willst du überwachen, wie lange deine Mitarbeiter in der Raucherecke und Kaffeeküche sind?

    Es gibt ein Modul rtctime.c, das eine Art Realtime Clock realisiert. Das könntest du mal ausprobieren. Hier gibts auch noch was dazu.
    Automatisch zusammengefügt:

    Zitat von "MarcusFE" pid='293656' dateline='1501667792'

    Ja, das Ding heißt aber nur RTC und ist keine. Im deep sleep verliert diese RTC die Zeit, wenn ich richtig informiert bin. Das Modul, das ich oben verlinkt habe, umgeht das, indem es den deep sleep Timer auswertet und die Zeit dann hochrechnet. Wie genau das ist, ist aber unklar. Alternativ eine externe RTC (DS3231, DS1307 oder ähnliches).

    Meines Wissens hat ein einfacher ESP8266 kein RTC, nur einen Timer für den Wakeup.
    Wenn du ein RTC User Memory hast, dann hast du wohl ein Modul mit eingebauter RTC (also ein DS3131 oder ähnliches auf der Platine) - dann wäre es das einfachste, eben diese RTC zu lesen!!! Dann verstehe ich dein Problem nicht, denn die RTC sollte auch im deep sleep weiter laufen - sonst wäre sie ja sinnlos.
    Vielleicht kannst du uns etwas genauer sagen, welches Modul du benutzt und was du damit eigentlich machen willst...

    Da müsstest du schauen, ob du den Timer nach dem Aufwachen auslesen kannst und ob er nicht in dem Moment schon zurückgesetzt ist.
    Wird dein ESP durch ein externes Signal aufgeweckt oder setzt du den Timer vorher? Im zweiten Fall weißt du ja, wie lange es dauert. Den Timerstand musst du regelmäßig in einen nichtflüchtigen Speicher schreiben. Wenn der ESP da was hat, gut, wenn nicht, musst du noch was extern anschließen. alles viel Umstand. Speichere die Einschaltzeit doch im WLAN, dann weißt du jederzeit, wann der Start war...

    Wenn du mit dem ESP in einem WLAN bist, frag doch einen Timeserver ab...
    Die "Uhr" für das Aufwecken aus dem Tiefschlaf ist nur ein Timer. Der ESP hat mehrere (Soft) Timer. Du kannst dir natürlich einen Interrupt basteln, der regelmäßig ausgelöst wird, und die Zeit hochzählen. Aber die Genauigkeit dieser Timer ist eher mäßig. Du könntest die so hochgerechnete Zeit regelmäßig mit einem Timeserver abgleichen und nachführen.

    Du schaltest alle GPIOs auf output, stellst sie aber nicht auf HIGH oder LOW. Ich nehme an, die haben dann irgendwelche Defaultwerte oder ggf stehen alle acht auf LOW und machen deshalb einen Schritt... Setz mal alle GPIOs jeweils gleich beim initialisieren auf die Anfangswerte deiner Schleife (oder vielmehr auf die Endwerte - also die letzte Position).

    Ach, plötzlich geht es nicht mehr um die Kapazität der LED? Dann weiß ich ebenso plötzlich nicht mehr, was du mit diesem Satz sagen wolltest...

    Zitat von "jar" pid='293193' dateline='1501326600'


    ... wenn die LED am Data Pin hängt muss der Controller µC oder DS18B20 diese auch runterziehen zu der Kabelkapzität und das mit endlichem Strom, das verrundet die Flanken und stört die Erkennung ...

    Was willst du jetzt eigentlich sagen? Wie schnell die Umladung (bei maximaler Kabellänge des 1-Wire Bus von 100m) erfolgt, hab ich dir doch vorgerechnet. Danach fließt nur noch das eine mA durch den Widerstand und die LED. Und das fließt auch ohne LED. Das ist bei jedem Pullup so. Die LED hat hier überhaupt keinen Einfluss. Die kannst du dir auf das Modul oder irgendwo anders hin löten - das macht überhaupt keinen Unterschied.

    Wenn du keine Argumente mehr hast, um deine Aussagen zu untermauern, nützen deine blumigen Worthülsen auch nichts.