Yhteyden yrittäminen fdt:stä

Avatar
PetriK
Viestit: 1650
Liittynyt: 08 Maalis 2006, 19:20
Paikkakunta: Vantaa

Viesti Kirjoittaja PetriK »

Jep - diodi on vaihdettu ja FWE ei aiheuta muutoksia missään signaalissa mitä olen mitannut - tai siis tottakai pyssäyttää tuon watchdogin niin ettei ecu resetoidu.

Lueskelin manuaaleista lisää ja olin ymmärtävinäni FWE on rautatason kirjoitussuojaus, eli prossuun sarjaliikenteellä user modessa kytkeytyminen ei välttämättä edes pitäisi vaatia FWE:täkään jos siellä on sopivat ohjelmat ladattuna - mutta tämä on vain oletus koska homma on mulle todella uusi.

Loggasin myös FDT:n käyttäytymistä ja mitä tapahtuu on että se lähettää kaksi bittipursketta (tai tosi pitkiä bittejä). Ensimmäinen kesti 20ms ja toinen 22ms kun asetuksena oli että ohjelmointikerneli pitäisi ladata prosessoriin. Jos taas asetus oli että ohjelmointikerneli on jo prosessorin muistissa niin baud ratea muuttumalla nämä bittipurskeiden pituudet muuttuivat.

Eli alan olemaan aika vakuuttunut että pitäisi kohdistaa toimenpiteet boot modeen, mutta silloin koko muisti ensimmäiseksi tyhjennetään. Tästä johtuen tänään suurin osa ajasta meni siihen että lopulta löytyi tuo toisessa viestissä kerrottu EPROM emulointitila tästä prosessorista. Tuon kautta lukeminen pitäisi olla todella helppoa - mutta ennen kuin lähden tekemään 40 johdon vetämistä prossulta piirikantaan, niin täytyy vielä vähän hakea vahvistusta asiaan.

Eli tässä viestissä enemmän tuosta EPROM lähestymistavasta...

http://www.busanistit.org/foorumi/ikonboard.cgi?act=ST;f=34;t=4735




Edited By PetriK on 1194117912
Miksi ... aina jää varaa parantaa...

http://www.facebook.com/ecueditorcom
timo3
Viestit: 139
Liittynyt: 27 Huhti 2007, 07:47
Paikkakunta: suomi

Viesti Kirjoittaja timo3 »

Mää yritin kanssa vähän emuloida 7052:sta toisella pc:llä.
Laitoin ne vastakkain TxD ja RxD linjoista, lähinnä kiinnosti mitä se FDT lähettä, se lähettää yhden merkin eri nopeuksilla ja siihen kun vastaa samalla merkillä takaisin tulos on tämä:

FDT:lle asetukseksi 1200

Jos asetuksilla 1200,n,8,1 tai 1200,e,7,1
lähettää saman merkin takaisin FDT:lle

Initiating BOOT SCI sequence
Skipping 9600
Skipping 4800
Skipping 2400
Attempting 1200
Received immediate response from device: 0x00
Error No 15024: Boot failed

Jos vastaa ohjelmalle jotain muuta kuin sen lähettämän
merkin tai asetuksilla 1200,n,7,1

Initiating BOOT SCI sequence
Skipping 9600
Skipping 4800
Skipping 2400
Attempting 1200
Error No 15024: Boot failed

Eihän tosta mitään hyötyä ollut, mutta kiinnosti vaan asia.

Täytyy tutkia sitä 1999 busan koodi saako siitä mitään selkoa.
timo3
Viestit: 139
Liittynyt: 27 Huhti 2007, 07:47
Paikkakunta: suomi

Viesti Kirjoittaja timo3 »

Tuo japsipojan FlashWriter SH2/705X on vähän viisaampi.

Kun käänti ton 99 busan bin tiedoston BIN2MOT.exe:llä ja latas sen FlashWriter:lle

Niin se yrittää yhteyttä niin kauan ennen kun vastaa sille samalla merkillä minkä se lähettää, mutta vastausnopeudella ei ole väliä 1200bit/s -19200bit/s kaikki käy.

