Firmware Update PTP270PEX
PTP270PEX Hardware Versions
The PTP270PEX card has on on-board single board computer (SBC) running Linux, and after the original SBC type wasn't available anymore from its manufacturer we had to use the successor of the SBC which is basically identical to the older version, but is a little bit faster and unfortunately required some hardware changes on the carrier board (the PCI card). This in turn required some firmware changes to account for this, so there are 2 different lines of firmware images available for the 2 different hardware versions of the PTP270PEX
card.
The hardware version is printed in copper on the PTP270PEX card. The old hardware version is PTP270PEX v1x
and runs with a firmware v1.x, whereas the new version is PTP270PEX v2x
and runs a firmware v2.x.
PTP270PEX Firmware Versions
All v2x cards can be upgraded to the latest v2.x firmware version, and all v1x cards can be upgraded to the latest v1.x firmware version. However, care must be taken not to apply a v1.x firmware image to a PTP270PEX v2 card, or vice versa. Doing so will make a card unusable.
For PTP270PEX v2x cards the current firmware version is v2.13
and a firmware image can be downloaded using this link:
https://www.meinberg.de/download/firmware/update-ptp270pex-2.13.tgz
For PTP270PEX v1x cards the current firmware version is v1.13
which can be downloaded here:
https://www.meinberg.de/download/firmware/update-ptp270pex-1.13.tgz
Please note some very old PTP270PEX v1x cards have been shipped with a kernel version which should eventually also be updated.
Firmware Update Procedure
The firmware upgrade procedure is the same for both versions of the card, except that the appropriate firmware image file must be used.
A firmware upgrade image can be copied to the PTP270PEX card via the network, using the scp
command. At first the IP address needs to be figured out under which the PTP270PEX card is accessible over the network.
In the examples below the card's IP address is 172.29.4.181
. However, in a real environment this has to be replaced by the real IP address assigned to the card, which can be seen in the monitor program mbgmon.exe
under Windows, or in the output of the mbgstatus
program under Linux.
For a remote login to the card via ssh
/scp
you can use the following parameters:
- user name: root
- password: timeserver
Short Steps To Update The Card's Firmware
- Copy the file via the card's network interface to the card to the subdirectory
/update
and store the file under the new nameupdate.tgz
(see below). It is important that the name of the copied file is justupdate.tgz
, not the original file name. - Shutdown, power cycle and reboot the computer.
Detailed Instructions For The Firmware Update
To copy the firmware upgrade file from a Linux machine to the card you can use the scp
command from the openssh package which is installed in most Linux distributions by default.
Under Windows you can use the pscp
command line utility from the putty
software suite which makes the SSH tools available for Windows:
http://www.chiark.greenend.org.uk/~sgtatham/putty/
If the PTP270PEX card's IP address is 172.29.4.181
you can run the following command to copy the new firmware to the card. Please keep in mind that in the commands below you have to replace update-ptp270pex-{*}.tgz with the real name of the downloaded file:
Under Linux:
scp update-ptp270pex-{*}.tgz root@172.29.4.181:/update/update.tgz
Under Windows:
pscp update-ptp270pex-{*}.tgz root@172.29.4.181:/update/update.tgz
Please note the only difference between the commands above is the program name (pscp
under Windows vs. scp
under Linux).
If you have a very old PTP270PEX v1 card you can check the Linux kernel on the card to see if it should eventually be updated, too. If required, the kernel can also be updated before the card is rebooted.
Finally please power cycle the PC to be sure the PTP270PEX card reboots with the new kernel and updated firmware.
Updating The Linux Kernel On A PTP270PEX v1 Card
Some very old PTP270PEX v1 cards have been shipped with a Linux kernel version which has only limited support for multicast. If the card works fine and synchronizes properly with its grandmaster then everything is fine for the specific network environment. However, if the card doesn't synchronize with its grandmaster via PTP then the missing multicast support can be the reason, and eventually the Linux kernel on the card should be updated. The Linux kernel is not included in the usual firmware images.
First you should check the version of the Linux kernel. Open an ssh
session to the card, login using the user name and password mentioned above, and type the following command:
uname -a
This should print something like:
Linux ptp270pex 2.6.15-col1 #77 Thu Oct 21 15:24:38 UTC 2010 armv5tel unknown
After this you can type exit
to quit the remote ssh
session.
If the date reported in the output above is older than Oct 21 2010 you might consider updating the kernel.
The kernel update must be done in 3 steps:
- Copy the archive file with the kernel image to the card
- Unpack the kernel image file from the archive file
- Write the kernel image to the flash disk
The current version of the kernel image can be downloaded here:
https://www.meinberg.de/download/firmware/pxa270-1.2-kernel-2.6.15-col1-2010-10-21.img.tar.gz
Step 1: Copy the kernel image archive to the PTP270PEX card's root directory. In a command line window on your PC type:
scp pxa270-1.2-kernel-2.6.15-col1-2010-10-21.img.tar.gz root@172.29.4.181:/
Please use the real IP address of the PTP270PEX card instead of the address 172.29.4.181 in the example above.
Step 2: Unpack the kernel image
In an ssh
session to the PTP270PEX card run the following commands:
# cd to the root directory cd / # unpack the kernel image archive tar xvzf pxa270-1.2-kernel-2.6.15-col1-2010-10-21.img.tar.gz
Step 3: Install the new kernel
# install the kernel image dd if=pxa270-1.2-kernel-2.6.15-col1-2010-10-21.img of=/dev/mtdblock2 conv=notrunc
The dd
command may take 10 seconds or so without printing anything. This is normal.
The output of the commands should look similar to:
root@ptp270pex:~# cd / root@ptp270pex:/# tar xvzf pxa270-1.2-kernel-2.6.15-col1-2010-10-21.img.tar.gz pxa270-1.2-kernel-2.6.15-col1-2010-10-21.img root@ptp270pex:/# dd if=pxa270-1.2-kernel-2.6.15-col1-2010-10-21.img of=/dev/mtdblock2 conv=notrunc 2374+1 records in 2374+1 records out root@ptp270pex:/#
After this the new kernel image (pxa270*.img) and its archive (pxa270*.tar.gz) can be deleted to free some space in the file system:
rm /pxa270*.img /pxa270*.tar.gz
Finally reboot the computer and the PTP270PEX card.
After reboot, the version reported by “uname -a” in an ssh
session should be:
Linux ptp270pex 2.6.15-col1 #77 Thu Oct 21 15:24:38 UTC 2010 armv5tel unknown
Rebooting The PTP270PEX Card
After the firmware update and/or a kernel update have been installed on the card the computer needs to be power cycled. Be sure really to power cycle the computer, not only reboot it, to make sure the Linux system on the PTP270PEX card also reboots.
The firmware image is unpacked and installed when the card starts up again after it has been power cycled.
— Martin Burnicki 2017-07-05 12:41