Go to file
Sumit.kumar ecadcdf31c new validex implementation 2026-10-07 12:44:27 +05:30
Final new validex implementation 2026-10-07 12:44:27 +05:30
src new validex implementation 2026-10-07 12:44:27 +05:30
.gitignore valid ex soc first commit 2026-07-21 16:54:37 +05:30
README.md new validex implementation 2026-10-07 12:44:27 +05:30

README.md

To generate build of this app:

  • Go to directory which contains build.py file
  • Run command "python build.py"
  • Build will be generated in "main" folder adjacent to "src" folder
  • The build that you give to production team should consist of "main" and "Final" folders

To run the app:

  • From the "src" folder: "python main.py <PRODUCT_CODE>", e.g. "python main.py VECSM0C0-B23"
  • From the build: "main.exe <PRODUCT_CODE>"
  • UI comes from the "fct-pdi-app-ui-components" package (latest: 1.0.5), installed from the Gitea PyPI registry: "pip install fct-pdi-app-ui-components==1.0.5 --extra-index-url https://:@gitea.vecmocon.com/api/packages/m.sonu/pypi/simple/"

Configs:

  • "Final/common/config.json" - shared by all products (scanner, log paths, product/process, GIT info written by build.py)
  • "Final/Projects/<PRODUCT_CODE>/config.json" - per product (test cases, firmware commit id, versions, customer name and id); merged on top of the common config
  • "Final/Projects/<PRODUCT_CODE>/firmwares/SOC_FINAL" and "SOC_TEST" - firmware .bat scripts, placed there by the firmware tool (app will not start if they are missing)
  • "TestMode": 0 = production, 1 / 2 = testing (no scanner, no operator login)
  • If logs of a test are not saved, testing is blocked and "build_blocked": true is written in "Final/common/config.json"; remove it to unblock

Products:

Product code Customer
VECSM0C0-B23 Infiswap
VECSM0C01-A54 Okaya
VECSM0C01-B15 Trontek
VECSM0C00-B34 Khalsa EV
VECSM0C0-A35 Ati Motors
VECSM0C00-A10 Battery Smart

To add a new product:

  • Add "Final/Projects/<PRODUCT_CODE>/config.json" (copy an existing product's config and update it)
  • Add "src/Projects/<PRODUCT_CODE with - replaced by _>/main.py" registering a worker with @register("<PRODUCT_CODE>")
  • Rebuild