Sen jälkeen jos sille ei vastaa sen lähettämään merkkiin, niin se ilmoittaa:

Target CPU: SH2/7052 was selected.
Bit rate caribration...
Success.
Negotiation...
No responce after transmit 55...
Failer.

Mutta jos vastaa mitä tahansa tulee aina:

Target CPU: SH2/7052 was selected.
Bit rate caribration...
Success.
Negotiation...
Answer not AA...
Failer.

Mitähän tietoa se haluaa, että se hyväksyy ja alkaa "ns." kirjoittamaan flash:a




Edited By timo3 on 1194136921
Avatar
PetriK
Viestit: 1650
Liittynyt: 08 Maalis 2006, 19:20
Paikkakunta: Vantaa

Viesti Kirjoittaja PetriK »

Sitä oli innostuttu pohtimaan sarjaliikenteen protokollia aamuyöstä ;-)). Hyvä homma että saadaan lisää tietoa, kaikki pienetkin tiedonmuruset auttavat hankkeen eteenpäinviennissä kun teoria muuttuu testauksen ja kokeiluiden kautta tiedoksi.

Muistelisin että normaali boot mode sequence löytyy noista manuaaleista, siellä on kerrottu koko prosessi. Toisaalta muistelen että autoissa siellä on joku erillinen initialisointikoodi eri versioille - eli tavallaan tarkistaa että ennen kuin päästään kirjoittamaan pitää tietää että mitä ohjelmaa on ecuun työntämässä.

Tuon ei kuitenkaan pitäisi vaikuttaa alkuvaiheen kättelyyn, eli siihen että en saa ECU:lta vastausta tähän nopeuden synkronointivaiheeseen: 00h->??, 00h->??, Timeout. Skoopilla näkee että noi lähtevät ulos, mutta ei tule mitään vastausta - edes boot modessa. Tosin boot modea en ole kovin paljoa testannut kun haluaisin ensin varmistua että saadaan koodi luettua prosessorilta.
Miksi ... aina jää varaa parantaa...

http://www.facebook.com/ecueditorcom
Avatar
PetriK
Viestit: 1650
Liittynyt: 08 Maalis 2006, 19:20
Paikkakunta: Vantaa

Viesti Kirjoittaja PetriK »

Olisiko tässä boot mode sequence kuvattuna jota FDT:n pitäisi lähettää ?

Kuva
Miksi ... aina jää varaa parantaa...

http://www.facebook.com/ecueditorcom
timo3
Viestit: 139
Liittynyt: 27 Huhti 2007, 07:47
Paikkakunta: suomi

Viesti Kirjoittaja timo3 »

Nyt on 7052 emulointia toisella PC:llä FlashWrite ohjelmaan suoritettu tähän asti, petrik lähettämän taulukon mukaan.

