Charter 18 · read · programme assignment

Signal Tower

Long-Distance Status Display

Encode one important garden quantity so it can be read at a glance.

Difficulty
★☆☆
Prefix
st
Zone
entrance
Type
tower
Device
st-01
Build time
6 hours

Mission

Build this

A seven-segment or 74HC595 LED display plus mechanical semaphore.

One kit, one team repository.

Borrowed parts are labelled below and have a fallback. The assigned device ID is fixed; sensing and behaviour decisions remain yours.

Bill of materials

Parts

SourcePartFallback
● kitFour-digit or one-digit seven-segment display
● kit74HC595 and LEDs
● kitSG90 servo

Disconnect USB before rewiring. Motors, the relay, and the servo need appropriate power and a shared ground. Never drive an actuator from the ESP32 3V3 pin.

Assembly

Build in evidence-producing steps

  1. Prove the connection first. Flash the unmodified first-message example with this charter’s zone, device type, and device ID.

    done when: st-01 is alive on the developer view.

  2. Bench-test one input. Read the sensor or control in Serial Monitor before publishing or moving an actuator.

    done when: repeated physical conditions produce repeatable raw readings.

  3. Publish one registered measurement. Use the exact measurement and unit below.

    done when: the reading appears without a reject.

  4. Add the physical response. Keep spine.loop() running and avoid blocking delays.

    done when: repeated movement does not interrupt publishing or reset the board.

  5. Run the investigation. Collect the planned trials before tuning the final logic.

    done when: the build log contains observations, method, and a limitation.

Contract

Your topics

TopicUnitSuggested interval
garden/entrance/tower/st-01/statusenumon change

Read another team

garden/entrance/counter/gk-01/count

Physical behaviour

Alive

Move a semaphore to a small number of clearly labelled states.

Your call: Choose the subscribed quantity, encoding, and viewing distance.

Engineering evidence

Measure recognition accuracy and reading time at increasing distances.

  1. Create a fixed set of displayed states.
  2. Test at three measured distances with five viewers.
  3. Report confusion and revise ambiguous states.

If you are fast: Use the shift register to add a redundant color or bar encoding.

Acceptance

Ready when all six are true

  • The registered device is alive and publishing its required topics.
  • The reject feed is clear after the final firmware starts.
  • The device reads at least one declared cross-team topic.
  • A physical output responds to real data without blocking MQTT.
  • The build log contains method, evidence, uncertainty, and a known limitation.
  • The enclosure exposes no unsafe wiring and the device ID can be scanned.

Backbone now

Live status

Updates from the same public event stream

Checking st-01…