AI agents & screen readers: for a machine-readable, text-only catalogue, start at /llms.txt. Products are available as Markdown (/products.md, /products/{handle}.md) and JSON (/products.json, /products/{handle}.json).
Store

The panel under the two editors has four tabs: Monitor, Plot, Data and App. The first three are all fed by the same stream of text coming back from your board, so once the Serial Monitor is connected, the other two come along for free.

Serial Monitor

Open it and you'll see whatever your sketch prints with Serial.println(). The baud dropdown runs from 300 up to 250000 and defaults to 9600. It has to match the number in your sketch's Serial.begin(...), and if it doesn't you'll get a screenful of gibberish rather than an error. That's the first thing to check when the output looks like mojibake.

Change the baud while the monitor is open and it reconnects at the new speed on its own.

You can talk back, too. Type in the box at the bottom and press Enter, and what you sent is echoed in grey with a » in front so you can tell it apart from the board's replies. The dropdown next to it decides what gets tacked onto the end of each line: nothing, a newline, a carriage return, or both. Both is the default and suits most sketches.

Uploading with the monitor open is fine. We close it for the upload and reopen it about half a second after the board reboots.

Plot

The Plot tab graphs numbers as they arrive. It reads the same stream as the monitor, so it stays empty until the monitor is connected. If the plot is blank, that's almost always why.

Three print styles work:

Serial.println("temp:25.3,hum:60");   // named traces
Serial.println("1.5 2.7 3");          // becomes ch1, ch2, ch3
Serial.println("tick 5");             // numbers pulled out: ch1 = 5

Named traces are worth the extra typing, because the legend then reads "temp" and "hum" instead of "ch1" and "ch2". For the named form, every comma-separated chunk has to be name:number. One stray chunk and the whole line drops back to the numeric reading.

Lines with no numbers in them aren't plotted at all, which means your sketch can print "Sensor ready" and stream readings at the same time without spiking the graph.

Controls are a time window (5s, 10s, 30s, 1m or All), auto-scale Y, pause, and clear. Click a name in the legend to hide that trace. Hover anywhere on the plot for a crosshair and a readout of every trace at that moment.

The plot keeps the most recent 10,000 points per trace. Older ones scroll off for good, so if you're running a long experiment, use the Data tab.

Data

The Data tab records every numeric line to a small database inside your browser. Click ● Start logging, then open the Serial Monitor. Lines without numbers aren't recorded.

The table on screen shows the newest 500 rows, but the counter above it shows the real total, which can be far larger. CSV and Excel both download everything you've logged, not just the rows you can see, with an index, a local timestamp and full-precision values.

Two things to know. The Excel download is an HTML table with an .xls extension: Excel and Numbers open it happily, but it isn't a real .xlsx workbook. And the log lives in this browser only. It's never uploaded, and it isn't part of a saved project, so export it before you clear your browser data or move to another machine.

The log does survive a page reload. At 200,000 rows you'll get a one-off nudge to export and clear it.

Making the panel bigger

Drag the bar above the panel to make it taller. The Plot, Data and App tabs each have a maximise button that hides the editors so the panel fills the window, which is the way to go when you're watching a graph rather than writing code. Press it again to bring the editors back.

Maddy, co-founder of Little Bird

Need help? We're here for you!

Hi, I'm Maddy. My team and I are ready to help with your order or any questions.