#BLUEHASH
← All tutorials
Beginner10 min

Build your first flow: OLED menu with 3 options

menuoledgpio

What you will build

A device that boots showing a menu with three options: "Blink LED", "Hello World", and "System Info". Use the Up/Down buttons to navigate and OK to select. BACK returns to the menu from any option.

1. Open the editor

Open Chrome and go to http://localhost:5173 (with the editor running). You should see the empty canvas with the node palette on the left.

2. Add a Start node

Drag a "Start" node from the Flow Control section of the palette onto the canvas. This is the entry point — it fires when the device boots.

3. Add a Menu node

Drag a "Menu" node onto the canvas to the right of Start. Click it to select it. In the right panel, set the Title to "MAIN MENU" and add three items: "Blink LED", "Hello World", "System Info". You will see the OLED preview update in real time showing exactly what the menu looks like on the 128×64 screen.

Title: MAIN MENU Items: Blink LED Hello World System Info

4. Connect Start → Menu

Drag from the "boot" output port on the Start node to the "show" input port on the Menu node. A wire appears. This means: when the device boots, show the menu.

5. Add nodes for each option

For "Blink LED": drag a Digital Write node. Set pin to 2 (the onboard LED), state to HIGH. For "Hello World": drag a Show Text node. Set text to "Hello BLUEHASH!". For "System Info": drag a Log node. Set message to "System OK".

// Digital Write config pin: 2 state: HIGH

6. Connect the menu options

Connect the "Blink LED" output port of the Menu node to the "trigger" input of the Digital Write node. Connect "Hello World" to Show Text. Connect "System Info" to Log. Each connection routes to the right action when the user selects that option.

7. Compile and flash

Plug in your ESP32-S3 via USB. Click the "Flash" tab in the right panel. Click "Connect device" and pick your COM port. Click "Flash to device". Watch the progress bar: generating C++ → compiling → flashing → done. The device reboots and shows your menu.

Result

Your device now shows "MAIN MENU" on boot, lets you navigate with Up/Down, and performs the correct action when you press OK. Press Back to deselect. This is the foundation of every BLUEHASH flow.

Next steps

Completed this tutorial? Try connecting your flow to WiFi, adding MQTT, or browsing the community library for drop-in programs.

More tutorialsBrowse library