ProChip BADASS eBIKES

Autor Thema: Die Geheimnisse der PC Software  (Gelesen 15989 mal)

Offline elsi

  • Administrator
  • Sr. Member
  • *****
  • Join Date: Jun 2011
  • Beiträge: 262
  • Dankeschön: 2 mal
Die Geheimnisse der PC Software
« am: 02. Juli 2011, 08:47 »
Hallo,

Ich fasse mal den aktuellen Kenntnisstand zusammen:

die PC Software enhält bcp und sig Datei, wobei sich die bcp mittels umbennen in zip öffnen lassen.

Sig ist meiner Meinung nach eine Signatur die dafür sorgt dass man die bcp nicht einfach ändern kann.

In der geöffneten bcp finden sich *.x Dateien. Dabei handelt es sich um die eigentliche Firmware.

Im Logfile findet sich netterweise sogar ein Hinweis welche Datei in welches Gerät geladen wird und welcher Mikrocontroller verwendet wird. Es handelt sich jeweils um Typen des Herstellers Microchip.

Zum Ansehen der Firmware benennt man die *.x in *.hex um und importiert das Ganze in MPLAB.

Vorher in MPLAB den entspechenden Mikrocontroller Typ einstellen (steht im Logfile).

Jetzt kann man im MPLAB das komplette Programm sehen, allerdings halt in "aus C Source kompiliertem" PIC - Assembler.

Also dann erstmal viel Spass beim Basteln

Gruß

Elsi



Conway Q-EMR 500 (Badass Box typ3.2)
 

Offline Netfreak21

  • Newbie
  • *
  • Join Date: Jun 2011
  • Beiträge: 41
Re: Die Geheimnisse der PC Software
« Antwort #1 am: 05. Juli 2011, 00:56 »
Guten Abend,

habe im Anhang eine bbi.exe die so modifiziert ist, dass die .sig Dateien aktzeptiert werden auch wenn die Signatur falsch ist. Ergo man kann nun die Dateien in den .BCP Archiven ändern und so etwas herumexperimentieren.

Die Änderung selbst ist eigentlich recht simpel ich hatte allerdings Probleme mit 64bit und Win7 bezüglich Ollydbg. Wenn ihr wissen wollt wie es geht einfach bescheid sagen, dann mach ich bei Gelegenheit noch ein Video.

Vllt findet ja der ein oder andere noch was heraus...

MfG

Netfreak

You are not allowed to view links. Register or Login
« Letzte Änderung: 05. Juli 2011, 08:53 von bionx2000 »
 

Offline tommobil

  • Newbie
  • *
  • Join Date: Jun 2011
  • Beiträge: 46
Re: Die Geheimnisse der PC Software
« Antwort #2 am: 05. Juli 2011, 06:09 »
hallo Netfreak21,

danke für einen weiteren schritt, kannst du mir sagen mit welchem programm du die bbi.exe bearbeitet hast.
Ollydbg lässt sich bei mir nicht entpacken, habe 1x geschafft ab es hat nur probleme verursacht. hast du einen link zum download wo Ollydbg dann funktioniert. und wie änderst du die *.bcp dateien. habe sie mir schon einmal angeschaut und bin dabei auf ländercodes gestoßen wenn man diese umstellt müssten keine einschränkungen mehr dasein, werde sie nochmal suchen und dier posten.

bis bald.
KTM Imola Cross 2011  V.5.7 mit BionX 250 HT 37V 9,6Ah
Konsole G2 Vers. 57 - Baterie Vers. 101 - Motor Vers. 94
 

Offline Netfreak21

  • Newbie
  • *
  • Join Date: Jun 2011
  • Beiträge: 41
Re: Die Geheimnisse der PC Software
« Antwort #3 am: 05. Juli 2011, 06:25 »
Ich habe Ollydbg verwendet und ihn von You are not allowed to view links. Register or Login heruntergeladen.
Du solltest ein 32Bit System verwenden oder eine VirtualBox. Aber wie gesagt ich mach bei Gelegenheit mal ein Video...

So muss jetzt mal zur Arbeit radeln...