Communication port COM1 was opened with 19200bps
Load S-FORMAT file...
C:\Documents and Settings\Administrator\Desktop\busa\BUSA.MOT was opened.
Under Preparation...
Programmed address 00000000-0000FFFF
Programmed size 65536 bytes (H'10000)
Target CPU: SH2/7052 was selected.
Bit rate caribration...
Success.
Negotiation...
Transmit flash writer program...
Erasing flash memories...
Success.
Communication port COM1 was opened with 38400bps
Checking flash writer program...
Control program is not running...
Failer.

-yhteyden kaliprointi suoritettu.
-neuvonpito ohjelman kanssa suoritettu.
-FlashWrite ohjelma lähettänyt ilmoituksen 2DC (732) merkin lähettämisestä.
-ilmoitus vastaanotettu lähettämällä määrä takaisin.
-FlashWriten lähetettyä merkit yksi kerralaan, ylempi tavu ensiksi ja siten alempi tavu, kaiutettu merkit takaisin.
-732 merkin vastaanoton jälkeen lähetetty FlashWritelle. merkki AA(170), (ilmoitus tarkistuksesta ja flash:n pyyhkimestä).
-FlashWrite lähettää FB
-homma pysähtyy siihen.

Tuo FlashWriten lähettämä 732 merkkiä on jotain muuta, kuin sitä busan BIN2MOT.exe:llä käännettyä koodia, onko se RAM:iin ladattu "kernel" joka vasta osaa viedä kirjoitettavan tiedon Flash:n.
Vai mikä systeemi ja järjestys tuossa boot modessa oikein on?

Tuon emuloinnin onnistumisesta vois olla hyötyä, jos tulee tarvetta tehdä oma flash:n kirjoitus ohjelma.
timo3
Viestit: 139
Liittynyt: 27 Huhti 2007, 07:47
Paikkakunta: suomi

Viesti Kirjoittaja timo3 »

Tolla systeemillä saa sen FDT lataaman kernel:n ulos, jos sitä ei satu olemaan siellä ohjelman asennuskansiossa järkevässä heksamuodossa.
Avatar
PetriK
Viestit: 1650
Liittynyt: 08 Maalis 2006, 19:20
Paikkakunta: Vantaa

Viesti Kirjoittaja PetriK »

Hieno homma !!! Tuo vaikuttaa lupaavalta, eli täytyy edetä toiseen vaiheeseen.

Mitenkäs tuo bit rate calibration. Antaako ulos 0x00 väli 0x00, eli ECU laskee tuosta bit rate calibrationista mittaamalla tuosta välistä nopeuden joko 9.6k tai 19.2k nopeudelle ? Käsittääkseni prosessori osaa jompaa kumpaa noista ja SCK:ta ei tarvita kun 9.6 ja 19.2 ovat vaihtoehdot vaan kalibrointi tehdään tuon välin avulla. Mulla tuo ohjelmointi on pysähtynyt jo tuohon nopeuden kalibrointiin kun mitään vastausta ei ole tullut ? Aloin purkamaan EVOn 7052 koodia siinä toivossa että löytäisin tehdäänko nopeuden mittaus riippumatta siitä missä moodissa ECU on. Mutta hittolainen että on haastavasti käännettyä koodia, käyttää koko ajan alirutiinikohtaisia vakioita sekä pointtereita. Toi on musta selvästi käännetty C-koodista ja on pitkä tie kuljettavaksi.

Mutta asiaan...

Alan olemaan sitä mieltä että käyn irroittamassa pyörästä varmuudella ehjän ecu:n ja testaan sillä tuon FDT:n. Tällaiset varmistukset tuli vielä tänään tehtyä:
- Eilen mittasin sen että mitä noista liittimen pinnoista pitäisi löytyä jos komponentit on juotettuna. Ohjeet mittaamiseen löytyy täältä moottorinohjausryhmästä ja käsittääkseni mittaamalla ei kyllä pysty rikkomaan mitään.
- Tarkistin tänään vielä manuaalista ohjelmointijännitteet, lähinnä sen että käytetään aina Vcc:tä eikä VPcc:tä. Nekin näyttivät olevan kunnossa, eli kytkentäkaavio toimiii.
- Luin eilen että prosessorissa on jonkinlainen suojaus prosessorin pinnoille ylijännitteitä varten.
- MD1 signaali on löytynyt, joten Boot modeen tuo ei mene edes vahingossa
- Tx ja Rx linjat on mitattu suoraan prosessorin vierestä niin että ne ovat varmasti oikein päin.

Eli en enään näe mitään estettä sarjaprotokollan testaamiseksi ehjällä eculla koska:
1) Mittaamalla voidaan todeta että komponentit ovat paikallaan
2) ECUn rikkoontuminen on todella erittäin epätodennäköistä

Eli nyt täytyisi ennättää hakemaan ecu irti ja ei muuta kuin mittaamaan ja kokeilemaan.

ps. Tuolla hakemistossa on sorsakoodi ECU Explorer:lle(Software/ECU Explorer). Se on kirjoitettu toimimaan OBD portin kautta.




Edited By PetriK on 1194294464
Miksi ... aina jää varaa parantaa...

