Equinox Geschrieben September 5, 2013 at 21:27 Geschrieben September 5, 2013 at 21:27 Hallo, da sich meine Bricklets vermehrt haben, habe ich mir einen zweiten Masterbrick zugelegt, den ich mit meinem ersten Master in einem Stapel verbinden möchte. Meine Fragen dazu: [*]Kann ich die Firmware beider Masterbricks "gleichzeitig" flashen oder muss ich den Stapel dafür trennen und beide Masterbricks einzeln updaten? Falls es im Stapel geht, reicht es den unteren in den Bootloader Modus zu versetzen? [*]Wie sieht es mit den Bricklets aus? Können die bei einem Firmware-Update am "oberen" Master bleiben oder muss ich dafür den Stapel auflösen? Zitieren
jan Geschrieben September 6, 2013 at 04:01 Geschrieben September 6, 2013 at 04:01 1.) Nein, Bricks müssen jedes für sich geflasht werden. Sie können aber im Stapel verbleiben. Also USB-Kabel umstöpseln und den jeweiligen Brick in Bootmodus versetzen. 2.) Bricklets können vom vom unteren Master aus geflasht werden. Zitieren
Equinox Geschrieben September 6, 2013 at 13:04 Autor Geschrieben September 6, 2013 at 13:04 Super, danke! Zitieren
JoergK Geschrieben January 23, 2014 at 12:09 Geschrieben January 23, 2014 at 12:09 Hallo, Nachdem ich das forum durchsucht habe, denke ich dass meine Frage hier am besten aufgehoben ist. das io16 bricklet würde ich für meine anwendung nutzen, jedoch muss ich an jeden port zusätzliche schaltungen anbinden (selbst erstellte ampere treiber mittels optokopplern und relais etc.) Die Industrie bricklets sind für meine Anwendung unterdimensioniert. Da ich nun ein platinenlayout hierfür erstelle, dachte ich mir, dass ich die paar ic's gleich mit unterbringen könnte. wenn ich nun die ic's kaufe und wie bri io16 anschliesse, erkennt der master dann mein eigen erstelltes bricklet, und ich kann es dann mit der leicht abgewandelten io16 Firmware flashen? Oder was müsste ich tun, damit der master meine schaltung erkennt? (Bin absoluter neuling in sachen I2C, hab noch mit widerständen und Transistoren gelernt, danach direkt in höhere programmiersprachen abgetaucht ... Zitieren
photron Geschrieben January 23, 2014 at 12:46 Geschrieben January 23, 2014 at 12:46 Eigentlich wäre es besser gewesen, wenn du einen neuen Thread erstellt hättest, aber nicht so wichtig Zu deiner Frage: Du möchtest also dein eigenes IO-16 Bricklet bauen. Wenn du von ICs sprichst meinst du M24C64 (EEPROM), MCP23017 (I/O Expander) und PCA9306 (I2C Voltage-Level Translator), nehme ich mal an. Wenn du das IO-16 Bricklet nach unserem Schaltplan nachbaust wird jeder Brick es erkennen, wenn es geflasht ist. Du kannst natürlich ein exaktes IO-16 Bricklet nachbauen, aber du musst nicht. Der Knackpunkt ist, dass das EEPROM die I2C Adresse hat, die der Brick erwartet. Das wird aber einfach dadurch sichergestellt, dass du das gleiche EEPROM wie wir verwendest und es auch gleich anschließt. Den Rest der Hardware des Bricklets kannst du ändern, solange du dich an die elektrische Spezifikation des Bricklet-Steckers hältst. Dann musst du aber natürlich auch eine passende Firmware für dein Bricklet schreiben. Die Erkennung läuft so ab: Beim Start versucht der Brick das EEPROM des Bricklets über I2C auszulesen. Die I2C Adresse des EEPROMs ist in unserem System für alle Bricklets gleich, daher können wir sie im Brick fest vorgeben. Wenn der Brick die Firmware des Bricklets erfolgreich vom EEPROM in seinen Flash übertragen hat führt er diese aus, um so deren Funktionalität dem Nutzer zur Verfügung zu stellen. Sprich, wenn deine Hardware die elektrische Schnittstelle eines Bricklets hat und auf dem EEPROM eine Firmware gespeichert ist, die die Software-Schnittstelle eines Bricklets erfüllt, dann wird deine Hardware vom Brick als Bricklet erkennt und auch funktionieren. Zitieren
JoergK Geschrieben January 23, 2014 at 13:35 Geschrieben January 23, 2014 at 13:35 Eigentlich wäre es besser gewesen, wenn du einen neuen Thread erstellt hättest, aber nicht so wichtig Zu deiner Frage: Du möchtest also dein eigenes IO-16 Bricklet bauen. Wenn du von ICs sprichst meinst du M24C64 (EEPROM), MCP23017 (I/O Expander) und PCA9306 (I2C Voltage-Level Translator), nehme ich mal an. Wenn du das IO-16 Bricklet nach unserem Schaltplan nachbaust wird jeder Brick es erkennen, wenn es geflasht ist. Du kannst natürlich ein exaktes IO-16 Bricklet nachbauen, aber du musst nicht. Der Knackpunkt ist, dass das EEPROM die I2C Adresse hat, die der Brick erwartet. Das wird aber einfach dadurch sichergestellt, dass du das gleiche EEPROM wie wir verwendest und es auch gleich anschließt. Den Rest der Hardware des Bricklets kannst du ändern, solange du dich an die elektrische Spezifikation des Bricklet-Steckers hältst. Dann musst du aber natürlich auch eine passende Firmware für dein Bricklet schreiben. Sprich, wenn deine Hardware die elektrische Schnittstelle eines Bricklets hat und auf dem EEPROM eine Firmware gespeichert ist, die die Software-Schnittstelle eines Bricklets erfüllt, dann wird deine Hardware vom Brick als Bricklet erkennt und auch funktionieren. Ok, vielen dank für die schnelle Antwort. a) ich dachte das thema wäre nahezu das gleiche wie vom thread ersteller. b) wie flashe ich am besten das eeprom (früher zu c64 zeiten, gabs da spezielle, recht teure hardware, und ne uv-lampe um die eproms zu löschen). Da ich mit meiner schaltung keine kommerziellen absichten habe, würde sich alles über 20 euronen an zusätzlichem equipment nicht lohnen. Danke und Grüße Jörg P.S.: schreibe vom handy aus, was leider mit meinem gerät nicht so komfortabel ist und fehlerträchtig. Zitieren
Loetkolben Geschrieben January 23, 2014 at 14:23 Geschrieben January 23, 2014 at 14:23 Hallo JoergK, hier reden wir ueber ein E-Eprom. Die Sache mit der Lampe bleibt auf dem Dachboden. Ausserdem bietet die Tinkerforge Hardware die Moeglichkeit die EEPROMs im Betrieb zu flashen. Das ist eigentlich nur fuer den Debuggingfall gedacht, funktioniert aber sehr gut. Also alles schon dabei. Wichtig ist wohl die Aussage, dass die EEPROMs die Du verwenden willst genau die gleiche (interne) IC2 Adresse haben muessen. Da sollte man vor dem Kauf mal ins Datenblatt schauen. Wenn nicht musst du die Brickfirmware anpassen. BTW: Da kommt meine Bitte wieder ins Gedaechtnis, auf der naechsten Version des Breakout Bricklets ein (abschaltbares) EEPROM mit draufzupacken. Der Loetkolben Zitieren
photron Geschrieben January 23, 2014 at 15:26 Geschrieben January 23, 2014 at 15:26 Wie Loetkolben schon richtig sagt kann das EEPROM vom Brick aus beschrieben werden. Der Brick Viewer hat einen Dialog dafür. Da kannst du den Brick, den Bricklet Port an dem dein Bricklet angeschlossen ist und die passende Firmware auswählen und der Brick Viewer schreibt diese dann über den Brick in das EEPROM des Bricklets. Keine zusätzliche Hardware nötig. Zitieren
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.