Sigma BC1009 PC Interface

#2174065
Lesenswert?

Hallo,

da mein neuer Tacho die Möglichkeit der Kommunikation mit dem PC bietet, 
die passende Dockingstation jedoch 20€ kostet und mir diese Spielerei so 
viel nicht wert ist, suche ich eine Möglichkeit, diesen Adapter selbst 
zu bauen.

Hat schon mal einer von euch an dem Tacho gemessen und herausgefunden, 
über welches Protokoll der über seine 2 Pins mit dem PC Daten 
austauscht?

http://www.amazon.de/Sigma-Fahrradcomputer-BC-1009-schwarz/dp/B002NGZIRE

http://www.amazon.de/Sigma-Docking-Station-Topline-09/dp/B003309PH8

Ich werde mal nacher mit dem Oszi messen ob der Tacho bereits so Signale 
an den beiden unteren Pins ausgibt, wobei ich das bezweifle, sprich die 
Übertragung muss initialisiert werden, vermutlich durch das anlegen 
einer externen Spannung.

Wenn jemand schon einen Adapter gebastelt hat, wäre das natürlich sehr 
praktisch.

Danke schon mal im Voraus für eure Antworten.

MFG Johannes
Gast #2190877
Lesenswert?

hi johannes,

ich habe gerade mehrere stunden nach der gleichen thematik gegoogelt 
bevor ich überhaupt mal auf diesen thread gestoßen bin.
es wundert mich sehr, dass anscheinend noch niemand ähnliches versucht 
hat.

bleib dran, ich zähl auf dich.
vll kann ich dich demnächst unterstützen.

hier mal ein bisschen input: http://paste.ubuntuusers.de/392335/

es scheint sich dem treiber nach um eine serielle (uart ?) zu handeln.
hast du die datacenter software? kann sie leider nirgends im internet 
finden,

g peter
Gast #2190894
Lesenswert?

sorry, bin hier nicht angemeldet und kann deshalb meine posts nicht 
editieren.


da die kommunikation bei den "sigma rox" modellen auch nur über 2 pins 
funktioniert, gehe ich davon aus, dass sie identisch mit den anderen 
modellen ist.

die datacenter version für die rox modelle kann kostenlos 
heruntergeladen werden:
http://www.update.sigmasport.com/en/update/


in diesem packet sind keine treiber dateien (.sys) enthalten.
In den .inf dateien wird wie oben schon verlinkt, auf eine usbser.sys 
verwiesen die schon bei windows dabei ist.
daher gehe ich davon aus, dass in der docking station keine proprietäre 
hardware verbaut ist.
bitte korrigiert mich wenn ich falsch liege.

die nutzung dieses treibers ist sogar "dokumentiert":
http://support.microsoft.com/kb/837637


es müsste doch möglich sein im www jemanden zu finden der diese software 
nutzt und uns sagen kann, als was sich die dockingstation am pc meldet.
(kann mit sicherheit auch aus der inf erschlossen werden)
mehr in kürze :)
Persönliche Seite #2190922
Lesenswert?

Peter schrieb:
> In den .inf dateien wird wie oben schon verlinkt, auf eine usbser.sys
> verwiesen die schon bei windows dabei ist.
> daher gehe ich davon aus, dass in der docking station keine proprietäre
> hardware verbaut ist.

Naja, dann wird wohl in der Dockingstation eine Hardware enthalten sein, 
die sich zum PC hin als CDC verkauft.
Welches Protokoll die Dockingstation wiederum zum Tacho verwendet, ist 
dadurch nicht festgelegt, das kann irgendwas sein.
#2197058
Lesenswert?

Hi Fans,


statt mich um die anstehenden klausuren zu kümmern habe ich mich etwas 
in die sigma-docking geschichte reingesteigert.

Habe bei ebay sone dockingstation ersteigert und sie gleich mal 
auseinander gerissen.

Hatte gehofft etwas anderes in dem gehäuse zu finden, wo es sich doch so 
schön als virtuellen comport präsentiert.
Nnach stunden langer suche bei der frage wie wohl das 1-Wireinterface 
realisiert sein könnte bin ich auf diesn link gestoßen:
http://www.maxim-ic.com/app-notes/index.mvp/id/214


scheint wohl hinfällig :(

der Contröller kann ja alles mögliche anstellen.

Habe dann gleich mal mit fädeldraht die kontakte nach außen geführt um 
mit dem oszi mal mit zulauschen.
Meiner bescheidenen meinung nach sieht das irgendwie nach UART aus... 
aber ich hab ja keine ahnung.

Vielleicht kann sich das mal einer von euch anschauen?
Ich bin mit meinem Latein am Ende.


Ist es möglich über die offensichtlich vorhandene JTAG-Schnittstelle an 
die Speicherinhalte des AT90USB162 zu kommen?
So könnte man wenigstens den USB-Discriptor ändern um die Station auch 
mit anderen Tachos? nutzen zu können...
Angehängte Dateien:
#2286357
Lesenswert?

Moin,

hast du an den beiden Pins gemessen als der Tacho dran war? Und was hast 
Du gemacht? Die Software gestartet/Tache erkennung gestartet?

Man müsste mal mitloggen wie die Kommunikation aussieht wenn man z.B. 
die Radgröße per Software verändert. Also zweimal mit Größe X und einmal 
mit Y konfigurieren und die Unterschiede vergleichen....
#2286433
Lesenswert?

hi,

ja habe die beiden pins des tachos belauscht.

wenn ich es richtig weis ist das teil der sequenz wie sich der tacho bei 
der software meldet.


habe mir schon einen logic analyzer gekauft. hatte allerdings noch keine 
zeit/lust die kommunikation zu belauschen.
Das equipment wäre da...

happy hacking ;)