MfG

Netfreak

P.S.: Ich habe eine Idee wie man die Software ändern kann so dass man die Geschwindigkeit in der Konsole einstellen kann.
 

Offline turbo

  • Newbie
  • *
  • Join Date: Jun 2011
  • Beiträge: 24
  • location: Freiberg am Neckar
Re: Die Geheimnisse der PC Software
« Antwort #4 am: 05. Juli 2011, 09:10 »
You are not allowed to view links. Register or Login
...habe im Anhang eine bbi.exe die so modifiziert ist, dass die .sig Dateien aktzeptiert werden auch wenn die Signatur falsch ist...

Vielen Dank, echt genial.

Hab das mal kurz getestet und es funktioniert super, jetzt werde ich auch mit der 5.6 Version nicht mehr zum Update genötigt, das "Haltbarkeitsdatum" lässt sich leicht verändern.

Gruß turbo
 

Offline bionx2000

  • Jr. Member
  • **
  • Join Date: Jun 2011
  • Beiträge: 68
Re: Die Geheimnisse der PC Software
« Antwort #5 am: 05. Juli 2011, 09:14 »
Hallo Leute,

bitte hier keine Dateien von BionX oder anderer geschützter Software direkt posten!
Schiebt die Dateien auf Rapidshare oder einen anderen Hoster und verlinkt dann hier her.

Danke!

Gruß
b2
« Letzte Änderung: 05. Juli 2011, 11:16 von bionx2000 »
Nachrüstsatz: BionX PL250HT SL XL - 48V, 8.8Ah, G2 Firmware: 59.105.96
 

Offline automated

  • Global Moderator
  • Jr. Member
  • *****
  • Join Date: Jul 2011
  • Beiträge: 53
Re: Die Geheimnisse der PC Software
« Antwort #6 am: 05. Juli 2011, 10:32 »
Schaut doch mal in 60-ktm-pack.bcp rein...
dort gibt es eine datei "bikes" - mit dem hexeditor kann man "max spd/25" finden, und natürlich auch ersetzen - ev. genügt das schon, und bei der Auswahl des eigenen Bikes aus der Liste sind die passenden Parameter gleich mit dabei....
« Letzte Änderung: 06. Juli 2011, 22:58 von automated »
 

Offline Emanuel

  • Jr. Member
  • **
  • Join Date: Jun 2011
  • Beiträge: 51
Re: Die Geheimnisse der PC Software
« Antwort #7 am: 05. Juli 2011, 11:57 »
Ich denke eher in der 00 Core, da ist ne Bionx XML, das sieht mir aus wie ne Registry
mit so feinen Sachen wie MaxSpeedFlag :)

(<description lang="en">Indicates that there is an upper speed limit where the motor is allowed to assist.</description>)

Da sollte man mal NO ausprobieren :D


Leider hilft mir das auch nicht, denn ich brauche eine Software wo auch ein Bionx500 Modell enthalten ist, pls help !
 

Offline automated

  • Global Moderator
  • Jr. Member
  • *****
  • Join Date: Jul 2011
  • Beiträge: 53
Re: Die Geheimnisse der PC Software
« Antwort #8 am: 05. Juli 2011, 21:20 »
Danke für die gepatchte .exe die auch archive ohne Signatur nimmt! :D

Ich hab mich heut Abend etwas gespielt, und darf Euch von einem kleinen Erfolg berichten:
1.)In dem Zip-Archiv "10-updater-pack.bcp" findet sich eine Datei "bionx.xml" seht die doch mal genau durch, darin finden sich offsets (hier wären die Can-Hacker gefragt, ob die hex-offsets auch zu den mitgeschnittenen Daten passen)......
2.) in dem Zip-Archiv "20-basic-pack.bcp" finden sich viele .ht Dateien - das ist HTML-Code gemischt mit python aufrufen (ich bin nicht der HTML-Guru, steinigt mich nicht, wenn das nicht korrekt war)
Es gibt dort eine Datei, die es mir besonders angetan hat, die "customize-profile.ht" dort kann die Verstärkung des Dehnmesstreifens und die verstärkte Unterstützung eingestellt werden....

