Yealink Forums

Full Version: firmware bug in 32.70.1.33 & 38.70.1.33
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Hi Yealink Tech Team!

After updating to latest firmware 32.70.1.33 on my T32G the "Autoprovision Now" function at the phone Web-GUI stopped working. The message "Configuration updating..." is always showing, - phone doesn't seem to provise.

With firmware 32.70.0.185, after downgrading, everything works perfectly again. The message "Configuration updating..." is only displayed for short time, a second message "The operation is done!" appears then, and the provisioning is finishing correctly.
Hi lorn10,

I have tested it in my side and it does work well.
So would you please reset the phone to factory then try again?
Access to web gui->Settings->Upgrade tab, click "Reset to Factory Setting" button to reset.

thanks
(11-10-2014 03:49 PM)Yealink_Wilson Wrote: [ -> ]Hi lorn10,

I have tested it in my side and it does work well.
So would you please reset the phone to factory then try again?
Access to web gui->Settings->Upgrade tab, click "Reset to Factory Setting" button to reset.

thanks

Hello Yealink_Wilson

Thanks for this information, but the problem is still present. After pushing "Autoprovision Now" button, phone hangs at "Configuration updating..." message. Provision function is NOT working, --> phone has still factory settings.

After downgrading to firmware 32.70.0.185, it works again.

Please note, - I use FreePBX Distro 5.211.65-20 with latest OSS PBX End Point Manager 2.11.7. Probably my provision file has wrong syntax? Is firmware 32.70.1.33 still M7 template based?

My full y0000000000$suffix.cfg config has following commands:

Code:
[ cfg:/phone/config/system.ini,reboot=1 ]
local_time.manual_time_enable = 1
local_time.ntp_server1 = {$network_time_server}
local_time.ntp_server2 = pool.ntp.org
local_time.interval = 1000
local_time.time_zone = {$timezone}

local_time.summer_time = 1
local_time.dst_time_type = 1
local_time.start_time = 3/5/7/1
local_time.end_time = 10/5/7/2
local_time.offset_time = 60
local_time.time_format = 1
local_time.date_format = 5

auto_provision.mode = 1
auto_provision.repeat.enable = 0
auto_provision.repeat.minutes = 1440
auto_provision.weekly.enable = 0
auto_provision.weekly.mask = 0123456
auto_provision.weekly.begin_time = 00:00
auto_provision.weekly.end_time = 00:00
AutoProvision.strServerURL = tftp://{$server.ip.1}

telnet.telnet_enable = 0

[ cfg:/phone/config/system.ini,reboot=1]
Profile.CNG = 0
Profile.VAD = 1
Profile.Echo = 1
Profile.SIDE_TONE = -30

[ cfg:/phone/config/user.ini,reboot=1 ]
WatchDog.Time = 10
vpm_tone_Country.Country = {$tones_country}

AlertInfo0.Text = interal
AlertInfo0.Ringer = 2

AlertInfo1.Text = external
AlertInfo1.Ringer = 5

Emergency.Num = 000

PhoneSetting.BacklightTime = 120
PhoneSetting.DialNowDelay = {$dialnowdelay}
PhoneSetting.BackGrounds = {$uselogo}
PhoneSetting.BackLight = 6
PhoneSetting.UnusedBackLight = 0
PhoneSetting.ScreensaverTime = {$screensaverdelay}
PhoneSetting.Theme = {$theme}
PhoneSetting.Voicevolume = 5
PhoneSetting.Lock = 0

[ bin:/phone/config/DialNow.xml,reboot=0 ]
url=tftp://{$server.ip.1}/dialnow.xml

[ psw:/phone/config/.htpasswd ]
admin = {$adminpw}

[ rom:Firmware ]
url = {$firmware_name}
Ok, after hours of working I build now a 100% clean M7 (v70+) template based provision file.

Unfortunately it still doesn't provise correctly, - it hangs at "Configuration updating..." message with firmware 32.70.1.33 & 38.70.1.33.

With firmware 32.70.0.185 it works perfectly. And, most important, - also the special European daylight-saving parameters are now correctly adopted with this new M7 template based provision file. This newer worked before.

y0000000000$suffix.cfg code (M7 based, for OSS PBX End Point Manager at FreePBX)

Code:
#!version:1.0.0.1
## the file header "#!version:1.0.0.1" can not be edited or deleted. ##


