1. comav15
  2. Projekte
  3. Montag, April 04 2005, 03:44 PM
  4.  Abonnieren via E-Mail
Um es vorweg zu nehmen:

WIR HABEN ES GESCHAFFT - AUCH DAS SPEICHERN VON NEUEN WERTEN! :o


Hintergrundinformationen:

Da das generelle Programm im Prozessor der Jura und baugleichen Maschinen nicht verändert werden kann, da es sich um ein "Masked-ROM" handelt, müssen variable Daten an anderer Stelle abgelegt sein. Wir haben uns deshalb eine Logikplatine mal näher angesehen und sind auf den Speicherbaustein 93LC56 gestossen.

Dieser Speicher ist ein so genanntes "EEPROM" ("electrically erasable and programmable read only memory", also ein durch elektrische Signale lösch- und programmierbarer Lesespeicher). Man kann also in so ein EEPROM Werte einschreiben, löschen und wieder auslesen. So ein EEPROM verliert auch bei Stromausfall seine Werte nicht, ist recht robust und deshalb besser geeignet als RAM in einem Computer.

Jura speichert im EEPROM nicht nur Werte zur Programmablaufsteuerung, sondern auch viele andere Werte. Gesamtbezüge, Bezüge seit dem letzten Reinigungszyklus, Bezüge einzelner Tassen, Doppelbezüge und viele, viele mehr.

Wer mehr darüber wissen möchte, der sollte sich das Dokument "Der Logik auf der Spur" ([url]http://www.coffeemakers.de/infocenter/joomlatools-files/docman-files/der%20logik%20auf%20der%20spur.pdf[/url]) in unserem Dokumentenordern ansehen.

Da wir aber mit dem Zuordnen der einzelnen Speicherzellen noch lange nicht am Ende sind, würden wir uns über Eure Mithilfe freuen!
hochsitzcola Akzeptierte Antwort Pending Moderation
Ich habe mir eine alte Impressa Ultra gekauft, die immer die Meldung bringt "Service nötig". Stört eigentlich nicht, nervt nur ein bisschen. Nachdem ich diesen Thread gelesen, die Seite mit der Protokoll-Erklärung genossen und noch bei Github im Quellcode gestöbert habe, hat mich der Basteltrieb gepackt. Ich habe viel mit IR-Sender, USB zu RS232 und USB zu TTL-Adaptern rumprobiert, konnte der Maschine aber keine Reaktion entlocken. Schließlich habe ich auf dem Breadboard einen ATMega168 mit den nötigen Verbindungen verstöpselt, habe nach dieser Beschreibung Kabel direkt auf die entspechenen Prozessorpins des Logikprints gelötet. Dann den Arduino-Code in Bascom übersetzt und voila --- die Maschine lässt sich per µC einschalten! (cheerful)

Jetzt meine Frage: Wie ist die Syntax für den Befehl "WE:" Es muss ja noch die Speicheradresse und der Wert übergeben werden. Diese Info habe ich nirgends gefunden. Ich gehe mal davon aus, daß in Adresse 15 eine Null geschrieben werden muß, um die Service-Meldung wegzubekommen....

Hier noch der noch sehr rudimentäre aber funktionierende Bascom Code und ein Foto...
'-----------------------------------------------------------------------------------------
'by hochsitzcola
'-----------------------------------------------------------------------------------------

$regfile = "m168def.dat" ' specify the used micro
$crystal = 8000000 ' used crystal frequency
$baud = 9600 ' use baud rate
$hwstack = 100 ' default use 32 for the hardware stack
$swstack = 100 ' default use 10 for the SW stack
$framesize = 100 ' default use 40 for the frame space

Dim I As Integer

Dim B0 As Byte
Dim B1 As Byte
Dim B2 As Byte
Dim B3 As Byte

Dim A(7) As Byte
A(1) = &H41 'Hex Code für A
A(2) = &H4E 'Hex Code für N
A(3) = &H3A 'Hex Code für :
A(4) = &H30 'Hex Code für 0
A(5) = &H31 'Hex Code für 1
A(6) = &H0D 'Hex Code für CR
A(7) = &H0A 'Hex Code für LF

For I = 1 To 7
B0 = 255
B1 = 255
B2 = 255
B3 = 255

B0.2 = A(i).0
B0.5 = A(i).1
B1.2 = A(i).2
B1.5 = A(i).3
B2.2 = A(i).4
B2.5 = A(i).5
B3.2 = A(i).6
B3.5 = A(i).7

Printbin B0
Waitms 1
Printbin B1
Waitms 1
Printbin B2
Waitms 1
Printbin B3
Waitms 7

Next I
Do
Loop
End




Gruß
hochsitzcola
Anhänge
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 271
danielr0815 Akzeptierte Antwort Pending Moderation
Ich werde dann alles mal etwas detaillierter vorstellen, wenn die Testphase abgeschlossen ist und nicht immer noch neue Funktionen / Veränderungen dazukodiert werden.

Bis dahin wolle ich jetzt schon mal den aktuellen Stand darstellen, damit man sich austauschen kann falls jemand gerade an ähnlichen Problemen hängt.

Ich denke mal, dass ich mich ansonsten in ca. einem Monat mit einem Video oder ähnlichem zurückmelde.
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 272
Oliverk71 Akzeptierte Antwort Pending Moderation
Da hast du ja ein umfangreiches Projekt, Daniel! :) Hast du da irgendwo Näheres zu online, z.b. eine Projektseit oder ein Youtube-Video?
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 273
bimmel1231 Akzeptierte Antwort Pending Moderation
Hallo,

