Solució al mode Maintenance i altres incidències de la placa micro:bit

Alguna vegada t'has trobat que la micro:bit es connecta com una unitat externa anomenada "MAINTENANCE"? Fins ara, quan connectaves la teva placa apareixia amb el nom de "MICROBIT" i això ha canviat? No t'amoïnis, estem aquí per ajudar-te!

Quan això ocorre no vol dir res més que la teva placa micro:bit està en mode manteniment. Aquest està previst per actualitzar el microprogramari de la placa. La manera d'accedir a aquest mode de manteniment és connectant la nostra placa a l'ordinador mitjançant el port USB alhora que premem el botó de "RESET".

Tanmateix a vegades, si es troba en mode manteniment per error, ens pot passar que només connectar-la aparegui així i es mostri amb el nom de "MANTENIMENT" o "MAINTENANCE" en anglès.

És possible que hàgim detectat que alguna cosa no va bé en intentar pujar un fitxer. Doncs quan la micro:bit es troba en aquest mode, falla i crea fitxers que no es poden obrir.

Com podem sortir del mode de manteniment?

Per sortir del mode de manteniment, cal que desconnectem la placa del cable USB i ens assegurem de no prémer el botó "RESET". En aquest punt podem tornar a connectar la placa. Prou fàcil, veritat? Ara hauria d'aparèixer la placa amb el seu nom habitual, "MICROBIT".

Si així i tot, la placa segueix sense funcionar correctament, hem d'actualitzar el microprogramari intern de micro:bit, l’anomenat firmware.

Què és el firmware i com podem actualitzar-lo?

Quan parlem de hardware fem referència al dispositiu i als components, per exemple a la part física de la micro:bit. En canvi quan fem referència al software, estem parlant del programari i els programes que escrivim i executem a la nostra placa.

El firmware és un programari concret que s’encarrega de fer funcionar correctament tot el hardware d’un dispositiu. Aquest, que s'emmagatzema en el xip de la interfície del micro:bit, no canvia quan creem un programa, però sí que a vegades requereix una actualització, sigui perquè existeix una versió nova o perquè ens dóna problemes.

Per esbrinar la versió del firmware de la nostra micro:bit i actualitzar-lo per evitar que eventualment la nostra placa entri en mode "MAINTENANCE", cal que:

  1. Connectem la placa a un ordinador mitjançant el cable USB i obrim el fitxer DETAILS.TXT a la unitat "MICROBIT".
  2. Cerquem el número a la línia que comença per "Versió de la interfície" o "Interface Version". Per exemple: Versió de la interfície: 0249
  3. Desconnectem el cable USB i la bateria de la micro:bit, una vegada hem reconegut la versió de firmware de la placa.
  4. Mantenim premut el botó de reinici de la part posterior de la micro:bit i la connectem amb el cable USB a l'ordinador.
  5. Observem que apareix a l'ordinador una unitat anomenada "MAINTENANCE”" (en lloc de "MICROBIT").
  6. Baixem el fitxer adequat per a la nostra versió del micro:bit, segons si tenim la V1 o V2. Podem trobar-los aquí.
  7. Arrosseguem el nou fitxer firmware.HEX a la unitat de “MAINTENANCE” i esperem que el LED groc de la part posterior del dispositiu deixi de parpellejar.
  8. En finalitzar, la placa micro:bit es restableix i torna a aparèixer en el mode habitual amb el nom "MICROBIT".
  9. Comprovem el fitxer DETAILS.TXT que hi ha a la unitat "MICROBIT" i ens assegurem que té el mateix número de versió que el firmware.HEX que acabem de descarregar i carregar a la placa.
  10. Si en el pitjor dels casos això tampoc funcionés, hauríem de contactar amb el servei d'assistència de micro:bit.

Amb quins altres errors ens podem trobar?

És possible que en algun moment la micro:bit ens hagi mostrat una cara trista a la pantalla acompanyada d'un codi numèric, per exemple 020. Això ocorre quan la micro:bit es queda sense recursos o detecta un error.

Els errors amb els quals ens podem trobar, per motiu de hardware o software, són els següents segons el seu codi numèric:

Errors de Hardware (010-099)
010 La comunicació I2C de la micro:bit no funciona. És possible que el dispositiu estigui danyat físicament.
020 No queda memòria a la micro:bit. És possible que el programa sigui molt complex o contingui moltes variables. Prova de crear funcions per a reduir-lo.
030 Problema detectat a l'espai d'emmagatzematge. Prova de passar al dispositiu un fitxer .hex diferent.
040 La micro:bit no pot executar el programa carregat correctament a causa d’algun problema amb l’entorn de programació o alguna extensió. Carrega un fitxer .hex diferent i, a continuació, torna a carregar i executar el programa anterior.
042 La micro: bit no pot executar el programa carregat correctament a causa d’un possible problema en aquest. Carrega un fitxer .hex diferent i, a continuació, torna a carregar i executar el programa anterior.
043 S'ha produït un error amb l’antena de ràdio de la micro:bit.
050 S'ha produït un error amb el sensor acceleròmetre de la micro:bit.
051 S'ha produït un error amb el sensor magnetòmetre de la micro:bit.
098 La proposició ha fallat. Aquest és un error de MakeCode que es produeix quan la condició d'una afirmació és falsa.
Errors de l'editor MakeCode (800 - 989)
840 El punter d'assignació és nul o no és vàlid.
841 Error a la cua de treball.
843 L’entrada a VTable no està lliure.
844 Ha fallat l'assignació de GC per al nombre sol·licitat de bytes.
846 Fil d'assignació no vàlid.
848 Punter d'assignació més enllà de la capçalera d'assignació.
849 El punter d'assignació és nul.
901 El tipus de capçalera de l'objecte no és vàlid.
902 La part de dades de l'objecte és superior a la longitud que s'ha definit per aquesta.
903 S'ha suprimit una referència d'objecte i l'objecte ja no és vàlid.
904 La mida de l’objecte no coincideix amb la mida definida per aquest.
905 Un objecte vtable no és vàlid o no s'ha inicialitzat.
906 Error de recursos intern.
907 El recurs específic del dispositiu no està present.
909 El valor de l'argument està fora de l'interval o el tipus o el format no és vàlid.
927 El programa és incompatible amb la versió de la micro:bit que utilitzeu. Esteu intentant utilitzar una característica dissenyada per a micro: bit V2 en un micro: bit V1 o una extensió que només és compatible amb una placa micro: bit V1 en un micro: bit V2.
928 El registre de dades de micro: bits està ple. Esborreu les dades existents o introduïu un programa nou a la micro:bit.
980 Quan el valor de “x” no està definit.
981 Quan el valor de “x” és cert o fals.
982 Quan “x” és un nombre.
983 Quan “x” és una cadena.
984 Quan “x” és objecte d'algun tipus.
985 Quan “x” és una funció.
989 Quan “x” és nul.

Igual que aquest llistat d'errors produïts a MakeCode també hi ha un llistat específic de codis d'error de MicroPython en aquesta pàgina de suport de micro:bit.

També ens podem trobar amb errors produits en fer passar un fitxer a la micro:bit mitjançant el cable USB. El codi numèric d’aquests comencen amb un 5 i són els següents:

USB errors (500 - 599)
502 La micro:bit ha experimentat un error intern. Això es pot produir durant el procés d'arrossegar i deixar anar l'arxiu. Proveu de desconnectar i tornar a connectar la micro:bit per resoldre el problema.
504 S'ha esgotat el temps d'espera de la transferència del fitxer. Aquest error també es pot produir si el fitxer no té l'extensió .hex.
506 El fitxer no funciona. Això significa que el codi del fitxer .hex està en un ordre que la micro:bit no espera. Això pot passar si arrosseguem i deixem anar un fitxer .hex al dispositiu abans que l'anterior hagi acabat de carregar-se. Proveu de desconnectar i tornar a connectar la micro:bit.
528 La micro:bit ha detectat una actualització no compatible. Proveu de fer passar un fitxer creat en un dels editors en línia per resoldre el problema.
529 La micro:bit ha detectat una imatge incompatible. Això pot passar si intentem utilitzar un fitxer .hex antic amb l'última versió de micro:bit. Proveu d'actualitzar el fitxer .hex a l'editor on s'ha creat i descarregueu-lo de nou.

Cal tenir en compte que per molt que premem el botó de reinici de la placa, l'únic que fem és que el programa torni a començar. Per tant, si el problema està en el programa, fins que no tornem a carregar aquest o un de nou no podem veure si s'ha solucionat el problema. En el cas que el problema sigui de hardware, és a dir, que algun dels components interns de la micro:bit estigui danyat, l’única opció seria seguir utilitzant la micro:bit sense aquest component en concret o simplement canviar-lo i comprovar amb el proveïdor si l'avaria és de fàbrica.

Encara que en algun moment la micro:bit doni algun problema o requereixi alguna actualització, és fàcil de resoldre. A Make&Learn treballem amb micro:bit des de 2018 i podem afirmar que és una placa fantàstica per a introduir la programació a l'aula.

Com sempre, recordeu que podeu comptar amb nosaltres si necessiteu formació, activitats o projectes a fer amb micro:bit o sensors i actuadors compatibles amb ella. Som aquí per ajudar-te!

Equip M&L