Protoship Build a device

Room-climate display

The room-climate display shows temperature and humidity on a 1.3" OLED and reports temperature, humidity and air pressure to Home Assistant through ESPHome. Protoship builds it from an Arduino Nano ESP32, a BME280 sensor and the OLED in a printed enclosure, powered over USB-C, and delivers it assembled.

CAD render of the room-climate display: grey printed enclosure with the OLED showing 21.4 °C and 48 % rH
CAD render, not a photo.

Your AI agent can order the same device with one quote call, or you open the quote page with these parts.

Parts

PartPart numberRole
Arduino Nano ESP32ABX00083ESP32-S3 core with Wi-Fi, Bluetooth LE and USB-C
Arduino Nano Connector CarrierASX00061Qwiic and Grove plugs, screw holes
BME280, STEMMA QTAdafruit 2652Temperature, humidity, pressure (I²C 0x77)
1.3" OLED 128×64, STEMMA QTAdafruit 938Display (I²C 0x3D)
Qwiic cables, standoffs, M3 screwsAssembly
Printed enclosureSized to the parts

Every part is plugged, not soldered: the Nano ESP32 sits on the carrier, the sensor and the display hang on its Qwiic plug. Power comes from any USB-C charger at 5 V. There is no battery and no mains voltage inside.

Price

The quote lists every line before you reserve. For one device delivered to Germany it looks like this:

Parts68.32 € (example)
Printed enclosure20.00 € (example)
Assembly and function test30.00 € (example)
Shipping within Germany6.00 € (example)
Protoship fee18.65 € (example)
VAT 19 %27.16 € (example)
Total170.13 € (example)

Other EU countries get their own VAT rate and shipping in the quote. The final total is confirmed before you order, and a reservation never obliges you to buy.

Ordering it through your agent

Add the Protoship MCP server once:

claude mcp add --transport http protoship https://mcp.protoship.dev
codex mcp add protoship --url https://mcp.protoship.dev

Then ask for the device in plain words, for example "a small display for the living room that shows temperature and humidity and shows up in Home Assistant". The agent calls catalog, picks bme280 and oled, calls quote with your country and gets back the itemised total, the delivery estimate and the ESPHome config below. reserve holds the device for your email address after you confirm one mail. Agents without MCP, such as ChatGPT in the browser, hand you the link to the quote page instead.

ESPHome starter config

Every quote carries a starter config for exactly these parts. You or your agent flash it over USB-C after delivery and extend it from there.

esphome:
  name: protoship-device
esp32:
  board: arduino_nano_esp32
  framework:
    type: esp-idf
logger:
api:
ota:
  - platform: esphome
wifi:
  ssid: !secret wifi_ssid
  password: !secret wifi_password
i2c:  # Qwiic plug of the carrier
  sda: GPIO11
  scl: GPIO12
sensor:
  - platform: bme280_i2c
    address: 0x77
    temperature:
      name: Temperature
      id: temperature
    humidity:
      name: Humidity
      id: humidity
    pressure:
      name: Pressure
font:
  - file: "gfonts://Roboto"
    id: font_main
    size: 14
display:
  - platform: ssd1306_i2c
    model: "SSD1306 128x64"
    address: 0x3D
    lambda: |-
      it.printf(0, 0, id(font_main), "%.1f °C", id(temperature).state);
      it.printf(0, 22, id(font_main), "%.0f %% rH", id(humidity).state);

Delivery

Germany
Delivered assembled, about 8 to 12 working days after the order (example).
Other EU countries
Reservations are open. Electronics deliver to Germany first and open country by country; the reservation keeps your place.

Variations

CO2 display
Swap the BME280 for an SCD41: CO2, temperature and humidity on the same OLED. Quote it
Climate plus presence
Add a PIR sensor on a Grove plug, so Home Assistant knows when the room is in use. Quote it
Without enclosure
Parts on the carrier with rubber feet, for a shelf or a lab bench. Quote it

All parts are in the catalog. How an agent goes from a wish to a built device step by step is in the guide; short answers are in the FAQ.

Reserve the room-climate display