Rockbox Development > New Ports

Creative Zen Vision:M

<< < (42/136) > >>

mcuelenaere:

--- Quote from: wantondstrction on June 29, 2007, 01:23:53 AM ---That's the only copy I have of the firmware upgrade readout, but I can do another one if you like.

--- End quote ---

That would be nice :)
Especially the beginning of the process would be of some importance, but if you could do a full readout (and maybe rar/zip it), that would be great!

wantondstrction:
Well I finally managed to fail a firmware upgrade. It wasn't nearly as devastating as you would think. Interesting enough, after failing the firmware upgrade, it would no longer allow an official upgrade. It would always fail and never give a reason or an error of any sort.

Another interesting point, if you go through the reload firmware process. If you go through windows explorer, it reads the player as a 50mb device with 50mb free. I found this kind of odd.

I managed to figure out how to use the html output function on wpdmon (more like where to find and copy and paste the automatic output into html) Here's a "reload firmware" version of the monitor output.

http://rapidshare.com/files/40174563/WpdMonreloadfirmware.htm.html

PS sorry it's taken me a while to get back to you, I've been having eye problems keeping me from using the computer.

mcuelenaere:

--- Quote from: wantondstrction on June 30, 2007, 02:42:27 AM ---Well I finally managed to fail a firmware upgrade. It wasn't nearly as devastating as you would think. Interesting enough, after failing the firmware upgrade, it would no longer allow an official upgrade. It would always fail and never give a reason or an error of any sort.

Another interesting point, if you go through the reload firmware process. If you go through windows explorer, it reads the player as a 50mb device with 50mb free. I found this kind of odd.

--- End quote ---
Interesting...

--- Quote ---PS sorry it's taken me a while to get back to you, I've been having eye problems keeping me from using the computer.

--- End quote ---
Not a problem. I hope you're back allright :)

mcuelenaere:
This is rather interesting:

--- Code: ---Data (from device, 122 bytes) - StorageInfo:
  Storage type      = Fixed RAM (0x3)
  File system type  = Generic Hierarchical (0x2)
  Access capability = Read-Write (0x0)
  Max capacity      = 52428800
  Free space (byte) = 52428800
  Free space (objs) = 4294967295
  Storage desc      = Storage Media

excerpt from WpdMonreloadfirmware.htm
--- End code ---

The max capacity indicates 50MiB(exactly), the storage type is Fixed RAM; what could this mean?
Could there be some special partition on the HDD which is 50MiB which hides the OS?

And maybe if the firmware updater can access it, we could too?

edit: made the page a little bit shorter :)

mcuelenaere:
I think I get the update progress:

* Firstly, the app checks if there's a device connected.
* The app sends the GetDeviceInfo command and checks if it's the correct device & the correct firmware version
--- Code: ---  Manufacturer      = Creative Technology Ltd
  Model             = Creative Zen Vision:M
  Device Version    = 1.61.01_0.00.23
--- End code ---

* The app uses the GetStorageIDs command and checks with the GetStorageInfo command if the storage is the correct one
--- Code: ---  Storage type      = Fixed RAM (0x3)
  File system type  = Generic Hierarchical (0x2)
  Access capability = Read-Write (0x0)
  Max capacity      = 52428800
  Free space (byte) = 52428800
  Free space (objs) = 4294967295
  Storage desc      = Storage Media
--- End code ---

* The app enumerates through the list of objects until it finds the correct one(I don't know what specific object it's looking for yet)
* The app uses the WPD_COMMAND_CAPABILITIES_GET_SUPPORTED_CONTENT_TYPES command to determine something(?)
* The app creates an object with the WPD_COMMAND_OBJECT_MANAGEMENT_CREATE_OBJECT_WITH_PROPERTIES_AND_DATA command
--- Code: --- WPD_PROPERTY_OBJECT_MANAGEMENT_CREATION_PROPERTIES           = [VT_UNKNOWN ] IPortableDeviceValues (10 elements)
WPD_OBJECT_PARENT_ID                                         = [VT_LPWSTR  ] s10001
WPD_OBJECT_NAME                                              = [VT_LPWSTR  ] nk.bin
WPD_OBJECT_ORIGINAL_FILE_NAME                                = [VT_LPWSTR  ] nk.bin
WPD_OBJECT_CONTENT_TYPE                                      = [VT_CLSID   ] WPD_CONTENT_TYPE_UNSPECIFIED
WPD_OBJECT_ISHIDDEN                                          = [VT_BOOL    ] FALSE
WPD_OBJECT_ISSYSTEM                                          = [VT_BOOL    ] FALSE
WPD_OBJECT_CAN_DELETE                                        = [VT_BOOL    ] TRUE
WPD_OBJECT_FORMAT                                            = [VT_CLSID   ] {B8020000-AE6C-4804-98BA-C57B46965FE7}
WPD_OBJECT_SIZE                                              = [VT_UI8     ] 0x14C23D0 (Decimal: 21767120)
WPD_API_OPTION_USE_CLEAR_DATA_STREAM                         = [VT_BOOL    ] TRUE
--- End code ---

* The app uses the SendObjectInfo/WPD_COMMAND_OBJECT_MANAGEMENT_WRITE_OBJECT_DATA command for writing some data
--- Code: ---  Format code       = UndefinedFirmware (0xb802)
  Protection status = None (0x0000)
  Compressed size   = 21767120
  File name         = nk.bin
--- End code ---

* The app uses several WPD_COMMAND_OBJECT_MANAGEMENT_WRITE_OBJECT_DATA commands to send the firmware
* Finally it sends the WPD_COMMAND_OBJECT_MANAGEMENT_COMMIT_OBJECT command
* The app checks regulary the status of the device with Get Device Status(the ZVM is upgrading his firmware)
--- Code: ---  Status Length = 4
  Code          = Device Busy (0x2019)
--- End code ---

* Finally the device responds
--- Code: ---Response: OK (0x2001)
  TransactionId: 7
--- End code ---

* The device status changes to unknown(the ZVM restarts)
* The app does some not-necessary checking if the device still works
This is kinda the process of doing a firmware update according to WpdMonreloadfirmware.htm and my interpretation;
could someone verify/criticize this?
What do you guys think?

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version