乐鑫技术交流
直播中

张华

7年用户 1418经验值
私信 关注
[问答]

为什么nvs_partition_gen.py无法对csv文件转换成bin文件?




  • 问题1============
  • 根据https://github.com/espressif/esp-aliyun/blob/master/config/mass_mfg/README.md中的步骤

  • 将 config,dsj3RuY74pgCBJ3zczKz1LaLK7RGApqh,a10BnLLzGv4,pVfLpS1u3A9JM0go 修改为你对应的值。
  • 修改完成后,使用如下命令生成对应的 NVS 分区:
  • $IDF_PATH/components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py --input my_single_mfg_config.csv --out


  • 执行结果为:
  • maliang@LAPTOP-NCNK06VL MSYS ~/esp-aliyun/config/mass_mfg
  • $ $IDF_PATH/components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py --input my_single_mfg_config.csv --output my_single_mfg.bin --size 0x4000
  • usage: nvs_partition_gen.py [-h] {generate,generate-key,encrypt,decrypt} ...
  • nvs_partition_gen.py: error: argument command: invalid choice: 'my_single_mfg_config.csv' (choose from 'generate', 'generate-key', 'encrypt', 'decrypt')

  • idf版本为v4.0
  • python版本为2.7

  • 请问是什么原因?

  • 问题2============
  • 按照API文档 https://docs.espressif.com/projects/esp-idf/zh_CN/stable/api-guides/partition-tables.html
  • 手动将 CSV 文件转换为二进制文件:
  • python gen_esp32part.py input_partitions.csv binary_partitions.bin

  • 执行结果为:
  • $ python $IDF_PATH/components/partition_table/gen_esp32part.py my_single_mfg_config.csv my_single_mfg_config.bin
  • Parsing CSV input...
  • Error at line 1: Value 'type' is not valid. Known keywords: app, data


  • my_single_mfg_config.csv 文件内容如下
  • key type    encoding    value
  • aliyun-key  namespace
  • DeviceName  data    string  0LRg26p6m4XERJkctjI9
  • DeviceSecret    data    string  dTsv2CaFRGJrTgnRY2aPzihDYn65yW3z
  • ProductKey  data    string  a1azIJoaaKW
  • ProductSecret   data    string  8F7M7T9gx7MhHQFz

  • 这又是什么问题?

  • 没有一个办法能执行分区的


回帖(1)

京五环以外

2024-6-25 16:53:52


1. 确保您已经正确修改了config文件中的值,例如config,dsj3RuY74pgCBJ3zczKz1LaLK7RGApqh,a10BnLLzGv4,pVfLpS1u3A9JM0go。

2. 确保您的my_single_mfg_config.csv文件格式正确。CSV文件应该包含以下内容:

```
key1,namespace1,datatype1,size1
key2,namespace1,datatype2,size2
...
```

3. 确保您的Python环境已安装所需的库。nvs_partition_gen.py需要Python 3.6或更高版本。

4. 确保您的命令格式正确。根据您提供的信息,命令似乎不完整。正确的命令格式应该是:

```
$IDF_PATH/components/nvs_flash/nvs_partition_generator/nvs_partition_gen.py --input my_single_mfg_config.csv --output output.bin
```

5. 确保您的MSYS2环境已正确设置。检查您的环境变量,确保`$IDF_PATH`指向正确的路径。


举报

更多回帖

发帖
×
20
完善资料,
赚取积分