#
local_time.time_zone = {$timezone}
local_time.time_zone_name =
local_time.ntp_server1 = {$network_time_server}
local_time.ntp_server2 = pool.ntp.org
local_time.interval = 1000
local_time.summer_time = 1
local_time.dst_time_type = 1
local_time.start_time = 3/5/7/1
local_time.end_time = 10/5/7/2
local_time.offset_time = 60
local_time.time_format = 1
local_time.date_format = 5
local_time.dhcp_time = 0
local_time.manual_time_enable = 1


#
auto_provision.mode = 1
auto_provision.repeat.enable = 0
auto_provision.repeat.minutes = 1440
auto_provision.weekly.enable = 0
auto_provision.weekly.mask = 0123456
auto_provision.weekly.begin_time = 00:00
auto_provision.weekly.end_time = 00:00
auto_provision.server.url = tftp://{$server.ip.1}
auto_provision.dhcp_option.enable = 1


#
telnet.enable = 0


#
voice.cng = 0
voice.vad = 1
voice.side_tone = -30
voice.tone.country = {$tones_country}


#
distinctive_ring_tones.alert_info.1.text = interal
distinctive_ring_tones.alert_info.1.ringer = 2
distinctive_ring_tones.alert_info.2.text = external
distinctive_ring_tones.alert_info.2.ringer = 5


#
phone_setting.inter_digit_time = 4
phone_setting.flash_hook_timer = 1
phone_setting.lock = 0
phone_setting.phone_lock.unlock_pin = 10
phone_setting.phone_lock.lock_time_out = 10
phone_setting.ring_type = Busy.wav
phone_setting.active_backlight_level = 6
phone_setting.inactive_backlight_level = 0
phone_setting.backlight_time = 120
phone_setting.ring_for_tranfailed = Ring1.wav
phone_setting.logon_wizard = 0
phone_setting.predial_autodial = 0
phone_setting.is_deal180 = 1
phone_setting.dialnow_delay = {$dialnowdelay}
phone_setting.custom_softkey_enable = 0
phone_setting.theme = {$theme}
phone_setting.emergency.number = 000
phone_setting.sms_popup_enable = 1
phone_setting.common_power_led_enable = 0
phone_setting.mail_power_led_flash_enable = 0
phone_setting.mute_power_led_flash_enable = 0
phone_setting.hold_power_led_flash_enable = 0
phone_setting.voice_volume = 5


#
dialplan_dialnow.url = tftp://{$server.ip.1}/dialnow.xml


#
security.user_password = admin:{$adminpw}


#
firmware.url = {$firmware_name}
Well, new year, new considerations, and finally, I solved the provisioning issue!

Problem was legacy M2 style based $mac.cfg config file! I don't realize that all config files should be in new M7 format. Previous firmware 32.70.0.185 had no problems with mixed M2 & M7 config files. Firmware 32.70.1.33 needs 100% clean M7 templates.

After converting and cleaning up, this new M7 $mac.cfg file works perfectly also with firmware 32.70.1.33 & 38.70.1.33.

So, this problem is now solved. Thread can be closed! Smile

$mac.cfg code (M7 based, for OSS PBX End Point Manager at FreePBX)

Code:
#!version:1.0.0.1
## the file header "#!version:1.0.0.1" can not be edited or deleted. ##

{line_loop}
account.1.enable = 1
account.1.label = {$displayname}
account.1.display_name = {$displayname}
account.1.user_name = {$username}
account.1.auth_name = {$authname}
account.1.password = {$secret}
account.1.sip_server_host = {$server_host}
account.1.sip_server_port = {$server_port}
account.1.sip_listen_port = {$server_port|5060}
account.1.expires = 3600
account.1.outbound_proxy_enable = {$enable_outbound_proxy_server}
account.1.outbound_host = {$outbound_proxy_server}
account.1.outbound_port = {$outbound_proxy_server_port}
account.1.backup_outbound_host = {$bk_outbound_proxy_server}
account.1.backup_outbound_port = {$bk_outbound_proxy_server_port}
voice_mail.number.1 = {$voicemail_number|*97}
account.1.proxy_require =
account.1.ptime = 20
account.1.srtp_encryption = 0
account.1.100rel_enable = 0
account.1.precondition = 0
account.1.subscribe_register = 1
account.1.cid_source = 0
account.1.session_timer.enable = 0
account.1.session_timer.expires =
account.1.session_timer.refresher = 0
account.1.enable_user_equal_phone = 0
account.1.blf_list_code =
account.1.subscribe_mwi = {$subscribe_mwi|1}
account.1.anonymous_call = 0
account.1.reject_anonymous_call = 0
account.1.transport = {$transport}
account.1.shared_line =
account.1.dialoginfo_callpickup = 1
account.1.auto_answer = {$auto_answer|0}
account.1.missed_calllog = {$missed_call_log|0}
account.1.anonymous_call_oncode =
account.1.anonymous_call_offcode =
account.1.anonymous_reject_oncode =
account.1.anonymous_reject_offcode =
account.1.bla_number =
account.1.subscribe_mwi_expires = 3600
account.1.ringtone.ring_type = Ring2.wav
account.1.dtmf.type = 1
account.1.dtmf.dtmf_payload = 101
account.1.dtmf.info_type = 0
account.1.nat.nat_traversal = {$nat_trans}
account.1.nat.stun_server = {$stun_server}
account.1.nat.stun_port = {$stun_server_port}
account.1.nat.udp_update_enable = 1
account.1.nat.udp_update_time = 30
account.1.nat.rport = 0
account.1.advanced.timer_t1 = 0.5
account.1.advanced.timer_t2 = 4
account.1.advanced.timer_t4 = 5
account.1.blf.subscribe_period = 360
{/line_loop}