sehr schönes Projekt was ihr da auf die Beine gestellt habt!! (glueckw)

Kurze Frage: Kann ich auch die Bezüge meiner Impressa C5 auslesen? Gibts zur C5 eine Befehlsreferenz?
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 274
danielr0815 Akzeptierte Antwort Pending Moderation
Wir haben nun seid diesem Jahr für die Arbeit eine JURA XS9. In unserer Abteilung werden täglich ca. 80 Kaffee getrunken.

Ich benutze einen Raspberry PI + Pegelwandler um die Steuerung der Kaffeemaschine umzusetzen. Als RFID Reader wird der ACR122U per USB angeschlossen.

Die Software (programmiert in Python 2.7) befindet sich aktuell noch nicht im Produktiveinsatz, (die alte Strichliste ist weiterhin parallel im Einsatz) aber ich beschreibe mal die aktuell umgesetzte Funktionalität:

Alle dynamischen Daten sind in einer Mysql Datenbank hinterlegt... dazu gehören z.B.:
Benutzer, zugehörige RFID-ID, Guthaben, Gruppenzugehörigkeit, Produktnamen, Produktpreise, Guthaben-Warnschwelle, Guthaben-NoCoffee-Limit, ...

Basisfunktionen:
a) Produkttaste gedrückt: Produktname und Preis wird auf dem Display ausgegeben.
b) Rfid-Karte erkannt: Vorname und Guthaben wird auf dem Display angezeigt
a+b) Kaffee wird zubereitet, Guthaben wird aktualisiert

Erweiterte Funktionen:
-Spezieller Wartungsmodus freigegeben für bestimmte Gruppe
-Wenn Cappuccinator am Tag bereits gereinigt wurde, sind die Milchprodukte für den Rest des Tages gesperrt (es gibt jeden Tag immer einen Verantwortlichen, wenn der geht... gibt es halt nur noch Kaffee ohne MilchSchaum)
-Starten aller Wartungsaufgaben (Entkalken, Reinigen, Spülen, ... nur über Wartungsmodus)
-Auswerten der IC: Nachricht: Die Bits dieser Nachricht sind nur schwer zu verstehen, ich erkenne bisher Status Wassertank, Status Cappuccino-Kreis, Maschine aktiv, Schaale entfernt...
-Möglichkeit, beliebige Laufschrift am Display auszugeben.
-Anschluss einer USB Waage für die Milchpackung: Es wird jetzt kein Cappuccino mehr begonnen, wenn nicht genügend Milch in der Packung vorhanden ist. Da 1l Milch für ca 9 Cappuccino reicht, passiert es bei uns häufiger, dass nur "heiße Luft" anstelle von Milchschaum kommt. Dies wird nun effizient vermieden.

Um das System produktiv einzusetzen, warte ich noch auf ein Addon Modul für den Raspberry, dass das System bei einem "Stromausfall" kontrolliert runterfährt. Ich möchte vermeiden, dass dadurch Daten zerstört werden und es dann keinen Kaffee mehr gibt.

Geplante Funktionen:
-Benutzer sollen individuelle Einstellungen für ihren Kaffee hinterlegen können (Stärke, Menge Kaffee, Menge Milch)
-Ich möchte das Aufladen der Konten usw nicht mehr über phpmyadmin sondern über eine "Admin" Oberfläche machen.

Tasks:
-ich will den EEPROM und den RAM der XS9 verstehen lernen, um dort mehr Informationen entnehmen zu können. Z.B. weiß ich bisher nicht, ob es irgendwelche Probleme gibt, die das Kaffeezubereiten verhindern. (Jetzt Entkalken, Jetzt Reinigen, ...)
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 275
Michi1 Akzeptierte Antwort Pending Moderation
Jetzt klappt alles super (thumb_up)

Danke nochmal
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 276
Oliverk71 Akzeptierte Antwort Pending Moderation
Habe ich irgendwo falsche Infos? Gib mir bitte mal einen Hinweis, dann kann ich es ändern.

