How to upgrade to vSTUFF 1.0.x
From VoiSmart Open Source Wiki
Contents |
Step 1: Check vGSM-II card's firmware version
There are several ways to read vGSM-II's firmware version, the methods 1 and 2 are recommended:
Method 1
On module loading the following lines are output to kernel's log:
ACPI: PCI Interrupt 0000:00:0d.0[A] -> Link [LNKB] -> GSI 10 (level, low) -> IRQ 10 vgsm2: pci:0000:00:0d.0: vGSM-II card found at 0xee000000 vgsm2: pci:0000:00:0d.0: FW version: 2.8.0 vgsm2: pci:0000:00:0d.0: Serial number: 000000200000 vgsm2: pci:0000:00:0d.0: GSM module sockets: 4 vgsm2: pci:0000:00:0d.0: SIM sockets: 4 vgsm2: pci:0000:00:0d.0: Module 0 is installed and powered OFF vgsm2: pci:0000:00:0d.0: Module 1 is installed and powered OFF vgsm2: pci:0000:00:0d.0: Module 2 is installed and powered OFF vgsm2: pci:0000:00:0d.0: Module 3 is not installed vgsm2: vGSM-II card successfully initialized 0000:00:0d.0: vgsm2_sim0 at MMIO 0xee001040 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_sim1 at MMIO 0xee001140 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_sim2 at MMIO 0xee001240 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_sim3 at MMIO 0xee001340 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_me0 at MMIO 0xee004100 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_mea0 at MMIO 0xee004140 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_mesim0 at MMIO 0xee004180 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_me1 at MMIO 0xee004900 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_mea1 at MMIO 0xee004940 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_mesim1 at MMIO 0xee004980 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_me2 at MMIO 0xee005100 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_mea2 at MMIO 0xee005140 (irq = 10) is a VGSM16550 0000:00:0d.0: vgsm2_mesim2 at MMIO 0xee005180 (irq = 10) is a VGSM16550 vgsm2: VoiSmart vGSM-II Driver loaded
The FW Version line indicates the firmware's version.
Method 2
If you know your card's PCI location you can know the firmware version by cat'ing the fw_version attribute:
# "cat /sys/bus/pci/devices/0000:00:0d.0/fw_version" 2.8.0
Method 3
vSTUFF 1.0 requires at least vGSM-II firmware version 2.8.0, if you are running a previous version please follow the firmware upgrade procedure on order to have the correct firmware version running on the card.
Install the latest software package and run either:
# vgsmctl -d /dev/vgsm2_card0 fw_version 2.8.0
or:
# vgsmctl -d /dev/vgsm2_me0 fw_version 2.8.0
Method 4
Install the latest software package, run Asterisk and run the CLI command:
- CLI> vgsm me show me0
ME: me0 Status: READY In service: YES Reason: Device: /dev/vgsm2_me0 ME SIM Device: /dev/vgsm2_mesim0 Context: vgsm_in Set clock: YES Power off on exit: YES Model: SIEMENS MC55 Version: REVISION 03.03 IMEI: 352021006562615 Supply voltage: 3792 mV Supply current: 95 mA Card's firmware: 2.8.0 Card's S/N: 000000200000
Edit vgsm.conf
The vgsm.conf configuration file underwent some change to support new features:
- The [global] section has been renamed to [me:*].
- The modules' sections need to be prefixed with me: to indicate they represent a ME configuration.
- The MESIM and SIM devices need to be specified for each ME.
This in an example of an old vgsm.conf file:
[global] sms_sender_domain = sms.voismart.it sms_recipient_address = SMS Router <sms@voismart.it> [me0] device = /dev/vgsm_me0 context = vgsm_in [me1] device = /dev/vgsm_me1 context = vgsm_in
It has to be rewritten to:
[me:*] sms_sender_domain = sms.voismart.it sms_recipient_address = SMS Router <sms@voismart.it> [me:me0] device = /dev/vgsm2_me0 mesim_device = /dev/vgsm2_mesim0 context = vgsm_in sim_proto = local sim_local_device_filename = /dev/vgsm2_sim0 [me:me1] device = /dev/vgsm2_me1 mesim_device = /dev/vgsm2_mesim1 context = vgsm_in sim_proto = local sim_local_device_filename = /dev/vgsm2_sim1
Please note that ME device vgsm2_me0 must be paired with MESIM device vgsm2_mesim0 otherwise unpredictable behaviors will arise. The SIM devices may, however, be permuted to perform SIM-ME cross-connections. No two SIM devices may, however, be assigned to the same ME.

