|
| 1 | +# Micro:bit - 1Γ¨re fois ... Avec Espruino |
| 2 | + |
| 3 | +## Intro - ??? |
| 4 | + |
| 5 | +J'ai beaucoup de chance, [@titimoby](https://twitter.com/titimoby) m'a passé hier un **micro:bit**. Le **micro:bit** est un micro-contrôleur distribué (gratuitement aux enfants) pour les initier à la programmation et à l'électronique (hep la :fr: vous faites quoi vous?!). Le **micro:bit** possède des leds, un accéléromètre, un magnétomètre et une antenne bluetooth. Vous trouverez des informations par ici: https://www.microbit.co.uk/ |
| 6 | + |
| 7 | +## Coder ??? |
| 8 | + |
| 9 | +Il y a diffΓ©rentes faΓ§ons de coder un micro:bit (see [https://www.microbit.co.uk/create-code](https://www.microbit.co.uk/create-code)). Ce matin, en cherchant un peu sur Internet, j'ai vu que l'on pouvait utiliser le firmware **Espruino** sur un **micro:bit**, je voulais depuis longtemps tester Espruino, c'est donc l'occasion :wink:. Espruino, c'est un micro-contrΓ΄leur qui se code en JavaScript (http://www.espruino.com/) et il se trouve que d'autres micro-contrΓ΄leurs sont compatibles avec **Espruino**, dont le **micro:bit**. |
| 10 | + |
| 11 | +C'est parti :rocket: :bangbang: |
| 12 | + |
| 13 | +### Installation |
| 14 | + |
| 15 | +- Flashez votre **micro:bit**: |
| 16 | + - downloadez le build Espruino spΓ©ficique au **micro:bit** (par ici http://www.espruino.com/binaries/travis/master/ au moment oΓΉ j'Γ©cris, j'utilise la version `espruino_1v86.194_microbit.hex`) |
| 17 | + - plugguez/connectez votre **micro:bit** sur votre :computer: (USB) |
| 18 | + - copiez `espruino_1v86.194_microbit.hex` Γ la racine |
| 19 | + - ne soyez pas surpris, cela va dΓ©connecter votre **micro:bit** |
| 20 | +- Installez l'IDE |
| 21 | + - pour le moment, nous allons utiliser l'IDE version "Chrome App": |
| 22 | + - https://chrome.google.com/webstore/detail/espruino-web-ide/bleoifhkdalbjfbobjackfdifdneehpo |
| 23 | + - je chercherais plus tard si l'on peut trouver autre chose |
| 24 | + |
| 25 | +### Connexion |
| 26 | + |
| 27 | +- Tout d'abord re connectez le **micro:bit** et lancer la Chrome App |
| 28 | + |
| 29 | + |
| 30 | + |
| 31 | +- Connectez vous en cliquant sur la "prise" dans le coin en haut Γ gauche |
| 32 | +- SΓ©lectionnez votre **micro:bit** (gΓ©nΓ©rallement cela ressemble Γ `/dev/tty.usbmodem...`) |
| 33 | + |
| 34 | + |
| 35 | + |
| 36 | +- Si tout va bien, vous obtenez ceci: |
| 37 | + |
| 38 | + |
| 39 | + |
| 40 | +- Vous pouvez taper `reset()` et valider dans la console (cela re-initialise Espruino) |
| 41 | + |
| 42 | + |
| 43 | + |
| 44 | +- Vous pouvez tester d'autres commandes, par exemple `show(0x1FFFFFF)` allumera toutes les leds de votre **micro:bit** |
| 45 | + |
| 46 | + |
| 47 | + |
| 48 | +- Maintenant, aller cocher la case "Save on Send" dans `settings/communications`, ainsi lorsque vous "enverrez" du code sur votre **micro:bit**, il sera sauvegardé dessus et s'exécutera à nouveau lorsque vous reconnecterez votre **micro:bit** sur une source d'énergie, sans forcément avoir besoin de l'IDE (le **micro:bit** fonctionnera de manière indépendante): |
| 49 | + |
| 50 | + |
| 51 | + |
| 52 | +- Ensuite, dans la partie droite de l'IDE saisissez ce code: |
| 53 | + |
| 54 | +```javascript |
| 55 | +function fun() { |
| 56 | + setInterval(function() { |
| 57 | + show(compass().x+compass().y+compass().z); |
| 58 | + }, 500); |
| 59 | +} |
| 60 | + |
| 61 | +fun(); |
| 62 | +``` |
| 63 | + |
| 64 | +L'objet `compass()` du **micro:bit** c'est une sorte de boussole (https://www.microbit.co.uk/functions/compass-heading) et dans mon exemple, je passe la somme de ses 3 composantes `x, y, z` Γ la mΓ©thode `show`, qui du coup affichera toutes les 500ms un pattern avec les leds: |
| 65 | + |
| 66 | + |
| 67 | + |
| 68 | +- Ensuite cliquez sur l'icone avec une :arrow_up: sur un micro processeur (dans la barre d'outil vertical et central) |
| 69 | +- Cela va envoyer le code sur le **micro:bit** et l'exΓ©cuter |
| 70 | +- DΓ©connectez votre **micro:bit** |
| 71 | +- Connectez le par exemple sur une batterie externe de tΓ©lΓ©phone ... |
| 72 | +- ... et le programme dΓ©marre tout seul de faΓ§on autonome |
| 73 | + |
| 74 | + |
| 75 | + |
| 76 | +Et hop, c'est terminΓ© pour cette fois ci. |
| 77 | + |
| 78 | +## Pistes pour le prochain article |
| 79 | + |
| 80 | +- Johnny 5 |
| 81 | +- Node et BLE |
| 82 | +- Beacon |
| 83 | +- ... |
| 84 | + |
| 85 | +## Resources |
| 86 | + |
| 87 | +### JavaScript :wink: |
| 88 | + |
| 89 | +- micro:bit et nodejs: https://github.com/sandeepmistry/node-bbc-microbit |
| 90 | +- micro:bit et Johnny 5: https://github.com/sandeepmistry/node-bbc-microbit-io |
| 91 | +- Espruino on micro:bit: http://www.espruino.com/MicroBit |
| 92 | + |
0 commit comments