Zählt man nun 1 und 2 zusammen ergibt sich das Bild im Anhang :D
ein kleiner Hint:
Code: You are not allowed to view links. Register or Login
<tr>
                        <td align="center">
                            <table>
                                <tr>
                                    <td><a href="py:console.assist.maxSpeed.val = max(console.assist.maxSpeed.val - 1.0, 1.0)"><img src="${img('minus-icon.png')}"/></a></td>
                                    <td align="right">      ${console.assist.maxSpeed.val}</td>
                                    <td><a href="py:console.assist.maxSpeed.val = min(console.assist.maxSpeed.val + 1.0, 45)"><img src="${img('plus-icon.png')}"/></a></td>
                                </tr>
                            </table>
                        </td>
</tr>
<tr>
<td>${_('!!Wheel SPEED!!')}</td>
</tr>
<tr>
                        <td align="center">
                            <table>
                                <tr>
                                    <td><a href="py:motor.assist.maxSpeed.val = max(motor.assist.maxSpeed.val - 1.0, 1.0)"><img src="${img('minus-icon.png')}"/></a></td>
                                    <td align="right">      ${motor.assist.maxSpeed.val}</td>
                                    <td><a href="py:motor.assist.maxSpeed.val = min(motor.assist.maxSpeed.val + 1.0, 45)"><img src="${img('plus-icon.png')}"/></a></td>
                                </tr>
                            </table>
                        </td>
</tr>

Damit können nun die gewünschten Speed-values ganz easy ohne Patch-Tools eingestellt werden.
Eventuell ist einer von Euch so nett und bastelt noch Seiten zum Einstellen der vielen vielen Parameter die da noch brach liegen.....

so long.
 

Offline tommobil

  • Newbie
  • *
  • Join Date: Jun 2011
  • Beiträge: 46
Re: Die Geheimnisse der PC Software
« Antwort #9 am: 05. Juli 2011, 22:26 »
Hallo automated

wie bekommst du das bild unten wo man auf der grafik die geschwindigkeiten einstellen kann, was ist das für eine version und was für ein system hast du.

danke für weitere hilfe-
KTM Imola Cross 2011  V.5.7 mit BionX 250 HT 37V 9,6Ah
Konsole G2 Vers. 57 - Baterie Vers. 101 - Motor Vers. 94
 

Offline Netfreak21

  • Newbie
  • *
  • Join Date: Jun 2011
  • Beiträge: 41
Re: Die Geheimnisse der PC Software
« Antwort #10 am: 05. Juli 2011, 23:35 »
Cool,

ich hab damit gleich mal herumexperimentiert.
Man kann sich so eine Seite zusammenbasteln in der man alle Parameter ändern kann wie man möchte :-)

@tommobil
du musst die customize-profile.ht entsprechend umbauen - schau dir mal den Code an...

Ich habe versucht das maxspeedflag von 1 auf 0 zu ändern, aber dann meckert das Teil, dass irgendwas nicht zusammenpasst. Da muss es noch mehr geben.

Hier mein Code:
Code: You are not allowed to view links. Register or Login
<table cellspacing="0" cellpadding="0">
<tr>
<td>
<a href="py:content=None">
<img src="${img('back-icon.png')}"/>
</a>
</td>
<td>
<a href="py:content=None">${_('Back')}</a>
</td>
</tr>
</table>

<div align="center">

<table>
<tr>
<td align="right">${_('Gauge filter (1234)')}</td>
<td><a href="py:console.assist.gaugeFilter.val = max(console.assist.gaugeFilter.val - 1, 2)"><img src="${img('minus-icon.png')}"/></a></td>
<td align="right">  ${console.assist.gaugeFilter.val}</td>
<td><a href="py:console.assist.gaugeFilter.val = min(console.assist.gaugeFilter.val + 1, 4)"><img src="${img('plus-icon.png')}"/></a></td>
</tr>
</table>

<hr>

