+++ title = "Shell" description = "The firmware's own commands, typed on the device: look at its state, the SD card, the radio and the network with no PC and no cable." weight = 9 [extra] tag = "Shell" +++ The firmware has a set of **commands**, made for working on it from a PC. The Shell runs them **on the device itself**: no computer, no cable, no Wi-Fi. It is the tool for the day something is wrong and you are nowhere near a desk. It can do real damage: `rm` deletes, `reboot` restarts, `debug on` opens the device to the network. It is the same trust as holding the device, and nothing more. ## Using it Type a command and press Enter. `help` lists them all; the [command reference](/dev/debug/commands/) says what each does. A few to start with: | Command | Shows | |---|---| | `info` | The firmware's version, uptime, memory, Wi-Fi, the SD card and both firmware slots | | `wifi status` | The network, the address, and where the DNS and time servers came from | | `ls /notes` | A folder of the SD card, with sizes and dates | | `crash` | The last crash, if there was one | | `update check` | Whether a newer release exists | | `lora status` | What the radio is set to and what it has heard | - Tab **completes** the command's name. If several fit, it lists them. - Fn with up and down brings back **lines you typed before**. - Alt with up and down **scrolls back** through what was printed. - `clear` empties the screen, and `quit` (or Back) leaves. ## What you see The Shell shows **everything the firmware prints** while it is open: the answers to your commands, and whatever the rest of the system says meanwhile (IRC connecting, a packet received). On a ten-line screen that can be a lot. Ctrl + b hides the background: then only what is printed in the **ten seconds after each of your commands** is kept, and `mine` shows in the corner. It is ten seconds and not "the answer" because some commands answer a moment later, from another part of the firmware, and nothing marks their lines as theirs. ## Deleting asks first `rm ` asks before it deletes, here where a slip of the finger is one key away. `rm -f ` does not ask. ## Screenshots ``` screenshot the screen, now screenshot 5 the screen in 5 seconds: time to go to another App ``` The picture is saved as a PNG in `/screenshots` on the SD card, named by date and time, and a Toast says so once it is written (so the Toast is never in the picture). From the Shell, "now" is always a picture of the Shell: use the pause to get to the screen you want. The [Storage App](/guide/storage/) shows the files; to look at them, take the card to a computer. ## What it costs Nothing while it is closed. Open, about 7 KB of memory, given back when you leave: with IRC connected and a Gemini page open, that can be the difference (see [the memory limit](/howto/not-enough-memory/)). ## The keys, as the device lists them What Fn + h shows on this screen. This table is generated from the firmware's own lists, so it is always the current one. {{ keys(scopes=["shell"]) }}