2015-08-27 2 views
1

J'utilise HE910 modem Telit dans mon projet: AT + CGMR 12.00.004Telit modem GSM/GPRS HE910, AT # HTTPRCV donner erreur

OK

Je mise en œuvre de mise à jour du firmware sur l'air pour lequel j'ai besoin de télécharger mon firmware à partir d'un lien http. Pour implémenter cela, j'ai utilisé la commande AT # SD pour composer un socket, puis j'ai utilisé http pour télécharger le fichier dans un bloc de 512 octets à la fois en raison de ma limitation de tampon UART. Ceci fonctionne correctement mais prend trop de temps pour télécharger le fichier.

Maintenant, je suis en train de télécharger une autre méthode utilisant le client HTTP Telit en utilisant les commandes AT:

AT # httpcfg = 0, "XXXXXXX", 80,0 ,,, 0,120,1

AT # HTTPQRY = 0,0, "/ ud/myfirmware.hex" OK

HTTPRING: 0200, "application/octet-stream", 2083

maintenant, si je lance AT # HTTPRCV = 0 Je reçois mon données de firmware comme:

AT # HTTPRCV = 0 < < <: 10000000E0C500002FC600002DC600002BC6000072 : 1000100029C6000027C6000025C6000023C6000030 : 1000200021C600001FC600001DC600001BC6000040 ...............

Mais ceci est grand pour mon tampon UART. Selon la fiche de données que je peux utiliser AT # HTTPRCV commande pour télécharger une partie sage mais je quand j'exécuter la commande comme ci-dessous je reçois erreur:

AT # HTTPRCV = 0,64 + CME ERROR: 4

selon la fiche technique: Description La commande AT $ HTTPRCV AT est utilisée pour recevoir des données HTTP du serveur distant.

AT # HTTPRCV = [,] - - Nombre maximal d'octets à lire dans une plage de temps: 0,64-1500 (valeur par défaut est 0 ce qui signifie que la taille infinie)

Peut-on s'il vous plaît me aider?

Répondre

1

J'ai eu le même problème avec un Telit UL865-EUD, fonctionnant 12.00.614. Il ne semble pas que le firmware supporte la configuration comme expliqué dans le manuel (CME ERROR 4 signifie que l'opération n'est pas supportée).

Si vous essayez AT # HTTPCFG = ?, vous verrez que les paramètres rapportés n'incluent pas non plus la variable pktsize décrite dans le manuel des commandes AT. Le meilleur que vous pouvez faire avec HTTPRCV est de travailler avec les données telles qu'elles proviennent du tampon rcv de Telit, c'est-à-dire en < = morceaux de taille de 300 octets.