MX-760HD UpdatingFirmware

From MvixCommunity

Jump to: navigation, search

Contents

Firmware Update using downloaded firmware file

  1. Download an appropriate firmware (pkg) file from one of the sites listed on the download page. Save this file to your computer.
  2. If the downloaded file is zipped, unzip it to extract the contained file. You should end up with a file containing a .pkg extension.
  3. Transfer the file to your Mvix from your PC via the USB Cable, then disconnect the USB cable from your Mvix and reconnect it to your TV.
    (You could also transfer this firmware file to your Mvix via NDAS or FTP.)
    NOTE: This file must be on the Mvix in order to upgrade - either on the internal Hard-Drive, an external USB-connected Hard-Drive, or a USB Flash Drive. You can not perform an upgrade via a network share.
  4. Navigate down the menu and go to SETUP, or press SETUP on the remote, go to MISC on the menu and then go to FIRMWARE UGRADE.
  5. Navigate to the firmware file you have copied across and press ENTER on the remote or OK on the Mvix.
    The Mvix will go through a 3-stage process of 'recognising' (validating) the new firmware, deleting the old firmware, and then installing the new firmware.
  6. If the Firmware is not recognised then you could have downloaded a version that is incompatible with your Mvix. (In this event read through the firmware guide.)
    WARNING: DO NOT SHUT DOWN YOUR MVIX WHILE THE FIRMWARE UPGRADE IS IN PROGRESS!
  7. Should the Mvix lose power or freeze (no movement of progress bar on TV over an extended period) during the installation process, then the Mvix firmware will be corrupted. Your only chance of recovery will be a 'debrick' emergency rescue procedure detailed here.
  8. Once the firmware has been upgraded, your Mvix will automatically power down. Power up the Mvix and your new firmware will be installed.

This MvixUSA Knowledgebase article also features a pictorial step-by-step guide on this upgrade procedure for the MX-7x0HD media player.

Firmware Update using telnet commandline

You can update the firmware via the commandline. The Flash RAM in the device is broken into 5 areas:

# cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00800000 00010000 "EM86XX mapped flash"
 region 0 @ 00000000 [00010000 * 127]
 region 1 @ 007f0000 [00002000 * 8]
mtd1: 007c0000 00010000 "RootFS"
mtd2: 00010000 00010000 "Config"
mtd3: 00010000 00002000 "UserPref"
mtd4: 00020000 00010000 "BootROM"

/dev/mtd/1 is where the Firmware is stored - this is what gets updated when you update the Firmware using the GUI. You can prove this by copying the contents of that RAM segment to a file:

(On the Mvix)
# cat /dev/mtd/1 > mtd1
(Copy the file to a linux machine)
# file mtd1
mtd1: romfs filesystem, version 1 7152640 bytes, named mambo.

The firmware files that Mvix release are packaged up with a header and GZipped. You can extract the raw ROMFS using the following command:

dd bs=108 if=mvix-fw-1.1.25.pkg skip=1 | gunzip > mvix-fw-1.1.25.romfs

Copy this to the player (USB key or to the hard drive). Then you can run the following command on the player to write the flash:

# flash_update /dev/mtd/1 mvix-fw-1.1.25.romfs
E0/7274496
E65536/7274496
E131072/7274496
E196608/7274496
E262144/7274496
E327680/7274496
.... (erasing...)

.... (writing...)
W7217152/7241728
W7221248/7241728
W7225344/7241728
W7229440/7241728
W7233536/7241728
W7237632/7241728
W7241728/7241728

It first deletes the old flash, then writes the new. The ROM is loaded into /dev/mtd/0 at boot, so the player can still run when the ROM is erased. It might seem to freeze, but it has always come back for me - writing takes longer than erasing.

You can then restart the player at your leisure - it will only pick up the new firmware after a restart.


Firmware Update using TFTP

How to upload a romfs image to the player, and flash the firmware without using the GUI.

How to trigger:

  • Switch off player
  • Hold OK and Setup buttons
  • Press power button
  • Player will boot into emergency update mode

Keep in mind (firmware version 1.1.17):

  • displays EMERGENCY UPDATE (downloading, ip addr, etc...)
  • starts looking for tftp server
  • IP address of player is 192.168.100.3
  • expects the tftp server at 192.168.100.2
  • requested file name is: romimg.emergency
    • NB- The file needed is not a standard .pkg file or a standard ROMFS - I got this one from Mvix Support - roming.emergency.image
  • TFTP server must run on port 69 (which is the standard)
  • stops looking after 90sec and powers down
  • Takes about 30 seconds to download
  • Verifies the image - if it isn't the image above it fails
  • Flashes the ROM in 110 chunks - Verify/Erase/Write.

De-bricking Howto

If your firmware updates fail or your Mvix is frozen in some way, De-bricking Howto has a guide on how to repair.

Notes

Official firmware file format (.pkg)

(Similar to players with the same chipset i.e.: iamm35)
0x0000 - 16 bytes: some id (MVIX 1.0 for the MX-760HD, CubeOnRomPkgV1 for the iamm35) right padded with zeros
0x0010 - 2 bytes: "01 01", firmware hardware code? (/etc/firmware_hwcode)
0x0012 - 4 bytes: "YY YY MM DD" the date of release (D7 07 02 0C = 2007 Feb 12)
0x0016 - 2 bytes: first byte is "10" for fw version 1.1.9, "0A" for 1.1.15 and "0D" for 1.1.17; second byte is 00
0x0018 - 4 bytes: version number (01 01 0F 00 = 1.1.15)
0x001C - 16 bytes: MD5 hash of the packed binary (0x006C - EOF)
0x002C - 4 bytes: file length of the extracted binary (update_temp.bin; rompkg_pack_tmp.bin for the iamm35)
0x0030 - 60 bytes: zero filled
0x006C - EOF: the packed binary (gziped update_temp.bin)

ROMFS know-how

  • romfs name: update_temp.bin


Other links of interest


Go back to MX-760HD Main Page

Personal tools