Note this section is only applicable to Prosody X. No firmware download is required for Prosody S.
A Prosody processor needs two kinds of firmware: a kernel, which provides the ability to run software, and the firmware modules, which implement the wide variety of Prosody functionality.
To find out which firmware modules are needed for an application, consult its documentation. If you are writing an application, see the documentation for any Prosody API functions you use.
Firmware appropriate to the type of card must be loaded. For Prosody processors located on Prosody X cards, firmware from a starcore directory must be used.
The best way to download the kernel is to use the batch/script file
provided. This is called prosody_ip_card_load_ting_kernel
and
is invoked as follows to load the standard Prosody X TiNG kernel located
in starcore directory:
prosody_ip_card_load_ting_kernel <serial number> <module index>
For example to load kernel to first Prosody processor on card with serial number 179083 it would be invoked as follows:
prosody_ip_card_load_ting_kernel 179083 0
Alternatively, the kernel may be loaded by reference to card IP address.
Go to directory $(TiNG)/test where there is a
script/batch file called klx
. It is used like this:
klx -i 172.16.1.220 -k mykey -m 0
where 172.16.1.220
is the IP address of the Prosody X card, and
-m 0
indicates the first Prosody Processor module on that
card (the default is module 0). It is very simple, only supplying
defaults to the kloadx program, whose
documentation you should consult for details of the options it
understands. (For example, you need to use the -r
option to
reset the Prosody Processor if a kernel has already been downloaded).
The IP address of a Prosody X card can be determined by running
the Aculab utility program acu_serno2ip
, specifying the
serial number of the card, which will then output the IP address and key of
the given card. It is used like this:
acu_serno2ip -k 179083
When the kernel is running you can see a light rapidly flashing on the card. Since this light is in different places on each type of card, see the hardware installation manual for your card for its location. You can also check that the kernel is running using pxdiagutil. with the Prosody utility pxdiagutil.
To download a firmware module you must have already downloaded the firmware kernel as described above.
The best way to download firmware modules is to use the script/batch file
provided. This is called prosody_ip_card_load_ting_fw
and
is invoked as follows to load Prosody X firmware modules located in starcore directory:
prosody_ip_card_load_ting_fw <serial number> <module index> <firmware module> ...
For example to load modules datafeed
, td
, and inchan
to
first Prosody processor on card with serial number 179083 it would be invoked as follows:
prosody_ip_card_load_ting_fw 179083 0 datafeed td inchan
Alternatively, firmware modules may be loaded by reference to card IP address.
Go to directory $(TiNG)/test. There is a
script/batch file called lmx
to download a module.
Use it like this:
lmx v110 -i 172.16.1.220 -k mykey
where v110
is the name of the module to load and
172.16.1.220
is the card IP address as used when loading the
kernel. As with klx
, you add the -m
option to
specify a Prosody processor module (default 0) like this:
lmx v110 -i 172.16.1.220 -k mykey -m 1
This script/batch file is very simple, only supplying defaults to the modload program, whose documentation you should consult for details of the options it understands.
The firmware modules are listed in Prosody software modules. If you want to run a test application, look at the documentation of that application for a list of required modules: if you are writing an application, details of required firmware modules are given in the documentation for the API functions: if you are using an application written by someone else, they should have provided details of the firmware it requires.
Note in general, applications running on Prosody X cards will require an additional firmware module datafeed
The firmware modules are listed in Prosody software modules. If you want to run a test application, look at the documentation of that application for a list of required modules: if you are writing an application, details of required firmware modules are given in the documentation for the API functions: if you are using an application written by someone else, they should have provided details of the firmware it requires.
For complex applications using many firmware modules, firmware download will require more consideration in order to utilise the memory and CPU resources of the Prosody processor to best effect. See firmware placement for more details.