<table cellspacing="0" cellpadding="0">
<tr>
<td valign="center" align="right">
<table>
<tr>
<td></td>
</tr>
<tr>
<td></td>
<td align="right">${_('Gain A (0008a)')}</td>
<td><a href="py:console.assist.gainA.val = max(console.assist.gainA.val - 0.1, 1.0)"><img src="${img('minus-icon.png')}"/></a></td>
<td align="right">${console.assist.gainA.val}</td>
<td><a href="py:console.assist.gainA.val = min(console.assist.gainA.val + 0.1, 2.0)"><img src="${img('plus-icon.png')}"/></a></td>
</tr>
<tr>
<td>x</td>
<td align="right">${_('Gauge gain (0007)')}</td>
<td></td>
<td align="right">${console.assist.gaugeGain.val}</td>
<td></td>
</tr>
</table>
</td>
<td><img src="${img('custom-profile-11.png')}"/></td>
<td><img src="${img('custom-profile-12.png')}"/></td>
<td><img src="${img('custom-profile-13.png')}"/></td>
</tr>

<tr>
<td valign="center" align="right">
<table>
<tr>
<td align="right">${_('Gauge gain (0007)')}</td>
<td><a href="py:console.assist.gaugeGain.val = max(console.assist.gaugeGain.val - 0.1, 0.5)"><img src="${img('minus-icon.png')}"/></a></td>
<td align="right">${console.assist.gaugeGain.val}</td>
<td><a href="py:console.assist.gaugeGain.val = min(console.assist.gaugeGain.val + 0.1, 2.0)"><img src="${img('plus-icon.png')}"/></a></td>
</tr>
</table>
</td>
<td><img src="${img('custom-profile-21.png')}"/></td>
<td><img src="${img('custom-profile-22.png')}"/></td>
<td><img src="${img('custom-profile-23.png')}"/></td>
</tr>

<tr>
<td></td>
<td><img src="${img('custom-profile-31.png')}"/></td>
<td><img src="${img('custom-profile-32.png')}"/></td>
<td><img src="${img('custom-profile-33.png')}"/></td>
<td>${_('km/h')}</td>
</tr>

<tr>
<td></td>
<td></td>
<td align="center">
<table>
<tr>
<td>${_('Gain B (0008b)')}</td>
</tr>
<tr>
                        <td align="center">
                            <table>
                                <tr>
                                    <td><a href="py:console.assist.gainB.val = max(console.assist.gainB.val - 1.0, 1.0)"><img src="${img('minus-icon.png')}"/></a></td>
                                    <td align="right">      ${console.assist.gainB.val}</td>
                                    <td><a href="py:console.assist.gainB.val = min(console.assist.gainB.val + 1.0, 25)"><img src="${img('plus-icon.png')}"/></a></td>
                                </tr>
                            </table>
                        </td>
</tr>
</table>
</td>
<td align="center">
<table>
<tr><td align="center">${_('Speed limit')}</td></tr>
<tr><td align="center">${console.assist.maxSpeed.val}</td></tr>
</table>
</td>
</tr>

<tr>
                        <td align="center">
                            <table>
                                <tr>
                                    <td><a href="py:console.assist.maxSpeed.val = max(console.assist.maxSpeed.val - 1.0, 1.0)"><img src="${img('minus-icon.png')}"/></a></td>
                                    <td align="right">      ${console.assist.maxSpeed.val}</td>
                                    <td><a href="py:console.assist.maxSpeed.val = min(console.assist.maxSpeed.val + 1.0, 60)"><img src="${img('plus-icon.png')}"/></a></td>
                                </tr>
                            </table>
                        </td>
</tr>
<tr>
<td>${_('!!Wheel SPEED!!')}</td>
</tr>
<tr>
                        <td align="center">
                            <table>
                                <tr>
                                    <td><a href="py:motor.assist.maxSpeed.val = max(motor.assist.maxSpeed.val - 1.0, 1.0)"><img src="${img('minus-icon.png')}"/></a></td>
                                    <td align="right">      ${motor.assist.maxSpeed.val}</td>
                                    <td><a href="py:motor.assist.maxSpeed.val = min(motor.assist.maxSpeed.val + 1.0, 60)"><img src="${img('plus-icon.png')}"/></a></td>
                                </tr>
                            </table>
                        </td>