peter
#2287321
Lesenswert?

Das Problem is halt nur wieder mal: Woran merkt der Tacho dass nicht der 
Reedkontakt sondern ein Mikrocontroller an der anderen Seite ist.

Vorstellen kann ich mir so einiges, z.B. zwei Widerstände in Reihe von 
denen der Kontakt einen überbückt und ein pullup in der dockingstation, 
so dass der tacho da eine externe spannung detektieren kann.

Der Schaltplan der Dockinstation wäre da in Auszügen interessant :=)
(Also wie ist der Atmel mit dem Tacho verbunden. Die USB und LED's sind 
uninteressant, aber auf welchen Pins der liegt währe nett....)
#2287394
Lesenswert?

also das oszillogramm zeigt die "introsequenz" wenn sich der tacho bei 
der dockingstation meldet.

dieses telegramm wird vermutlich dann ausgelöst, wenn der 
dockingcontroller den highpegel des tachokontaktes bermerkt ?!

die vorrausgehende "0010" sequenz sagt dem tacho wohl "bitte melde dich"

vermutlich ist dieses "0010" stark vom reed-impuls verschieden.

habe mal das bild editiert und die stellen markiert an denen die 
tachokontakte an den kontroller angeschlossen sind.
die beiden pulldown widerstände gegen massen sind wohl 1Meg.


hab den logic analyser parat und werde heute abend mal nen durchlauf 
machen.

in welchem format stell ich die daten vom logic analyzer am bsten hier 
rein?

vg
Angehängte Dateien:
#2287416
Lesenswert?

Magst Du noch ein Bild von der Rückseite der Platine machen?

Die Widerstände sind vermutlich eher ein Schutz des Controllers. Ein Meg 
ändert den Pegel kaum. Ich hab im Moment leider nicht so viel Zeit, 
sonst würde ich schnell im Datenblatt schauen welche Pins das sind, an 
die der Tacho da kommt. Ich vermute der Atmel wird einen Pin auf Masse 
und einen auf High legen - damit erkennt der Tacho dass da eine externe 
Spannung anliegt und er wird in den PC-Modus wechseln. Jedenfalls ist 
sowas denkbar :)

Zum Format kann ich nichts sagen, hab noch nie mit nem LA gearbeitet. 
Interessant fände ich wie die Pegel auf den beiden Pins der Docking 
station gegen Masse aussehen, wenn kein Tacho angeschlossen ist.


Grüße,
  Florian
#2287507
Lesenswert?

also die pegel ohne tacho sind exakt 0V.

deshalb gehe ich davon aus, dass der tacho dadurch erkannt wird, dass 
sein "permanent high" pin in kontakt mir dem docking controller kommt.

daraufhin wird vom dockingcontroller die gesehene sequenz gesendet 
worauf sich dann der tacho meldet. nur ne überlegung.



die rückseite ist unbestückt und hat auch sonst nicht viel zu bieten.

alle signale sind von der vorderseite erreichbar.

zu den controller pins:

Pin6 : (OC.0B / INT0) PD0
Pin7 : (AIN0 / INT1) PD1

aus datenblatt seite 3 : 
http://www.atmel.com/dyn/resources/prod_documents/doc7707.pdf
#2287516
Lesenswert?

Peet P. schrieb:
> also die pegel ohne tacho sind exakt 0V.
>
> deshalb gehe ich davon aus, dass der tacho dadurch erkannt wird, dass
> sein "permanent high" pin in kontakt mir dem docking controller kommt.

Ah, okay, das macht Sinn - im tacho ist ja eh ein pullup für den reed 
kontakt.

>
> daraufhin wird vom dockingcontroller die gesehene sequenz gesendet
> worauf sich dann der tacho meldet. nur ne überlegung.


Und wenn die Dockingstation da keinen Kurschschluss hinwirft (wie der 
Reed kontakt das tun würde) kann ein ADC im Tacho das erkennen. Oder der 
Reedkontakt hat noch nen Widerstand drin. (Hab das Teil grade nicht 
hier, kann also nicht messen). Ist das Low da in dem Plot ein 0V?

> die rückseite ist unbestückt und hat auch sonst nicht viel zu bieten.
okay, wollte nur schauen was da womit verbunden ist :)

/Florian
#2287520
Lesenswert?

ja das ist 0v +- rauschen.

