Record v2.1 flash readback and dual-CAN hardware validation

This commit is contained in:
shenlefengnai-rgb
2026-10-03 18:14:50 +08:00
parent 9120bd0ec1
commit ceb88a90a5
92 changed files with 9319 additions and 15 deletions
Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

@@ -0,0 +1,32 @@
-------------------------------------------------------------------
STM32CubeProgrammer v2.20.0
-------------------------------------------------------------------
ST-LINK SN : 37FF71064E573436188C1543
ST-LINK FW : V2J47S7
Board : --
Voltage : 3.28V
SWD freq : 950 KHz
Connect mode: Hot Plug
Reset mode : Software reset
Device ID : 0x467
Revision ID : Rev Z
Device name : STM32G0B0xx/B1xx/C1xx
Flash size : 128 KBytes
Device type : MCU
Device CPU : Cortex-M0+
BL Version : 0x92
Reading 32-bit memory content
Size : 128 Bytes
Address: : 0x200002C8
0x200002C8 : 00000000 00000000 00000000 00000000
0x200002D8 : 000025D8 FFFFFD49 00001073 00000000
0x200002E8 : 00000000 00000000 00000000 00000000
0x200002F8 : 00002567 000025D8 00000000 00000000
0x20000308 : 000025D8 00000000 00000000 000001A5
0x20000318 : 00000000 FFFFFFBA 00000000 00000000
0x20000328 : 00000017 00000000 0000000A 00000000
0x20000338 : 00000000 00000000 00000000 2637AB02
Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

@@ -0,0 +1,32 @@
-------------------------------------------------------------------
STM32CubeProgrammer v2.20.0
-------------------------------------------------------------------
ST-LINK SN : 37FF71064E573436188C1543
ST-LINK FW : V2J47S7
Board : --
Voltage : 3.28V
SWD freq : 950 KHz
Connect mode: Hot Plug
Reset mode : Software reset
Device ID : 0x467
Revision ID : Rev Z
Device name : STM32G0B0xx/B1xx/C1xx
Flash size : 128 KBytes
Device type : MCU
Device CPU : Cortex-M0+
BL Version : 0x92
Reading 32-bit memory content
Size : 128 Bytes
Address: : 0x200002C8
0x200002C8 : 00000000 00000000 00000000 00000000
0x200002D8 : 0000190F FFFFFD49 00001073 00000000
0x200002E8 : 00000000 00000000 00000000 00000000
0x200002F8 : 000018A2 0000190F 00000000 00000000
0x20000308 : 0000190F 00000000 00000000 000001A5
0x20000318 : 00000000 FFFFFFBA 00000000 00000000
0x20000328 : 00000017 00000000 0000004A 00000000
0x20000338 : 00000000 00000000 00000000 2637AB02
Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

