Différences entre versions de « Hack-wipy-generalite »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
Ligne 55 : Ligne 55 :
 
Upload the {{fname|mcuimg.bin}} file to: {{fname|/flash/sys/mcuimg.bin}} it will take around 6s. You won’t see the file being stored inside /flash/sys/ because it’s actually saved bypassing the user file system, so it ends up inside the internal hidden file system, but rest assured that it was successfully transferred, and it has been signed with a MD5 checksum to verify its integrity. Now, reset the WiPy by pressing the switch on the board, or by typing:
 
Upload the {{fname|mcuimg.bin}} file to: {{fname|/flash/sys/mcuimg.bin}} it will take around 6s. You won’t see the file being stored inside /flash/sys/ because it’s actually saved bypassing the user file system, so it ends up inside the internal hidden file system, but rest assured that it was successfully transferred, and it has been signed with a MD5 checksum to verify its integrity. Now, reset the WiPy by pressing the switch on the board, or by typing:
  
<nowiki>>>> import machine
+
<syntaxhighlight lang="python">
 +
>>> import machine
 
>>> machine.reset()</nowiki>
 
>>> machine.reset()</nowiki>
 +
</syntaxhighlight>
  
 
Software updates can be found in: [https://github.com/wipy/wipy/releases https://github.com/wipy/wipy/releases] ('''Binaries.zip'''). It’s always recommended to update to the latest software, but make sure to read the release notes before.
 
Software updates can be found in: [https://github.com/wipy/wipy/releases https://github.com/wipy/wipy/releases] ('''Binaries.zip'''). It’s always recommended to update to the latest software, but make sure to read the release notes before.
Ligne 64 : Ligne 66 :
 
In order to check your software version, do:
 
In order to check your software version, do:
  
<nowiki>>>> import os
+
<syntaxhighlight lang="python">
 +
>>> import os
 
>>> os.uname().release</nowiki>
 
>>> os.uname().release</nowiki>
 +
</syntaxhighlight>
  
 
If the version number is lower than the latest release found in the [https://github.com/wipy/wipy/releases releases], go ahead and update your WiPy!
 
If the version number is lower than the latest release found in the [https://github.com/wipy/wipy/releases releases], go ahead and update your WiPy!

Version du 22 mai 2016 à 19:30


MCHobby investit du temps et de l'argent dans la réalisation de traduction et/ou documentation. C'est un travail long et fastidieux réalisé dans l'esprit Open-Source... donc gratuit et librement accessible.
SI vous aimez nos traductions et documentations ALORS aidez nous à en produire plus en achetant vos produits chez MCHobby.

Pas de support virgule flottante

Il n'y a pas de support pour les opérations en virgule flottante (floating point) sur WiPy.

Due to space reasons, there’s no floating point support, and no math module. This means that floating point numbers cannot be used anywhere in the code, and that all divisions must be performed using ‘//’ instead of ‘/’. Example:

>>> r = 4 // 2  # this will work
>>> r = 4 / 2   # this WON'T

Avant de mettre sous tension

Config réseau (WLAN) par défaut

When the WiPy boots with the default factory configuration starts in Access Point mode with ssid that starts with: wipy-wlan and key: www.wipy.io . Connect to this network and the WiPy will be reachable at 192.168.1.1 . In order to gain access to the interactive prompt, open a telnet session to that IP address on the default port (23). You will be asked for credentials: login: micro and password: python

REPL Telnet

Linux stock telnet works like a charm (also on OSX), but other tools like putty work quite well too. The default credentials are: user: micro, password: python. See network.server (micropython.org) for info on how to change the defaults.

For instance, on a linux shell (when connected to the WiPy in AP mode):

$ telnet 192.168.1.1

Système de fichier et accès FTP

There is a small internal file system (a drive) on the WiPy, called /flash, which is stored within the external serial flash memory. If a micro SD card is hooked-up and mounted, it will be available as well.

When the WiPy starts up, it always boots from the boot.py located in the /flash file system.

The file system is accessible via the native FTP server running in the WiPy. Open your FTP client of choice and connect to:

url: ftp://192.168.1.1, utilisateur: micro, mot de passe: python

See network.server (micropython.org) for info on how to change the defaults. The recommended clients are: Linux stock FTP (also in OSX), Filezilla and FireFTP. For example, on a linux shell:

$ ftp 192.168.1.1

The FTP server on the WiPy doesn’t support active mode, only passive, therefore, if using the native unix ftp client, just after logging in do:

ftp> passive

Besides that, the FTP server only supports one data connection at a time. Check out the Filezilla settings section below for more info.

Configuration FileZilla

Do not use the quick connect button, instead, open the site manager and create a new configuration.

In the General tab make sure that encryption is set to: Only use plain FTP (insecure). In the Transfer Settings tab limit the max number of connections to one, otherwise FileZilla will try to open a second command connection when retrieving and saving files, and for simplicity and to reduce code size, only one command and one data connections are possible. Other FTP clients might behave in a similar way.

Mise-à-jour du FirmWare

OTA (Over The Air) software updates can be performed through the FTP server.

Upload the mcuimg.bin file to: /flash/sys/mcuimg.bin it will take around 6s. You won’t see the file being stored inside /flash/sys/ because it’s actually saved bypassing the user file system, so it ends up inside the internal hidden file system, but rest assured that it was successfully transferred, and it has been signed with a MD5 checksum to verify its integrity. Now, reset the WiPy by pressing the switch on the board, or by typing:

>>> import machine
>>> machine.reset()</nowiki>

Software updates can be found in: https://github.com/wipy/wipy/releases (Binaries.zip). It’s always recommended to update to the latest software, but make sure to read the release notes before.

In order to check your software version, do:

>>> import os
>>> os.uname().release</nowiki>

If the version number is lower than the latest release found in the releases, go ahead and update your WiPy!

Boot Modes et Safe boot

If you power up normally, or press the reset button, the WiPy will boot into standard mode; the boot.py file will be executed first, then main.py will run.

You can override this boot sequence by pulling GP28 up (connect it to the 3v3 output pin) during reset. This procedure also allows going back in time to old firmware versions. The WiPy can hold up to 3 different firmware versions, which are: the factory firmware plus 2 user updates.

After reset, if GP28 is held high, the heartbeat LED will start flashing slowly, if after 3 seconds the pin is still being held high, the LED will start blinking a bit faster and the WiPy will select the previous user update to boot. If the previous user update is the desired firmware image, GP28 must be released before 3 more seconds elapse. If 3 seconds later the pin is still high, the factory firmware will be selected, the LED will flash quickly for 1.5 seconds and the WiPy will proceed to boot. The firmware selection mechanism is as follows:

Safe Boot Pin GP28 realeased during:

  • 1st 3 secs window - Safe boot, latest firmware is selected
  • 2nd 3 secs window - Safe boot, previous user update selected
  • Final 1.5 secs window - Safe boot, the factory firmware is selected

On all of the above 3 scenarios, safe boot mode is entered, meaning that the execution of both boot.py and main.py is skipped. This is useful to recover from crash situations caused by the user scripts. The selection made during safe boot is not persistent, therefore after the next normal reset the latest firmware will run again.

La LED heartbeat

By default the heartbeat LED flashes once every 4s to signal that the system is alive. This can be overridden through the wipy module:

>>> import wipy
>>> wipy.heartbeat(False)</nowiki>

There are currently 2 kinds of errors that you might see:

  1. If the heartbeat LED flashes quickly, then a Python script (eg main.py) has an error. Use the REPL to debug it.
  2. If the heartbeat LED stays on, then there was a hard fault, you cannot recover from this, the only way out is to press the reset switch.


Détails sur les modes de mise en veille (sleep):

  • machine.idle() : Power consumption: ~12mA (in WLAN STA mode). Wake sources: any hardware interrupt (including systick with period of 1ms), no special configuration required.
  • machine.sleep() : 950uA (in WLAN STA mode). Wake sources are Pin, RTC and WLAN
  • machine.deepsleep() : ~5uA. Wake sources are Pin and RTC.

Tutoriel WiPy tutorials and examples & general information about WiPy sous copyright de Damien George et contributeurs en ce qui concerne MicroPython et/ou PyCom en ce qui concerne les informations relatives a WiPy et LoPy.

Tutoriel traduit par Meurisse D. pour MCHobby.be

Traduit avec l'autorisation de micropython.org - Translated with the authorisation of micropython.org également avec l'accord de Daniel Compara (créateur de WiPy).

Toute référence, mention ou extrait de cette traduction doit être explicitement accompagné du texte suivant : «  Traduction par MCHobby (www.MCHobby.be) - Vente de kit et composants » avec un lien vers la source (donc cette page) et ce quelque soit le média utilisé.

L'utilisation commercial de la traduction (texte) et/ou réalisation, même partielle, pourrait être soumis à redevance. Dans tous les cas de figures, vous devez également obtenir l'accord du(des) détenteur initial des droits. Celui de MC Hobby s'arrêtant au travail de traduction proprement dit.