edit: Ok, hab's schon gefunden. Werde es ändern, sobald ich etwas mehr Zeit habe.
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 277
Michi1 Akzeptierte Antwort Pending Moderation
(glueckw)

Hab den Fehler gefunden. War auf Digital PIN 4 und 5. Wie es in deiner Anleitung stand.

Aber was ich beim USB-TTL -Adapter falsch gemacht hab, weiss ich immer noch nicht.

Aber vielen vie (thumb_up) (thumb_up) (thumb_up) (thumb_up) len Dank für eure Mühe
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 278
Oliverk71 Akzeptierte Antwort Pending Moderation
Zur Ergänzung: RX/TX der Maschine schließt du an Pin 10/11 des Arduino an (oder du änderst den Code entsprechend ab). Notebook oder PC einfach über USB an den Arduino anschließen. Und schon sollte es funktionieren.
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 279
Oliverk71 Akzeptierte Antwort Pending Moderation
Du hast einen Arduino? Dann nimm doch mein Arduino Programm dafür.
https://github.com/oliverk71/Coffeemaker-Payment-System
Du brauchst nur das coffeemaker-communication tool. Ggf noch das EEPROM-tool. Bluetooth brauchst du ja nicht, auch kein RFID, das kannst du einfach ignorieren.
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 280
Michi1 Akzeptierte Antwort Pending Moderation
Das habe ich empfangen:

DF DB DB DF<9>11011111 11011011 11011011 11011111<9>A<\r><\n>
FB FF DB DF<9>11111011 11111111 11011011 11011111<9>N<\r><\n>
FB FB FF DB<9>11111011 11111011 11111111 11011011<9>:<\r><\n>
DB DB FF DB<9>11011011 11011011 11111111 11011011<9>0<\r><\n>
DF DB FF DB<9>11011111 11011011 11111111 11011011<9>1<\r><\n>
DF FF DB DB<9>11011111 11111111 11011011 11011011<9><\r><\r><\n>
FB FB DB DB<9>11111011 11111011 11011011 11011011<9><\n><\r><\n>
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 281
Michi1 Akzeptierte Antwort Pending Moderation
Habe ich eingestellt.

Kann ich sonst noch was vergessen haben??
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 282
Oliverk71 Akzeptierte Antwort Pending Moderation
Nicht vergessen: Du musst im Terminal einstellen, dass CR+LF mit gesendet wird!
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 283
Michi1 Akzeptierte Antwort Pending Moderation
Mit dem Adruino schon, die Maschine bleibt aber leider aus.....
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 284
Michi1 Akzeptierte Antwort Pending Moderation
OK, habe es mit einem USB zu TTL Adapter von D-SUN versucht. Hab den Treiber dafür auch installiert. Ohne Erfolg.

