espressif / esptool-js

Javascript implementation of flasher tool for Espressif chips, running in web browser using WebSerial.
https://espressif.github.io/esptool-js/
Apache License 2.0
276 stars 108 forks source link

add tracing for Transport class #107

Closed brianignacio5 closed 10 months ago

brianignacio5 commented 1 year ago

Remake of #34 in TypeScript to log data from Transport class using the

new Transport(devicePort:SerialPort, tracing: boolean);

igrr commented 1 year ago

@brianignacio5 could you please attach an example trace you get from this PR to the description?

brianignacio5 commented 1 year ago

This is an example trace of connection to ESP32-D0WD (revision 1) @igrr Format is TRACE {time} {traceHexString} \n

TRACE 202.00 
    657473204A756E20 2038203230313620 | ets Jun  8 2016 
    30303A32323A3537 DADA7273743A | 00:22:57....rst:
    3078312028504F57 45524F4E5F524553 | 0x1 (POWERON_RES
    4554292C626F6F74 3A3078362028444F | ET),boot:0x6 (DO
    574E4C4F41445F42 4F4F542855415254 | WNLOAD_BOOT(UART
    302F55415254312F 5344494F5F524549 | 0/UART1/SDIO_REI
    5F46454F5F563229 29DA7761697469 | _FEO_V2))..waiti
    6E6720666F722064 6F776E6C6F6164D | ng for download.
    A  | .
TRACE 1276.00 
    C008240000 0771220555555 | ...$........ UUU
    5555555555555555 5555555555555555 | UUUUUUUUUUUUUUUU
    5555555555555555 5555555555C0 | UUUUUUUUUUUUU.
TRACE 1337.00 
    C008240000 0771220555555 | ...$........ UUU
    5555555555555555 5555555555555555 | UUUUUUUUUUUUUUUU
    5555555555555555 5555555555C0 | UUUUUUUUUUUUU.
TRACE 1356.00 
    C0184071255 550000C0C01 | .......UU.......
    84071255550 000C0C0184 | .....UU.........
    07125555000 0C0C018407 | ...UU...........
    1255550000C0 C0184071255 | .UU............U
    550000C0C01 84071255550 | U............UU.
    000C0C0184 07125555000 | ...........UU...
    0C0C018407 1255550000C0 | .........UU.....
TRACE 1356.00 184071255550000
TRACE 1357.00 C00A400000010040C0
TRACE 1372.00 C01A40831DF000000C0
TRACE 1372.00 1A40831DF000000
TRACE 1384.00 C00A400000CA0F53FC0
TRACE 1387.00 C01A400A2000000C0
TRACE 1387.00 1A400A2000000
TRACE 1388.00 C00A400000CA0F53FC0
TRACE 1404.00 C01A400A2000000C0
TRACE 1404.00 1A400A2000000
TRACE 1404.00 C00A40000014A0F53FC0
TRACE 1419.00 C01A4000000000C0
TRACE 1419.00 1A4000000000
TRACE 1420.00 C00A4000007C60F63FC0
TRACE 1435.00 C01A400204160000C0
TRACE 1435.00 1A400204160000
TRACE 1436.00 C00A400000CA0F53FC0
TRACE 1451.00 C01A400A2000000C0
TRACE 1452.00 1A400A2000000
TRACE 1452.00 C00A400000CA0F53FC0
TRACE 1468.00 C01A400A2000000C0
TRACE 1468.00 1A400A2000000
TRACE 1468.00 C00A400000CA0F53FC0
TRACE 1483.00 C01A400A2000000C0
TRACE 1483.00 1A400A2000000
TRACE 1484.00 C00A40000010A0F53FC0
TRACE 1499.00 C01A403312000000C0
TRACE 1499.00 1A403312000000
TRACE 1500.00 C00A40000018A0F53FC0
TRACE 1515.00 C01A4040000000C0
TRACE 1515.00 1A4040000000
TRACE 1516.00 C00A400000140F43FC0
TRACE 1532.00 C01A406018000000C0
TRACE 1532.00 1A406018000000
TRACE 1533.00 C00A4000004A0F53FC0
TRACE 1549.00 C01A4030A2B5B50000C0
TRACE 1549.00 1A4030A2B5B50000
TRACE 1550.00 C00A4000008A0F53FC0
TRACE 1563.00 C01A40AA8C4100000C0
TRACE 1563.00 1A40AA8C4100000
TRACE 1564.00 C00A4000004A0F53FC0
TRACE 1579.00 C01A4030A2B5B50000C0
TRACE 1579.00 1A4030A2B5B50000
TRACE 1580.00 C00A4000008A0F53FC0
TRACE 1595.00 C01A40AA8C4100000C0
TRACE 1595.00 1A40AA8C4100000
TRACE 1596.00 
    C005100000 058D00100 | .........X......
    0018000E0B 40C0 | ........@.