http://www.facebook.com/ecueditorcom
timo3
Viestit: 139
Liittynyt: 27 Huhti 2007, 07:47
Paikkakunta: suomi

Viesti Kirjoittaja timo3 »

Antaako ulos 0x00 väli 0x00, eli ECU laskee tuosta bit rate calibrationista mittaamalla tuosta välistä nopeuden joko 9.6k tai 19.2k nopeudelle ?


käsittääkseni juuri näin, emuloinnissa vastasin sille suoraan nopeudella 19200.

Eli en enään näe mitään estettä sarjaprotokollan testaamiseksi ehjällä eculla koska:

Arvaa onko sama käynnyt mielessä ton oman ecu: kanssa.




Edited By timo3 on 1194297260
timo3
Viestit: 139
Liittynyt: 27 Huhti 2007, 07:47
Paikkakunta: suomi

Viesti Kirjoittaja timo3 »

Testasin vielä tota ohjelman emuloitia, latasin siihen eri tiedoston, silti FlashWriten alussa lähettämät 732 merkkiä ovat samat, vaikka tiedosto olivat erillaisia.
Vahvasti näyttää siltä, että boot modessa ei pääse suoraan käsiksi rommiin, vaan sen kirjoitus ja ""luku"" tapahtuu ram:in välityksellä.
Eli FlashWrite ajaa alussa ram:iin ohjausohjelman jonka siirtää vasta tiedot flash:iin.

Olisko noin?




Edited By timo3 on 1194373472
Avatar
PetriK
Viestit: 1650
Liittynyt: 08 Maalis 2006, 19:20
Paikkakunta: Vantaa

Viesti Kirjoittaja PetriK »

Tuo japsipojan FlashWriter SH2/705X on vähän viisaampi.


Löysitkö muuten jostain englanninkielisen version? Mulla ei suostunut asentamaan tuota niiden saitilta löytynyttä fwex208.lzh paketin sisältä löytyvää softaa...
Miksi ... aina jää varaa parantaa...

http://www.facebook.com/ecueditorcom
Avatar
PetriK
Viestit: 1650
Liittynyt: 08 Maalis 2006, 19:20
Paikkakunta: Vantaa

Viesti Kirjoittaja PetriK »

Tuolla FDT asennushakemistossa taitaa muuten olla kerneliohjelmat kirjoitettuna C:llä.

Mutta pitäisi vaan ehtiä irroittamaan ECU pyörästä ja kokeilla sitä tuossa user modessa - siitä saattaisi tulla vastauksia...
Miksi ... aina jää varaa parantaa...

http://www.facebook.com/ecueditorcom
Avatar
PetriK
Viestit: 1650
Liittynyt: 08 Maalis 2006, 19:20
Paikkakunta: Vantaa

Viesti Kirjoittaja PetriK »

Tässäpä alla ohje miten tuo sarjaprotokolla toimii. Tämä ohje on kirjoitettu SH7051:lle eli pitäisi olla sama tässä 7052:ssakin.

http://documentation.renesas.com/eng....prg.pdf

Eli boot modessa pitäisi tapahtua ns. jatkuva 0x00, 0x00, 0x00 lähetys kunnes prosessori vastaa 0x00. Tuota en ole vielä saanut kertaakaan monitoroitua skoopilla että FDT olisi edes lähettänyt tuon 0x00:n useammin kuin kaksi kertaa. Tämä initialisoidaan MD1:llä, FWE:tä ei taideta tarvita.

User program modessa pitää olla prosessorilla tietyt koodinpätkät jo valmiiksi ladattuina jotka osaavat kuitata 0x00:n heti kun oikea nopeuskin on tiedossa. Siellä pitäisi olla valmiiksi FWE monitoring program joka tunnistaa että FWE kääntyy ja osaa reagoida siihen.
Miksi ... aina jää varaa parantaa...

http://www.facebook.com/ecueditorcom
Avatar
PetriK
Viestit: 1650
Liittynyt: 08 Maalis 2006, 19:20
Paikkakunta: Vantaa

Viesti Kirjoittaja PetriK »