@@ -0,0 +1,175 @@
{
"results": [
{
"task": 1,
"cancel_no_can_request": true,
"confirm_can_request_correct": true,
"cancel_frames": [],
"confirm_frames": [
{
"time_s": 4.2668663000222296,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 01 00 01 53 0f 00 00"
}
],
"screenshots": [
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task1_cancel_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task1_cancel_return.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task1_confirm_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task1_confirm_return.png"
]
},
{
"task": 2,
"cancel_no_can_request": true,
"confirm_can_request_correct": true,
"cancel_frames": [],
"confirm_frames": [
{
"time_s": 8.50375020003412,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 02 01 01 df 1f 00 00"
}
],
"screenshots": [
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task2_cancel_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task2_cancel_return.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task2_confirm_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task2_confirm_return.png"
]
},
{
"task": 3,
"cancel_no_can_request": true,
"confirm_can_request_correct": true,
"cancel_frames": [],
"confirm_frames": [
{
"time_s": 12.753520800033584,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 03 02 01 78 30 00 00"
}
],
"screenshots": [
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task3_cancel_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task3_cancel_return.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task3_confirm_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task3_confirm_return.png"
]
},
{
"task": 4,
"cancel_no_can_request": true,
"confirm_can_request_correct": true,
"cancel_frames": [],
"confirm_frames": [
{
"time_s": 17.00549889996182,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 04 03 01 15 41 00 00"
}
],
"screenshots": [
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task4_cancel_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task4_cancel_return.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task4_confirm_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task4_confirm_return.png"
]
},
{
"task": 5,
"cancel_no_can_request": true,
"confirm_can_request_correct": true,
"cancel_frames": [],
"confirm_frames": [
{
"time_s": 21.254094199975953,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 05 04 01 9f 51 00 00"
}
],
"screenshots": [
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task5_cancel_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task5_cancel_return.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task5_confirm_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task5_confirm_return.png"
]
},
{
"task": 6,
"cancel_no_can_request": true,
"confirm_can_request_correct": true,
"cancel_frames": [],
"confirm_frames": [
{
"time_s": 25.487227500067092,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 06 05 01 2c 62 00 00"
}
],
"screenshots": [
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task6_cancel_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task6_cancel_return.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task6_confirm_page.png",
"D:\\YMR\\AMI\\tmp\\can2-v21-bms-test-20261003\\bms_function_task6_confirm_return.png"
]
}
],
"rx": [
{
"time_s": 4.2668663000222296,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 01 00 01 53 0f 00 00"
},
{
"time_s": 8.50375020003412,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 02 01 01 df 1f 00 00"
},
{
"time_s": 12.753520800033584,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 03 02 01 78 30 00 00"
},
{
"time_s": 17.00549889996182,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 04 03 01 15 41 00 00"
},
{
"time_s": 21.254094199975953,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 05 04 01 9f 51 00 00"
},
{
"time_s": 25.487227500067092,
"id": 768,
"dlc": 8,
"extended": false,
"data": "01 06 05 01 2c 62 00 00"
}
],
"pcan_status": "0x0"
}
Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

@@ -0,0 +1,32 @@
-------------------------------------------------------------------
STM32CubeProgrammer v2.20.0
-------------------------------------------------------------------
ST-LINK SN : 37FF71064E573436188C1543
ST-LINK FW : V2J47S7
Board : --
Voltage : 3.28V
SWD freq : 950 KHz
Connect mode: Hot Plug
Reset mode : Software reset
Device ID : 0x467
Revision ID : Rev Z
Device name : STM32G0B0xx/B1xx/C1xx
Flash size : 128 KBytes
Device type : MCU
Device CPU : Cortex-M0+
BL Version : 0x92
Reading 32-bit memory content
Size : 128 Bytes
Address: : 0x200002C8
0x200002C8 : 00000000 00000000 00000000 00000000
0x200002D8 : 00003F4E 00000000 00000221 00000000
0x200002E8 : 00000000 00000000 00000000 00000000
0x200002F8 : 00003EDF 00003F4E 00000000 00000000
0x20000308 : 00003F4E 00000000 00000000 00000037
0x20000318 : 00000000 00000000 00000000 00000000
0x20000328 : 0000001B 00000000 0000004A 00000000
0x20000338 : 00000000 00000000 00000000 2637AB02
Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

@@ -0,0 +1,32 @@
-------------------------------------------------------------------
STM32CubeProgrammer v2.20.0
-------------------------------------------------------------------
ST-LINK SN : 37FF71064E573436188C1543
ST-LINK FW : V2J47S7
Board : --
Voltage : 3.28V
SWD freq : 950 KHz
Connect mode: Hot Plug
Reset mode : Software reset
Device ID : 0x467
Revision ID : Rev Z
Device name : STM32G0B0xx/B1xx/C1xx
Flash size : 128 KBytes
Device type : MCU
Device CPU : Cortex-M0+
BL Version : 0x92
Reading 32-bit memory content
Size : 128 Bytes
Address: : 0x200002C8
0x200002C8 : 00000000 00000000 00000000 00000000
0x200002D8 : 000025D8 FFFFFD49 00001073 00000000
0x200002E8 : 00000000 00000000 00000000 00000000
0x200002F8 : 00002567 000025D8 00000000 00000000
0x20000308 : 000025D8 00000000 00000000 000001A5
0x20000318 : 00000000 FFFFFFBA 00000000 00000000
0x20000328 : 00000017 00000000 00000000 00000000
0x20000338 : 00000000 00000000 00000000 2637AB02
Binary file not shown.