TRACE 1611.00 C01540AA8C4100000C0
TRACE 1611.00 1540AA8C4100000
TRACE 1612.00 
    C00768D5E00 058D00000 | ...h.^...X......
    00000000 080F43F1C0F4 | ............?...
    3F00F43F0DBDC FC3F100F43F3641 | ?...?....?...?6A
    021FAFFDBDC200 38241F9FFDBDC20 | .!.... .8.A.... 
    02842020749CE2 6500041F5FF | .(.  t.......A..
    81F6FFDBDC200A8 4888A0A074E08 | ..... .......t..
    0B22662E786F4 FF21F1FFDBDC200 | .."f.....!.... .
    3921DF000A0EB FD3F186BFD3F8480 | 9........?.k.?..
    0040400058AB FD3FA4EBFD3F3641 | ..@@..X..?...?6A
    0B1F9FF20A07410 1120A5C70961A6 | .... .t.. ......
    81F6FF92A119099 119A98DBDC200B8 | ............. ..
    991F3FFA0A0749A 88DBDC20092180 | ......t.... ....
    9090F41BC9DBDCDB DCF4DBDC200C258 | ............ ..X
    09A9BDBDC200A2 490DBDC2009218 | ..... ..I... ...
    081EAFF9090F480 80F487994781E5FF | ............G...
    92A119099119A98 DBDC200C89A1E5 | .......... .....
    FFB1E3FF879C17C6 107CE8871ADEC6 | ..........|.....
    80DBDC20089A DBDC200B99462 | .... ..... ...F.
    0DBDC200B9ADB DC20089991D7FF | ... ..... ......
    9A88C9DBDC200 925801DF000F8 | ...... ..X......
    20F43FF830F43F36 41091FDFFDBDC20 |  .?.0.?6A...... 
    08898080245648 FF91FAFFDBDC200 | .....$VH...... .
    8898080245648FF 1DF00001020F4 | ....$VH....... .
    3F020F43F000 836410101120A5 | ?. .?....6A... .
    FCFF21FAFFC8DB DC2008262091FA | ..!...... ..b...
    FF81F8FFDBDC200 92680DBDC20098 | ...... ..h... ..
    85679FFDBDC200 8827CF280223020 | .Vy... ...|.."0 
    2041DF00000 4036410101120E5 |  .......@6A... .
    FBFF166AFF81ECFF 91FBFFDBDC20092 | ...j......... ..
    680DBDC200988 5679FF1DF000C | h... ...Vy......
    DBDCFC3FFFFFFF0 420F43F3641021 | ...?..... .?6A.!
    FCFF38421683610 112065F8FF16FA5 | ..8B..... e.....
    CF8C437A8D98 2280991082A0190 | ....7...".......
    4883404074101120 25FAFF10112025F3 | H.@@t.. %.... %.
    FF8822C1B409811 90AB1CC1480AB1 | .."..@..........
    B1EDFFB09910B1EC FFDBDC200926B0 | ........... ..k.
    91CEFFDBDC200A2 690DBDC200A89 | ..... ..i... ...
    567AFF1C9C1A40 9A839033DBDC9A88 | Vz.....@...3....
    394289221DF000 2C9204036410A2 | 9B."....,..@6A..
    A0DBDC81FDFFE08 01DF00036410 | .............6A.
    82A0DBDCAD28792 11A2A0DBDD81F7FF | ................
    E080A2A0DC464 000082A0DBDD | ......F.........
    8792881F2FFE08 0A2A0DD81F0FFE0 | ................
    801DF0364103A 32C6200A220 | ....6A.:2.......
    1B22101120A5FBFF 3792F11DF0000 | .".. ...7.......
    7CDA540D82E640 9CDA5401CDBDD5 | |..@...@...@....
    40362121A2D11081 FAFFE08046B0 | @6!!.........F..
    00C1440441140 4363CD4BD1AD2 | ....@D.@Cc......
    81F5FFE080A0A0 74FC5ACD410B120 | ........t.Z.... 
    A2D11081F1FFE08 04A224033DBDC56 | .........J"@3..V
    3FD22A2B1022B0 20A220B2D11081EC | .."...". . .....
    FFE080AD21CB 101120A5F7FF2D3 | .......... ...-.
    860022A0631DF0 00FC67040D092 | ...".c.....g.@..
    0408680403641 2162A17DBDC6611 | .@.h.@6A!b....f.
    1A665962CA62D1 10C552661A81F7 | .fY.,.b....Rf...
    FFE080C184088 1147B8246450AD | ......@..G..FE..
    681D4FFE08086 340092A41D5073 | ........4.....Ps
    DBDCE099111A9940 7763899CD7BD1 | .......@wc......
    20A22081CDFFE08 092A41DE099111A |  . .............
    99A0A0748898CAA C88266167D886 | ...t.......f.}..
    1600092A41DE0 991110998082690 | ..............i.
    10112025EAFFBD7 AD1101120A5EDFF | .. %........ ...
    10112025E9FFCD7 10B12060A62081BB | .. %...... `. ..
    FFE08092A41DE0 99111A998897022 | ..............p"
    8070558037B5B092 A17DBDC99111A99 | .pU.7...........
    9898075DBDC97B7 246DCFF86E6FFC | ...u.....F......
    882466CA2A41B10 AAA081CAFFE080 | ..Fl............
    56AFFB2A2BA26 6C10BBB0101120A5 | V.......l..... .
    8F0F7EA12F647F B2A2D10BBB07ABB | ......G.......z.
    A24B01B7786F1FF 7CEBB79AC166478 | .K..w...|....fG.
    82261A37B8287B5 9C22A2B1022B060 | .&.7....."...".`
    B620AD2819BFFE0 80101120A5DFFF | . .......... ...
    AD21CB10112025 E3FF101120A5DEFF | ...... %.... ...
    2CA81B1FFE080 1DF0820F43F70E2 | ,.......... .?p.
    FA3F4824640F022 64036610101120 | .?H$.@.".@6a... 
    E5CAFF10A12081FB FFE0803DAC12 | ..... ......=...
    FC2A88192A2090 8810891101120A5 | .*............ .
    CFFF91F2FFA0A21 DBDC20082290A0 | .......... ..)..
    8820DBDC2008269 0B2210A1EDFF81 | . .. ..i..!.....
    EEFFE080A02383 1DF000FFF00 | ......#.........
    36410813BFFC19 92480309C419928 | 6A..;....H.0.A.(
    91FBFF3918293830 30B49A222A33303C | ...9.)800.."*30<
    41C22958394810 112025F8FF2DA8C | A..)X9H.. %..-..
    1A22A0C51DF000 502D6403641041 | ."......P-.@6A.A
    2CFF583450336316 63458145A53505C | ,.X4P3c.c.X.ZSP\
    41461010112065 CAFF8844A618488 | AF.... e...D....
    2487A5EF101120A5 C2FF166AFFA814CD | $..... ....j....
    3BD281F1FFE08 0A0A0748C4A52A0 | ...........t.JR.
    C45264558143A55 591458343055DBDC | .Rd.X.:UY.X40U..
    59341DF000DBDC FC3F4F484149A8EB | Y4.......?OHAI..
    FD3F70E0B4014E0 B40C0F43F3840 | .?p..@...@...?8@
    F43FFFFF008C80 00104000ACEB | .?.........@....
    FD3FBCEBFD3F4DB DCFC3F8DBDCFC3F | .?...?....?....?
    4ECFD3F140F43F F0FFFF0A8EBFD3F | ...?...?.......?
    18EBFC3F24DBDCFC 3F7C68040EC670 | ...?$...?|h.@.g.
    4058860406C2A6 403832640142C6 | @X..@l*.@82.@.,.
    40CC2C6404C2C6 403485040CC900 | @.,.@L,.@4..@...
    40782E64030EF5 4058920404C820 | @x..@0..@X..@L..
    4036C1021DEFFC A2261842A0081 | @6..!...."a.B...
    EEFFE08021D9FF 31DAFFC600492 | .....!..1.....I.
    4B223732F8101120 65C3FFC4BA2C120 | K"72... e...K.. 
    101120E5C6FF22A1 110112025C2FF51 | .. ...".... %..Q
    91FE9022112A2531 CFFFB1CFFFDBDC20 | ...".*%1....... 
    05922178FECC C5A3262081DCFF | .Y.!x....Z2b....
    E08031CAFF42A1 1DBDC2002832C | ...1..B.... .(.,
    A402220DBDC200 2938131FFE080 | .@" .. .)..1....
    81D5FFE08021C3 FFDBDC200282CC | ......!.... .(..
    BA1CC330221022C2 F8C1320A383CB | ...0".".... ....
    81CEFFE080F1BC FFC1DC2A01C1B | ................
    E2A1040DD110CC 1180BB1A2A0081 | ...@............
    C7FFE08021B6FF C42A5521C3FE72 | .....!....*U!..r
    D22BDBDC200285 1672FFDBDC20038 | .+.. .(..r... .8
    5C12DBDC20049 52241102231C | ..... .I."A."...
    282241118251949 51269271C388712 | ("A..Q.IQ&...8..
    1E680223382 32802211802220 | ...."......".." 
    6642112823DBDC20 028229514610 | fB.(#.. .(.)QF..
    01C22225191011 20A5B3FFC8BA2C1 | ..""Q... .......
    1010112065B7FF82 332232808811 | ... e.....".....
    2088202198FF2020 F487B21CA2A0DBDC |  . !..  ........
    10112025B2FFA2A0 EE101120A5B1FF10 | .. %....... ....
    112025B0FF86DBDD FF0022311C39 | . %........"...9
    273934F62218C6D4 00022C22F2020 | '94."......"./  
    74F642709189FF90 22A0282A02022 | t.Bp....".(...."
    C2FE2020741C1927 B92C6CB09184FF | ..  t..'........
    9022A0282A020 92C230909074B659 | .".(......0..t.Y
    C96C602C4A6D4 22A0DBDCA71826 | ....,Jm.".......
    C404951C72AD4 101120E5AAFFAD4 | ..IQ.r.... .....
    10112065AAFF1011 20E5A8FF101120A5 | .. e.... ..... .
    A8FFC8BA2C11022 C2FF101120E5ABFF | .......".... ...
    5622FD46290C12 56C82C8261F817A | V".F)...V.,.a..z
    FFE08088F1A028 83C6AE026884C | .......(....&...
    12C6AC098236833 6089208080B456D8 | .....#h3`. ...V.
    FE99C110112065C7 FF98C16A299C2A6 | ..... e....j).*.
    F7FF00A0AC4181 6DFFE08056EAFC | ......A.m....V..
    62D6F060A2DBDCCC 2668100A090F4 | b..`....&.......
    5619FE8640A0A0 F599C18165FFE08 | V...........e...
    098C1569AFA9066 DBDCC190991160 | ...V...f.......`
    A2DBDC6739E164 000A0AC41815C | ...g9........A.\
    FFE08056AAF862 D6F060A2DBDC56A6 | ....V..b..`...V.
    FEC66F006D422 A0DBDC26882868D | ..o..m."...&....
    06D4C2C68B0 0026B8F386610 | .m........&...a.
    C1226B826850 B833A823101120E5 | ..&......3.#.. .
    A1FFA024836810 C1C66B853884320 | ...$......f.S.C 
    AC116D422A0C287 BA2867E0B853A8 | ..m."......~..S.
    23C9E1101120E5DB DCFFC6B0C1C66 | #.... .........f
    B82F884320AC116D 422A0C287BA286 | ./.C ..m."......
    7502833B853A823 206882C9E1101120 | u.(3.S.# h..... 
    65BEFF2134FE4962 22D22B6922C8E1A0 | e..!4.Ib".+i"...
    C4832DC86690A1 2FFE6D4B2A022 | ..-..i../.m...."
    A0C6163B1A982382 C8F022A0DBDC8799 | ...;..#...".....
    1285AC9A2A0EF 46209AB3B2B18 | .(Z.....F.......
    1B99B0AA308729F2 823592348088 | ....0.).........
    1190882092366D 40991180992082 | ... ...m...... .
    3780881908820 80AADBDC82A0C1A0 | ....... ........
    2893465508118FE 6D4A28022A0C6 | (.FU....m...."..
    167A14A83822A0C8 56FA132858A2480 | .z..8"..V..(X.H.
    C64D01C8A6D4C 12A7182C64A0F8 | .M...m.......J..
    73E863D853C843B8 33A82381CFFE08 | s.c.S.C.3.#.....
    06DAA024834644 00C122648246 | .m..$.FD....&H.F
    3F0A823BD4814 FFE08061E080 | ?..#............
    B0346D422A0DBDC 56BF8064418BC3 | .4m."...V...dA..
    7CFD46E0A83CB9 C1C9E1D9D1810FF | |.F...<.........
    E080C8E1B8C128 2C981CA8CD221D | .......(,.....!.
    909210262EDBDC 200E22A0202D30 | ...&.... ..*. -0
    E02210209920DBDC 20099A1BBBC2CC | .". . .. .......
    10673BC2C69BFF66 482469AFF6D422 | .g;....fH.F..m."
    A0DBDC6260C12 26B824621021DC | ....&...&..F!.!.
    FE9853882399221 DBDDFE8922D486 | ..S.#..!.....-..
    1C061D7FEC1BD8 682C8F0AD42D4 | ..a...........-.
    802B93D0AB8320AA 106D422A0C656EA | .+.... ..m."..V.
    5C1D1FE22A0C9E8 C873E5380F01422 | ....".....>S..."
    A0DBDC56AF42DA 46202AA3A86A4B | ...V..-.F..*..jK
    22A99ADB20FEDB DC2A9D8732ED169A | ".... ...*..2...
    DF21C4FEF9C992 C67BFFC12668816 | .!.......{...f..
    21C1FE88216280 82A0C849221BDFE | !.....(....I.!..
    492C128024836D 4461006D422 | I....$.m.F...m."
    A0FF20A074101120 E579FF60A0741011 | .. .t.. .y.`.t..
    206579FF101120E5 77FF56A2BE2231 |  ey... .w.V.."..
    1C2827381EF6322 6F7FE22C2FD2020 | .('8..2...."..  
    74CF827B8286F3 FE81ACFE8022A028 | t..'.........".(
    2A02082A0D287 125282A0D487127A | .........R.....z
    6EDFE0008833 A2A271DBDCAA1168 | .......3..q....h
    2389F181B0FEE08 021A1FE91A2FEDB | #........!......
    DC20028288F120 3435DBDC22119022 | . .(... 45..".."
    10202320802282AD 460B2C281A7FEE0 | . # ."...`......
    80A2A3E881A4FE E0806DBDDFE0 | ................
    0D853C843B833A8 23101120257DFF46 | ..S.C.3.#.. %}.F
    D6FE0B233223 280BB1120BB20B2 | ......"..... . .
    CBF0A2C318101120 6599FF46CFFE022 | ....... e..F..."
    338232618FFD 8022119836802220 | .....a..."..6." 
    22C2F09022631622 B298169A92909C41 | "..."c.".......A
    462099C1101120 6562FF98C1A846A6 | F...... eb....F.
    1A4A826A7A9EB10 1120A55AFF166AFF | ...&..... .Z..j.
    A816CD2B2C31881 86FEE0808C3A32 | ..............:2
    A0C4395638162A33 391638362023DBDC | ..9V8.*39.86 #..
    2936C6B5FE8232 22C3183233C1C | )6......"..2....
    80331180332032C3 F06230816CFE91 | .3..3 2...#..l..
    1DFDE883971E099 DBDC99619827C1A | ....9q.....a.'..
    97B31C3A89F1A9 D1E9C1101120255B | ....:........ %[
    FFA8D19163FEE8C1 A91A162FEDD9BD | ....c......b....
    2C2C11CF2C11899 C1816BFEE080B8 | ..........k.....
    27CDAA87188F1A0 BBDBDCB927A033DB | '...q.......'.3.
    DCB88AA22A86198 C1AABBDD4C1AB9 | ....".a.........
    8DBDCDA8390BBDB DCD0E074CC7DD2DB | ...........t.}..
    DD80D0AE93166A1 AD989F199C1C9E1 | ......j.........
    1011202589FF88F1 98C1C8E19268061 | .. %.........h.a
    4EFD88368CA3DBDC 9F31DBDC99DBDCD6 | N..6.....1......
    29056F8F5D6AC0 3149FD22A0C72953 | ).V.....1I."..)S
    46008C3C9C8C6 82FE1688A06144FD | F...<........aD.
    22A0C82956467FFE 03141FD22A0C929 | "..)VF...1A."..)
    53467CFE282356C2 9EAD48145FEE08 | SF|.(#V.....E...
    0A2A271DBDCAA11 813EFEE0808142 | ...q.....>.....B
    FEE080C673FE0 0283316829CAD4 | .....s...(3.....
    813CFEE080A2A3 E88136FEE080E0 | .<........6.....
    20466CFE1DF00 00364109D282 | ..Fl......6A....
    A0DBDC2838799F CC32C128670C | ...(.....2......
    22937CE286F0 26127262218863 | .).|....&..&"...
    00082A0DBDD80 292387992AC2229 | ........)#..*.")
    37CF2468000 22A0DC2799AC12 | .|.F...."..'....
    2932D86400 082A0DD7CF28799 | ).-.........|...
    6C1229322A0DB DD1DF000C0 | ...)."........
TRACE 1932.00 C01740AA8C4100000C0
TRACE 1932.00 1740AA8C4100000
TRACE 1933.00 
    C005100000 09C000100 | ................
    001800A8EBFD 3FC0 | ........?.
TRACE 1947.00 C01540AA8C4100000C0
TRACE 1948.00 1540AA8C4100000
TRACE 1948.00 
    C007AC0B700 09C000000 | ................
    00000000 018EBFC3FD8E7B | ............?...
    4071E8B40F3ECB 40EDE8B408FE8B | @q..@...@...@...
    40EDE8B4049E9B 406EAB4078EAB | @...@I..@...@x..
    4021EAB4081E7B 40A3E9B40F8E9B | @!..@...@...@...
    4067E9B409AEAB 408EE9B409AEAB | @g..@...@...@...
    405DE8B40B3E8B 40EDE8B4049E9B | @]..@...@...@I..
    4077E8B404CEBB 40B3ECB40A5E6B | @w..@L..@...@...
    40D7ECB40A5E6B 40A5E6B40A5E6B | @...@...@...@...
    40A5E6B40A5E6B 40A5E6B40A5E6B | @...@...@...@...
    40A5E6B40F3EAB 40A5E6B40CDEBB | @...@...@...@...
    40B3ECB40C0  | @...@.
TRACE 1979.00 C01740AA8C4100000C0
TRACE 1980.00 1740AA8C4100000
TRACE 1980.00 
    C00680000 00000D8E5B | ................
    40C0  | @.
TRACE 1995.00 
    C01640AA8C41 00000C0C04F | .......A.......O
    484149C0  | HAI.
TRACE 1996.00 1640AA8C4100000
brianignacio5 commented 10 months ago

After final changes I can see traces to be accurate as long as the stubs being used are same for commands:

Consider these traces:

esptool.py v4.7.dev2:

Uploading stub...
TRACE +0.001 command op=0x05 data len=16 wait_response=1 timeout=3.000 data=680d0000010000000018000000e00b40
TRACE +0.000 Write 26 bytes: 
    c000051000000000 00680d0000010000 | .........h......
    000018000000e00b 40c0             | ........@.
TRACE +0.014 Read 1 bytes: c0
TRACE +0.000 Read 13 bytes: 0105040030a2b5b500000000c0
TRACE +0.000 Received full packet: 0105040030a2b5b500000000

esptool-js with same stubs from esptool v4.7.dev2

TRACE 1592.000 command op:0x05 data len=16 wait_response=1 timeout=3.000 data=680d0000010000000018000000e00b40
TRACE 1592.000 Write 26 bytes: 
    c000051000000000 00680d0000010000 | .........h......
    000018000000e00b 40c0             | ........@.
TRACE 1605.000 Read 14 bytes: c001050400aa8c410000000000c0
TRACE 1605.000 Read 12 bytes: 01050400aa8c410000000000