sip.rfc2543_hold = 0
sip.use_out_bound_in_dialog = 1
sip.reg_surge_prevention = 60
transfer.blind_tran_on_hook_enable = 1
transfer.on_hook_trans_enable = 1
wallpaper_upload.url = {$logo_url}
phone_setting.backgrounds = {$uselogo}
phone_setting.screen_saver_time = {$screensaverdelay}
screen_saver.pic.url =


{loop_remotephonebook}
remote_phonebook.data.{$count}.url = {$url}
remote_phonebook.data.{$count}.name = {$name}
{/loop_remotephonebook}


{loop_memkey}
memorykey.{$number}.line = {$line}
memorykey.{$number}.value = {$value}
memorykey.{$number}.pickup_value = {$pickup_value}
memorykey.{$number}.type = {$type}
memorykey.{$number}.xml_phonebook =  
{/loop_memkey}


{loop_linekey}
linekey.{$count}.line = {$line}  
linekey.{$count}.value = {$value}
linekey.{$count}.pickup_value = {$pickup_value}
linekey.{$count}.type = {$type}
linekey.{$count}.xml_phonebook =
linekey.{$count}.label = {$label}
{/loop_linekey}            


{loop_softkey}
#softkey {$number}
programablekey.{$number}.type = {$type}
programablekey.{$number}.line = 0
programablekey.{$number}.value = {$value}
programablekey.{$number}.xml_phonebook =
programablekey.{$number}.history_type =
programablekey.{$number}.label = {$label}
{/loop_softkey}


#
programablekey.5.type = {$hardkey_up_type}
programablekey.5.line = {$hardkey_up_line}
programablekey.5.value = {$hardkey_up_value}
programablekey.5.xml_phonebook =
programablekey.6.type = {$hardkey_down_type}
programablekey.6.line = {$hardkey_down_line}
programablekey.6.value = {$hardkey_down_value}
programablekey.6.xml_phonebook =
programablekey.7.type = {$hardkey_left_type}
programablekey.7.line = {$hardkey_left_line}
programablekey.7.value = {$hardkey_left_value}
programablekey.7.xml_phonebook =
programablekey.8.type = {$hardkey_right_type}
programablekey.8.line = {$hardkey_right_line}
programablekey.8.value = {$hardkey_right_value}
programablekey.8.xml_phonebook =
programablekey.9.type = {$hardkey_ok_type}
programablekey.9.line = {$hardkey_ok_line}
programablekey.9.value = {$hardkey_ok_value}
programablekey.9.xml_phonebook =
programablekey.10.type = {$hardkey_cancel_type}
programablekey.10.line = {$hardkey_cancel_line}
programablekey.10.value = {$hardkey_cancel_value}
programablekey.10.xml_phonebook =
programablekey.14.type = {$hardkey_fwd_type}
programablekey.14.line = {$hardkey_fwd_line}
programablekey.14.value = {$hardkey_fwd_value}
programablekey.14.xml_phonebook =


{loop_sdext38}
expansion_module.1.key.{$count}.type = {$type}
expansion_module.1.key.{$count}.line = 0
expansion_module.1.key.{$count}.value = {$value}
expansion_module.1.key.{$count}.pickup_value = {$pickup_value}
expansion_module.1.key.{$count}.label = {$label}
{/loop_sdext38}
Hi,

Nice to hear that the issue is solved and thanks for your share.

Regards,
James
Reference URL's