</tr>

<tr>
                        <td align="center">
                            <table>
                                <tr>
                                    <td><a href="py:console.assist.maxSpeedFlag.val = 0.0"><img src="${img('minus-icon.png')}"/></a></td>
                                    <td align="right">      ${console.assist.maxSpeedFlag.val}</td>
                                    <td><a href="py:console.assist.maxSpeedFlag.val = 1.0"><img src="${img('plus-icon.png')}"/></a></td>
                                </tr>
                            </table>
                        </td>
</tr>
<tr>
                        <td align="center">
                            <table>
                                <tr>
                                    <td><a href="py:console.preference.region.val = max(console.preference.region.val - 1.0, 1.0)"><img src="${img('minus-icon.png')}"/></a></td>
                                    <td align="right">      ${console.preference.region.val}</td>
                                    <td><a href="py:console.preference.region.val = min(console.preference.region.val + 1.0, 4.0)"><img src="${img('plus-icon.png')}"/></a></td>
                                </tr>
                            </table>
                        </td>
</tr>
</table>

</div>

MfG

Netfreak
 

Offline automated

  • Global Moderator
  • Jr. Member
  • *****
  • Join Date: Jul 2011
  • Beiträge: 53
Re: Die Geheimnisse der PC Software
« Antwort #11 am: 06. Juli 2011, 09:20 »
Ich denke, wir sollten das Ganze etwas anders angehen:
Im Anhang zwei Dateien, Diese 2 dateien in 20-basic-pack.bcp kopieren.
nach dem Klick auf den KTM-link (rechts oben) wird eine eigene Seite aufgerufen, die wir je nach Belieben adaptieren können.

Jetzt brauchen wir nur noch einen HTML-Künstler der möglichst viel wie in der bionx.xml beschrieben rauslegt....
« Letzte Änderung: 06. Juli 2011, 23:05 von automated »
 

Offline Netfreak21

  • Newbie
  • *
  • Join Date: Jun 2011
  • Beiträge: 41
Re: Die Geheimnisse der PC Software
« Antwort #12 am: 06. Juli 2011, 12:48 »
Gute Idee,

ich habe einige interessante Einstellungen gesehen die man da leicht einbauen könnte und auch welche die etwas schwieriger werden aber kommt Zeit kommt Rat ;-)

Ich würde mal alle Optionen einbauen die in der summary.csv stehen und zusätzlich die Geschwindigkeitsbegrenzung ein und ausschalten, wenn das alles funktioniert könnten wir noch einen Schritt weiter gehen und evtl. sogar neue Zahlencodes für die Konsole einbauen die sind ja auch noch in einer Datei definiert.

Ich würde bei Gelegenheit mal einen HTML Editor schnappen und was basteln.

MfG

Netfreak
« Letzte Änderung: 06. Juli 2011, 22:59 von automated »
 

Offline bionx2000

  • Jr. Member
  • **
  • Join Date: Jun 2011
  • Beiträge: 68
Re: Die Geheimnisse der PC Software
« Antwort #13 am: 06. Juli 2011, 12:52 »
Hallo Netfreak21,

danke - das wäre toll von dir.
Mir mangelt es leider oder Gott sei Dank wegen Projekten etwas an Zeit :-)

LG
b2
Nachrüstsatz: BionX PL250HT SL XL - 48V, 8.8Ah, G2 Firmware: 59.105.96
 

Offline automated

  • Global Moderator
  • Jr. Member
  • *****
  • Join Date: Jul 2011
  • Beiträge: 53
Re: Die Geheimnisse der PC Software
« Antwort #14 am: 06. Juli 2011, 17:08 »
Ich hab noch was, da sind ja einige Sachen gar nicht genutzt.....
Probiert mal die zwei Dateien im Anhang, damit kann man alles was geht auslesen.... :D
 

 

UA-12726453-11 Sponsoren: Open eBike SHOP | ProChip | BADASS eBIKES