Le firmware par défaut est disponible sur le site du constructeur du chipset : http://aredfox.com/eindex.htm
Mais on peut aussi télécharger le code source du firmware afin de le compiler soi-même, par exemple pour le compiler en Français. On peut aussi, bien sûr, faire quelques modifications ! Actuellement nous avons réussi à :
- produire des traductions plus jolies (plus "francophones" et plus "AUF")
- programmer certaines touches pour faire d'autres actions, notamment pour les transferts et la conversation à 3
OusmaneWilane a décortiqué le code et fait les premières modifs. ThomasNoël a pris la suite.
Outils
- un poste windows (une image vmware suffit largement)
- le compilateur Keil C51
les sources du firmware PA1688 : http://www.aredfox.com/PA1688/download/Palmh323API.zip
[http://www.aredfox.com/PA1688/download/English/documents/tech/PA1688DevGuideEng.pdf la documentation] pour savoir comment compiler (pas très claire, c'est le moins qu'on puisse dire...)
- éventuellement, si vous voulez jouer avec les sources, installez cygwin pour vous faciliter un peu la tâche (vi, emacs, patch, diff, ssh, rsync, etc).
Compilation
installer Keil dans c:\keil\
décompresser les sources dans c:\palmh323\
compiler une version iax2, en français mais silencieuse (none_ivr) :
> cd c:\palmh323 > setenv > mk ywh500 iax2 fr none_ivr
Résultat : un fichier ywh500_iax2_fr_none_ivr_NNNNNN.bin où NNNNNN est la version du firmware, par exemple 155013 pour la 1.55.013. C'est ce fichier qu'il faut envoyer au téléphone (via l'interface web, bouton "micrologiciel") ou via PalmTool.exe.
ImageLink(programmation-firmware-petit.png, attachment:programmation-firmware.png)
Un écran type quand on programme le firmware :BR deux fenêtres cygwin (vi, grep, less, rsync...) BR une fenêtre CMD.EXE pour les commandes de compilation
Adaptation
Voir les correctifs (patches) sur le [http://trac.sn.auf.org/ipphone/browser/firmware/1.56 site de développement] (Trac).
Le correctif 8 propose (sur le firmware 1.56) :
- une meilleure "francophonisation"
reprogrammation de la touche "Transfer" : s'il n'y a qu'un appel en cours, propose de composer un nouveau numéro. Sinon, fait le transfert (jonction entre les deux appels en cours) (à tester à fond).
- eprogrammation de la touche "Transfer" : envoie le code *2 à Asterisk, qui doit être programmé (cf features.conf) pour gérer le transfert quand il reçoit ce code...
- reprogrammation de la touche Flash : elle coupe la communication en cours (comme une touche Flash devrait toujours le faire quoi).
- amélioration de la gestion des listes "Missed", "Answered" ou "Dialed". On peut appuyer plusieurs fois sur un de ces boutons pour faire défiler la liste. La consultation est possible pendant un appel.
- touches "Local num", "Local IP", "Server IP" possibles lors d'un appel (sera peut-être utile pour le débogage "hotline")
- correction pour que la touche Vol+ fonctionne lors de l'affichage d'une liste (missed, answered ou dialed.
- affiche "Ver AAA-BB/NNNNN" juste après le boot , avec AAA = version upstream du firmware, BB = version du correctif AUF, NNNNN = version de la configuration (pour suivi en mode autoconfiguration)
- affiche le username (iax) en plus du numéro local quand on appuie sur "local num"
- n'affiche plus sans arret le username et le numéro local sur l'écran (inutile vu la correction ci dessus)
- affiche la version "Ver AAA-BB/NNNNN" en plus de l'IP quand on appuie sur "local ip"
passe en mode silencieux (Mute) quand on appuie sur "backspace" en cours de communication (à améliorer car ça a aussi tendance à désactiver la touche backspace quand on en a besoin... trouver une autre touche ? laquelle ?)
- la prise en compte de 5 chiffres de version pour le système d'autoconfiguration (155XX au lieu de 155), afin de gérer les patches sur la 1.55 proposée par le constructeur
- corrections sur le fichier cleanall.bat pour nettoyer les sources
NB : pour compiler les sources après avoir ajouté ce patch, il faut d'abord recompiler la bibliothèque pour iax2 :
> cd c:\palmh323 > setenv > cleanall > mk lib p_iax2 > mk ywh500 iax2 fr none_ivr
Le prochain poste : chipset AR1688 (2007)
La chipset de l'IP Phone 5 (PA1688) est assez ancien. Une nouvelle mouture existe depuis fin 2006, plus puissante, moins chère et plus libre : l'[http://www.aredfox.com/eindex.htm AR1688]. Les développeurs ont monté [http://aredfox.spaces.live.com/ un blog]. Du matériel est déjà disponible [http://www.ges.fr/voip/product_info.php?products_id=276 chez GES].
["CatégorieVoIP"]