After

Width:  |  Height:  |  Size: 37 KiB

@@ -0,0 +1,32 @@
-------------------------------------------------------------------
STM32CubeProgrammer v2.20.0
-------------------------------------------------------------------
ST-LINK SN : 37FF71064E573436188C1543
ST-LINK FW : V2J47S7
Board : --
Voltage : 3.28V
SWD freq : 950 KHz
Connect mode: Hot Plug
Reset mode : Software reset
Device ID : 0x467
Revision ID : Rev Z
Device name : STM32G0B0xx/B1xx/C1xx
Flash size : 128 KBytes
Device type : MCU
Device CPU : Cortex-M0+
BL Version : 0x92
Reading 32-bit memory content
Size : 128 Bytes
Address: : 0x200002C8
0x200002C8 : 00000000 00000000 00000000 00000000
0x200002D8 : 00000BA2 0000007B 00000FA0 00000000
0x200002E8 : 00000000 00000000 00000000 00000000
0x200002F8 : 00000B2F 00000BA2 00000000 00000000
0x20000308 : 00000BA2 00000000 00000000 00000190
0x20000318 : 00000000 0000000C 00000000 00000000
0x20000328 : 00000028 00000000 0000004A 00000000
0x20000338 : 00000000 00000000 00000000 2637AB02
@@ -0,0 +1,103 @@
{
"real_mcu_snapshot_checks": [
{
"stage": "standard",
"values": [
0,
400,
0,
12,
0,
0,
40,
0
],
"valid_mask": "0x4a",
"adc_mv": 0,
"hv_tenths": 4000,
"current_tenths": 123,
"pass": true
},
{
"stage": "extended",
"values": [
0,
421,
0,
-70,
0,
0,
23,
0
],
"valid_mask": "0x4a",
"adc_mv": 0,
"hv_tenths": 4211,
"current_tenths": -695,
"pass": true
},
{
"stage": "all_temp_invalid",
"values": [
0,
421,
0,
-70,
0,
0,
23,
0
],
"valid_mask": "0xa",
"adc_mv": 0,
"hv_tenths": 4211,
"current_tenths": -695,
"pass": true
},
{
"stage": "source_timeout",
"values": [
0,
421,
0,
-70,
0,
0,
23,
0
],
"valid_mask": "0x0",
"adc_mv": 0,
"hv_tenths": 4211,
"current_tenths": -695,
"pass": true
},
{
"stage": "recovered",
"values": [
0,
55,
0,
0,
0,
0,
27,
0
],
"valid_mask": "0x4a",
"adc_mv": 0,
"hv_tenths": 545,
"current_tenths": 0,
"pass": true
}
],
"task_confirm_pass": 6,
"task_cancel_pass": 6,
"pcan_status": "0x0",
"bus": "CAN2",
"bitrate": 250000,
"sdc_frames_sent": false,
"firmware_sha256": "143bb0cf190a17dd3f8a251bd49fef2af19699d873951c58cb790b35764e3212",
"hmi_sha256": "8a37e4961f90671f04e55ba94c173ae8fbfc5e30c2a3e74a2c37148157c3d16d",
"visual_review": "Screenshots inspected separately: standard, extended, invalid, timeout and recovery. Cross-page test not repeated in this run."
}
File diff suppressed because it is too large Load Diff
@@ -0,0 +1,40 @@
{
"bms_all_temp_invalid.png": "4688d8a67d24f044576e006b999267711d5c567f145a85147e9d00eb625bc66a",
"bms_all_temp_invalid_ram.log": "ee9644c7ecf8cc2a182e71e446e02c13973623b9ae93b36cdc7a73faf8d9b73f",
"bms_extended.png": "6cdaf37f914f8e7554c20cb853d0ddf9c695a5e60ee744ff683bd29763c2204a",
"bms_extended_ram.log": "19d673e09236b9cd8413bafbf98985a084f656f6de4e9f580e7a5ca7f8bedecd",
"bms_function_task1_cancel_page.png": "6be8c52cbab2278098b430b12e58c167c5f19e4ee7f984d179429a63078353e8",
"bms_function_task1_cancel_return.png": "374d9699753b95567628a60d28e27bdb2f302ed721757a78e75d4593f03f2e77",
"bms_function_task1_confirm_page.png": "6be8c52cbab2278098b430b12e58c167c5f19e4ee7f984d179429a63078353e8",
"bms_function_task1_confirm_return.png": "79d2ce02834a602607906013a163345e90ca1fadaa4dcb7048f271c79e78c8af",
"bms_function_task2_cancel_page.png": "c64b41ecedc90f6f218c509c6adb104c8c4c0de515294d709062d697618ba72f",
"bms_function_task2_cancel_return.png": "79d2ce02834a602607906013a163345e90ca1fadaa4dcb7048f271c79e78c8af",
"bms_function_task2_confirm_page.png": "c64b41ecedc90f6f218c509c6adb104c8c4c0de515294d709062d697618ba72f",
"bms_function_task2_confirm_return.png": "ef9ea5636f896f5b911f674ad109b049523dc41d22aa831f1458666e0a34e813",
"bms_function_task3_cancel_page.png": "bade21caca05a58e1f7016b41300bcc79c58b3f035e351c1fb24f2f53112826f",
"bms_function_task3_cancel_return.png": "ef9ea5636f896f5b911f674ad109b049523dc41d22aa831f1458666e0a34e813",
"bms_function_task3_confirm_page.png": "bade21caca05a58e1f7016b41300bcc79c58b3f035e351c1fb24f2f53112826f",
"bms_function_task3_confirm_return.png": "d5f5d95f7bf388f410d2d8cbd4513239c00d52435d571968cf859f6c74ceee7b",
"bms_function_task4_cancel_page.png": "3743370404cf0a204fb06f114953b6599d764e27b0e8ba5e803d877339ab40b9",
"bms_function_task4_cancel_return.png": "d5f5d95f7bf388f410d2d8cbd4513239c00d52435d571968cf859f6c74ceee7b",
"bms_function_task4_confirm_page.png": "3743370404cf0a204fb06f114953b6599d764e27b0e8ba5e803d877339ab40b9",
"bms_function_task4_confirm_return.png": "a816ef45709a3fc7b0dbb055fcc77953d43854ced02a1d45e3946cc90c569e33",
"bms_function_task5_cancel_page.png": "585a9017870d7959d723c59a6203b5a67759789aee59c1398e670c7834a52ee0",
"bms_function_task5_cancel_return.png": "a816ef45709a3fc7b0dbb055fcc77953d43854ced02a1d45e3946cc90c569e33",
"bms_function_task5_confirm_page.png": "585a9017870d7959d723c59a6203b5a67759789aee59c1398e670c7834a52ee0",
"bms_function_task5_confirm_return.png": "f3c8f35b9ab667671e790d316307b6e5c3ba73a7a9680ade7253b694f61bcf65",
"bms_function_task6_cancel_page.png": "9b2e124bae41df48015b19bd8ac594a4b20a9be52f2dad0c658b0d32f3efe635",
"bms_function_task6_cancel_return.png": "f3c8f35b9ab667671e790d316307b6e5c3ba73a7a9680ade7253b694f61bcf65",
"bms_function_task6_confirm_page.png": "9b2e124bae41df48015b19bd8ac594a4b20a9be52f2dad0c658b0d32f3efe635",
"bms_function_task6_confirm_return.png": "06037c6812498819f62a2ae72b4f6fb7795cde718854127a0cddf78e216b602a",
"bms_function_task_results.json": "c157f28ca34c65daea37225120edb81b8bd7eccd7a9edc48dc92afd186f8aaa6",
"bms_recovered.png": "8ca53caab56ba94ab3c530e2a23250e392ae251d2360a93a7414b2f2afb5ad04",
"bms_recovered_ram.log": "18cb078db6b2e53f05e728dc307c3f05a589ffefbc73144d98d597a6dd1f8ed7",
"bms_source_timeout.png": "3bc399267bb85dc4591b6318e18b53df288aa2783f005fd58ad9a4c0429ae66c",
"bms_source_timeout_ram.log": "c4e4843c0c2f9f8aba79b41dec61547df6bbf667722440534da2ceda2523b2f3",
"bms_standard.png": "27a95ef0389ab1a3f9e44e55a2d411e5df831866bbf65b27e657206dc3907efe",
"bms_standard_ram.log": "fe2653ab399ed28513490838dcfc8192c181070621ea7573db0f6933a4182e1f",
"bms_verified.json": "fed9fa7232a01245e815174bd5867522f525eb30797ec78734fbe76511610494",
"bms_visual_results.json": "44f8fac07beed060833c0cb1b4055a25960d5c8b03884570b60933de62531da1",
"uart-diagnostic.json": "d79458ec3c2d9c2b2a81694e566af4b5357d0797b174c06e5d6a3b3b6688ad88"
}
@@ -0,0 +1,10 @@
{
"rx": [
{
"id": "0x300",
"data": "01 02 00 01 f1 c1 03 00"
}
],
"serial_bytes": 850,
"serial_hex": "2e646c2e76616c3d30ffffff646173682e646a77642e76616c3d30ffffff646173682e6d637577642e76616c3d30ffffff646173682e647477642e76616c3d3237ffffff646173682e6c766261742e76616c3d30ffffff64303d30ffffff64313d30ffffff64323d30ffffff64333d30ffffff64343d30ffffff64353d30ffffff64363d30ffffff64373d30ffffff64383d30ffffff64393d30ffffff6431303d30ffffff6431313d30ffffff6431323d30ffffff6431333d30ffffff6431343d30ffffff6431353d30ffffff646173682e73706565642e70636f3d3136393034ffffff646173682e74732e70636f3d3635353335ffffff646173682e6d63742e70636f3d3136393034ffffff646173682e646c2e70636f3d3635353335ffffff646173682e646a77642e70636f3d3136393034ffffff646173682e6d637577642e70636f3d3136393034ffffff646173682e647477642e70636f3d3635353335ffffff646173682e74732e76616c3d343231ffffff646173682e646c2e76616c3d2d3730ffffff646173682e647477642e76616c3d3237ffffff646173682e6c766261742e76616c3d30ffffff64303d30ffffff64313d30ffffff64323d30ffffff64333d30ffffff64343d30ffffff64353d30ffffff64363d30ffffff64373d30ffffff64383d30ffffff64393d30ffffff6431303d30ffffff6431313d30ffffff6431323d30ffffff6431333d30ffffff6431343d30ffffff6431353d30ffffff646173682e73706565642e70636f3d3136393034ffffff646173682e74732e70636f3d3635353335ffffff646173682e6d63742e70636f3d3136393034ffffff646173682e646c2e70636f3d3635353335ffffff646173682e646a77642e70636f3d3136393034ffffff646173682e6d637577642e70636f3d3136393034ffffff646173682e647477642e70636f3d3635353335ffffff646173682e6c766261742e70636f3d3136393034ffffff646173682e73706565642e76616c3d30ffffff646173682e74732e76616c3d343231ffffff646173682e6d63742e76616c3d30ffffff646173682e646c2e76616c3d2d3730ffffff646173682e646a77642e76616c3d30ffffff646173682e6d637577642e76616c3d30ffffff646173682e647477642e76616c3d3237ffffff"
}