Ja pientä edistymistä... tänään tuli postissa SH7086 kokeiluboardi ja E8 programmeri.

- E8 otti yhteyden boardiin pitkän harjoittelun jälkeen ensin hex workshopissa ja sitten FDT:ssä boot modessa.
- User modessa yhteyttä ei saatu, suurin syy lienee se että user mode microkernel puuttui
- Ohjelmointi boot modessa onnistui helposti ..., mutta boot mode aina alussa tyhjentää flashin joten sitä ei vielä busan ecuun halua testata.

Seuraavaksi vielä pitää tehdä e8 -> busan ecu välikaapeli ja kokeilla että onnistuuko user mode busan ecun kanssa. en kuitenkaan ole kovin varma siitä että onnistuisi...

Tutustuin myös hex workshoppiin ja nähtävästi kaksi strategia jolla koodin saa ulos ovat:
1) Prossun muuttaminen EPROM:ksi josta tuossa toisessa threadissa kirjoitettiin
2) Ostan vielä e10 laitteen ja yritetään AUD portin kautta ajaa sisään user moden
tarvitsema mikrokernel. 7052:n mikrokerneli löytyy FDT:n kirjastoista.

Tämä e8 (USD pohjainen ohjelmointilaite joita mulla on kaksi ja toisesta luovun mielelläni) näyttää toimivan vain sarjaportin kautta, mutta hallitsee kyllä FWE, Boot, MD ja muutkin signaalit automaattisesti.
Miksi ... aina jää varaa parantaa...

http://www.facebook.com/ecueditorcom
Avatar
PetriK
Viestit: 1650
Liittynyt: 08 Maalis 2006, 19:20
Paikkakunta: Vantaa

Viesti Kirjoittaja PetriK »

timo3 kirjoitti:Nyt on 7052 emulointia toisella PC:llä FlashWrite ohjelmaan suoritettu tähän asti, petrik lähettämän taulukon mukaan.

Communication port COM1 was opened with 19200bps
Load S-FORMAT file...
C:\Documents and Settings\Administrator\Desktop\busa\BUSA.MOT was opened.
Under Preparation...
Programmed address 00000000-0000FFFF
Programmed size 65536 bytes (H'10000)
Target CPU: SH2/7052 was selected.
Bit rate caribration...
Success.
Negotiation...
Transmit flash writer program...
Erasing flash memories...
Success.
Communication port COM1 was opened with 38400bps
Checking flash writer program...
Control program is not running...
Failer.

-yhteyden kaliprointi suoritettu.
-neuvonpito ohjelman kanssa suoritettu.
-FlashWrite ohjelma lähettänyt ilmoituksen 2DC (732) merkin lähettämisestä.
-ilmoitus vastaanotettu lähettämällä määrä takaisin.
-FlashWriten lähetettyä merkit yksi kerralaan, ylempi tavu ensiksi ja siten alempi tavu, kaiutettu merkit takaisin.
-732 merkin vastaanoton jälkeen lähetetty FlashWritelle. merkki AA(170), (ilmoitus tarkistuksesta ja flash:n pyyhkimestä).
-FlashWrite lähettää FB
-homma pysähtyy siihen.

Tuo FlashWriten lähettämä 732 merkkiä on jotain muuta, kuin sitä busan BIN2MOT.exe:llä käännettyä koodia, onko se RAM:iin ladattu "kernel" joka vasta osaa viedä kirjoitettavan tiedon Flash:n.
Vai mikä systeemi ja järjestys tuossa boot modessa oikein on?

Tuon emuloinnin onnistumisesta vois olla hyötyä, jos tulee tarvetta tehdä oma flash:n kirjoitus ohjelma.
Jos aikoinaan projektiin osallistuneet ovat kuulolla, niin sellainen kysymys tuli mieleen että kuinkahan vaikeaa olisi poistaa FDT kokonaan ja korvata se visual basic softalla ?
Miksi ... aina jää varaa parantaa...

http://www.facebook.com/ecueditorcom
Vastaa Viestiin