Habe von einem Kollegen einen Arduino Nano bekommen. Es werden jetzt auch Daten empfangen, die Maschine bleibt aber hartnäckig aus:-(
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 285
Oliverk71 Akzeptierte Antwort Pending Moderation
Und andersherum? Kriegst du eine Antwort von der Maschine? Irgendwo hast du jedenfalls einen Fehler drin.
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 286
mathias1 Akzeptierte Antwort Pending Moderation
Mit einer baugleichen F9 habe ich das bereits getestet, der Befehl schaltet die Maschine ein.
Wie hast Du deinen Adapter angeschlossen? Sind alle Treiber korrekt aufgespielt und ist er korrekt eingerichtet?
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 287
Michi1 Akzeptierte Antwort Pending Moderation
Danke für die schnelle Antwort!!

Habe ich versucht, hat sich aber nichts getan. Ich habe eine Jura F90
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 288
mathias1 Akzeptierte Antwort Pending Moderation
zum Einschalten der Maschine mußt Du Binär senden:

01011111 01011011 01011011 01011111 01111011 01111111 01011011 01011111
01111011 01111011 01111111 01011011 01011011 01011011 01111111 01011011
01011111 01011011 01111111 01011011 01011111 01111111 01011011 01011011
01111011 01111011 01011011 01011011

Dann könnte sie angehen. Zumindest eine Quittung sollte im selben Format kommen. Nicht immer sind alle Befehle bei allen Maschinen gleich.
Was für eine Maschine hast Du denn?
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 289
Michi1 Akzeptierte Antwort Pending Moderation
Hallo,
hab die anderen Befehle in Binär, d.h. die Maschinensprache, den Binärcode und Binär in BCD versucht was in dem Protokoll angegeben sind. Die Maschine rührt sich aber bei keinem der Befehle.
Steh da gerade voll aufm Schlauch, sorry
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 290
mathias1 Akzeptierte Antwort Pending Moderation
Das versteht die Maschine aber nicht.
Den Befehl mußt du übersetzt senden.

siehe hier: Protokollbeschreibung
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 291
Michi1 Akzeptierte Antwort Pending Moderation
Hallo, ich sende AN:01 in ASCII? Kenne mich da nicht so aus.

Grüße
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 292
mathias1 Akzeptierte Antwort Pending Moderation
Was genau sendest Du denn an die Maschine?
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 293
Michi1 Akzeptierte Antwort Pending Moderation
Hallo, ich bin neu hier. Finde das Thema, die Jura auslesen zu können, sehr interessant.

Würde dazu aber Hilfe benötigen.
Bei mir läuft Windows7 und Hterm. Ich verwende einen USB- TTL-Adapter.
Ich besitze eine Jura F90. Bekomme die Maschine aber nicht zum Sprechen.

Bei Hterm habe ich 9600 8 N 1 eingestellt.

Was mache ich falsch?
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 294
Oliverk71 Akzeptierte Antwort Pending Moderation
Nix mehr los hier?
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 295
Oliverk71 Akzeptierte Antwort Pending Moderation
"Okay Google, mach mir mal einen Kaffee!" ... gibt es bestimmt auch bald.
Sprachgesteuert Kaffee zapfen kann ich schon heute (geht natürlich auch in deutsch):

https://www.youtube.com/watch?v=FlY-pn8ySs4
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 296
Oliverk71 Akzeptierte Antwort Pending Moderation
Liest hier zufällig ein Java oder Python developer mit, der zufällig auch noch etwas Zeit und Lust hat, mit an einem Projekt zu arbeiten? Es hält sich wirklich im Rahmen: serielle Verbindung über Bluetooth oder WLAN (ESP8266), eine GUI und noch Kleinigkeiten.
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 297
Oliverk71 Akzeptierte Antwort Pending Moderation
Dann schick mir doch mal kurz ne Mail an oliver@quantentunnel.de
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 298
Frozengun Akzeptierte Antwort Pending Moderation
Klar, Arduino hängt ja eh dran (cheerful)
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 299
Oliverk71 Akzeptierte Antwort Pending Moderation
Könntest du bei deiner Z5 mal den Speicher auslesen? Einen Sketch dazu kann ich dir zukommen lassen. Am besten so: Alle eingestellten Werte der Kaffeemaschine notieren. Dann Speicher auslesen und in eine Textdatei kopieren. Dann etwas an der Maschine machen, z.B. einen kleinen Kaffee ziehen, dann wieder den Speicher auslesen. So kriegt man dann nach und nach raus, was wo gespeichert ist.

Ich weiß bislang nur, dass sich die Befehle/Adressen bei verschiedenen Maschinen voneinander unterscheiden können, aber bis auf meine Impressa S95 hab ich ja noch nichts untersucht.

Ist sowieso eine prima Sache für ein "citizen hacking project". Es könnte jeder mitmachen, sofern er nur einen Arduino angestöpselt kriegt, und Daten beitragen.
Kommentar
Es sind noch keine Kommentare vorhanden
  1. vor über einem Monat
  2. Projekte
  3. # 1 300


Es gibt noch keine Antworten zu diesem Beitrag.
Du hast auch keine Berechtigung eine Antwort zu erstellen.

Einloggen oder registrieren

Kategorien

Uncategorized
  1. 75 Beiträge
  2. 0 Unterkategorien
Nespresso Werkstatt
  1. 48 Beiträge
  2. 1 Unterkategorie
ANREGUNGEN UND WÜNSCHE
  1. 38 Beiträge
  2. 4 Unterkategorien
MIELEWERKSTATT
  1. 30 Beiträge
  2. 1 Unterkategorie
ART OF LATTE - Milchschaumzaubereien
  1. 68 Beiträge
  2. 3 Unterkategorien
Kunden Marktplatz
  1. 37 Beiträge
  2. 8 Unterkategorien
Flavours - Kaffee mit Geschmack
  1. 12 Beiträge
  2. 2 Unterkategorien
Melitta Werkstatt
  1. 110 Beiträge
  2. 3 Unterkategorien
JURA Kaffeemaschinen Forum
  1. 1184 Beiträge
  2. 10 Unterkategorien
NIVONA-WERKSTATT
  1. 62 Beiträge
  2. 4 Unterkategorien
SAECO Forum (und bauähnliche)
  1. 124 Beiträge
  2. 6 Unterkategorien
SOLIS-WERKSTATT
  1. 18 Beiträge
  2. 5 Unterkategorien
BOSCH Benvenuto, SIEMENS Surpresso WERKSTATT
  1. 93 Beiträge
  2. 5 Unterkategorien
SIEMENS EQ UND BOSCH VERO LINIE
  1. 81 Beiträge
  2. 6 Unterkategorien