ALLTERCO / cc3200tool

A small tool to write files in TI's CC3200 SimpleLink (TM) filesystem.
GNU General Public License v2.0
31 stars 32 forks source link

CC3220 support #13

Open sirde opened 6 years ago

sirde commented 6 years ago

Hi, I've started to look at the cc3220.

After a minor adaption of your tool to handle the new version (and playing around with various settings in uniflash 4.3) , I managed to connect to a device in development mode.

Differences I found:

1: The system version is different: Launchpad cc3220SF version = CC3x00VersionInfo((0, 1, 0, 3), (0, 0, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0), (25, 48, 0, 0))

2: The file info is different: File without security on cc3220 0x0 0x4 0x1 0x2a 0x0 0x0 0x0 0x1 0x0 0x0 0xe 0x48 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x1 0x0 0x0 0x0 0x1 File without security on cc3200 0x1 0x8 0x0 0x2a 0x0 0x0 0x0 0x2 0x0 0x0 0xe 0x48 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0

3: Files must be defined without the "/"

Otherwise everything seems to be working ok in Development mode.

Production mode When programming the device with Uniflash in Production mode, I can call the device actions like GetVersionInfo but when doing something on a file I get nack response (open_file and get_file_info for example). I would expect it only for secure file, but I get it on any type of file.

By any chance, have you tested something on the cc3220?

kzyapkov commented 6 years ago

I haven't looked into CC3220, but I see there is another fork with work on it:

https://github.com/xusiwei/cc3200tool/tree/cc3220

viotti commented 5 years ago

@sirde care to detail what minor adaptations you did in order for this tool to work in Development mode on the CC3220?

I've tried the fork mentioned by @kzyapkov but it fails with Inappropriate ioctl for device.

bin/cc3200tool -p /dev/cu.usbmodemE0071001 --reset prompt  \
        write_file driver.bin /sys/mcuimg.bin              \
        write_file awsca.der /cert/ca.der                  \
        write_file driver.der /cert/client.der             \
        write_file driver_priv.der /cert/private.der
2018-12-05 11:06:38,245 -- Connecting to target...
Reset the device with SOP2 asserted and press Enter

2018-12-05 11:06:41,434 -- Could not connect to target: [Errno 25] Inappropriate ioctl for device
make[1]: *** [flash] Error 253
make: *** [dist] Error 2

Thanks.

sirde commented 5 years ago

@viotti I've made quite a few change ( and haven't yet pushed it back to a public repo...)

However I suppose your error would be the same with cc3200. It's probably related to the com port ( as in https://stackoverflow.com/questions/45437676/pyserial-and-inappropriate-ioctl-for-device) or maybe the keyboard read.

viotti commented 5 years ago

@sirde ok thanks. I'll have a closer look at this ioctl error.