2016-03-26 00:47:20 +01:00
# Error codes
2017-08-31 01:53:58 +02:00
Your @boardname @ may encounter a situation that prevents it from running your code. When this happens, a frowny face will appear on your @boardname @ screen (see picture) followed by an error number. These are called _panic_ codes.
2016-03-26 00:47:20 +01:00
Below is a list of error numbers and what they mean:
2017-08-31 01:53:58 +02:00
* **10** (`MICROBIT_I2C_LOCKUP`): the @boardname @'s I2C bus is not working
* **20** (`MICROBIT_OOM`): there is no free memory on the @boardname @
2018-11-20 22:26:26 +01:00
* **30** (`MICROBIT_HEAP_ERROR`): a problem in the heap space.
2017-08-31 01:53:58 +02:00
* **40** (`MICROBIT_NULL_DEREFERENCE `): there was a NULL dereference, the @boardname @ tried to manage a invalid object pointer.
* **42** (`MICROBIT_SYSTEM_ERROR`): there's an error condition in the @boardname @ system software.
* **43** (`MICROBIT_NO_RADIO`): the @boardname @ can't enable the radio.
2018-11-13 20:17:42 +01:00
* **50** (`MICROBIT_HARDWARE_UNAVAILABLE_ACC`): an error occurred with the micro:bit's accelerometer component.
* **51** (`MICROBIT_HARDWARE_UNAVAILABLE_MAG`): an error occurred with the micro:bit's magnetometer component.
2017-08-31 01:53:58 +02:00
* **98** (`MICROBIT_ASSERTION_FAILED`): assertion failed, the condition in an [assert ](/reference/control/assert ) was false.
2016-03-26 00:47:20 +01:00
2016-08-18 16:23:26 +02:00
```sim
basic.showLeds(`
# . . . #
# # . # #
. . . . .
. # # # .
# . . . #
`)
```
2016-03-26 00:47:20 +01:00
2017-09-07 22:42:08 +02:00
## See also
2016-03-26 00:47:20 +01:00
2018-11-13 20:17:42 +01:00
[Support ](https://microbit.org/guide/hardware/error-codes/ ),
2017-08-31 01:53:58 +02:00
[panic ](/reference/control/panic ), [assert ](/reference/control/assert ),