der reedkontakt hat mit sicherheit noch einen widerstand drin.
auf jeden fall steckt irgendo in / an der fahrrad halterung ein 
widerstand.


wie sonst könnte der tacho zwischen rad1 und rad2 unterscheiden? es gibt 
ja von sigma extra "zweitrad halterungen" für den tacho. aber nur eine 
vermutung.
#2287613
Lesenswert?

netter link. wundert mich dass ich bei meiner suche nicht schon selbst 
drauf gestoßen bin.
leider kann ich sogut wie garnicht programmieren und linux ist auch ein 
großes rätsel für mich :(


hab gerade am fahrrad gemessen und es gibt weder parallel noch serielle 
widerstände in der fahrradhalterung.

das (schrottige) multimeter zeigt 700mOhm an wenn der reedkontakt 
geschlossen ist.
#2287680
Lesenswert?

und post nummer 3...
schade dass man nicht editieren kann....



habe mal den logic analyzer angeworfen und die "intro sequenz" 
mitgeloggt.
Diese sequenz wird übertragen wenn ich das "Sigma DataCenter" öffne.

daten liegen als csv vor und ich habe noch einen screenshot angehängt.

die pegel sind masse bezogen. das oszillogramm oben nicht. da hatte ich 
die masse des oszis mit einem kontakt des tachos verbunden.



shot2.png zeigt die kurze nadel auf kanal 6 besser aufgelöst.
möglich dass diese nadel als "moduswechsel" interrupt ausgewertet wird??
Angehängte Dateien:
#2287702
Lesenswert?

oh man... und post nummer 4:



gibt es ne möglichkeit die senderichtung zu unterscheiden?


denke da an folgendes: es muss ja ein kleiner strom fließen um am 
eingangswiderstand des kommunikationsparters einen spannungsabfall zu 
erzeugen.

kann ich jetzt einen "shunt widerstand" in die leitung einbauen und 
somit an der strom richtung erkennen wer sendet und wer empfängt?

bitte her mit meinungen zu diesem vorschlag :)


hat vielleicht jemand schonmal irgendwo bilder von einem offenen tacho 
gesehen?
hat jemand zufällig einen kaputten sigma tacho mit twistlock den er mir 
für forschungszwecke überlassen will? :)
#2288929
Lesenswert?

also hier kommt jetzt dann der 5. post in folge.


war heute nicht nur daheim relativ fleißig.

anbei einpaar bilder des heutigen testlaufes.

die widerstände: 10k.


auf den oszi plotts ist schön zu erkennen, dass es an dem widerstand je 
nach senderichtung zu einem spannungsabfall kommt.

NewFile0.png:
Von der Dockingstation zum Tacho.

NewFile1.png:
Vom Tacho zur Dockingstation


bei der gelegenheit hab ich auch mal noch ein bild von der unterseite 
der platine gemacht.


wie gehts weiter?!
Angehängte Dateien:
(Firma: Privat) #6041661
Lesenswert?

Ist das hier noch relevant?

Ich habe auch einen Sigma Fahrradcomputer und habe mal kurz 
nachgemessen.

Seltsam, daß das noch keiner erwähnt hat: wenn man den Computer auf die 
Display-Seite legt und die Taste nach "unten" (also zu einem selbst) 
zeigt, liegen an den beiden Pins eine Spannung von ~3V. (links +, rechts 
-).

Ich könnte mir nun vorstellen, daß die Kommunikation auf ein 
Kurzschließen der beiden Kontakte basiert, also i.W. wie der 
Reed-Kontakt.
Der Reed-Kontakt wird die Pins für einen kurzen Impuls kurzzschließen 
(also ein 0-Potential erzeugen). Danach wird er den Kontakt für eine 
Rad-Umdrehung öffnen. Das Kurzschließen beim Dock kann man nicht 
definiert von dem Kurzschluß des Reed-Kontaktes unterscheiden (man 
stelle sich vor, man fährt extrem laaaaangsam). Aber der kurze Impuls in 
der "Intro-Sequenz" wird sich von einer Umdrehung des Rades 
unterscheiden, soooo schnell fährt keiner.

Da ich keine Docking Station habe, kann ich das nicht weiter verfolgen. 
Interessant wäre tatsächlich wie lange der kürzeste Impuls dauert; das 
würde Aufschluß auf die Übertraguungsrate geben. Danacj müßte man halt 
ab jeder fallenden/steigenden (je nach Messpolarität) Flanke die Bits 
abzählen und so die Daten ermitteln.
Gast #6945440
Lesenswert?

Hallo,
ist doch faszinierend, wie lange so ein Thread interessant und "aktuell" 
bleibt...
Ich habe bspw. heute erst entdeckt, dass meine ollen Sigma BC... beide 
datenfähig sind :-)
Und dabei habe ich diesen ebenso ollen Thread entdeckt und mit Interesse 
gelesen...
Sind da noch Leute von Euch dran? Wäre auch daran interessiert...

Soweit erstmal, liebe Grüße
Georg

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren