Tap&Select
Pitch

Problem → Solution → Tech → Conclusion

Making passenger demand visible, so buses move when people are ready.

Emmanuel · Samira · Kevin · Kenny · Hassan · CMU-Africa Bridge Program 2026

01The problem: an invisible queue

How long did you wait for a bus this week? A Kigali commuter leaves work at 6 PM and reaches home after 9 PM, and Rwanda’s transport regulator has said the average wait can reach one hour.[1]

Buses wait for passengers while passengers wait for buses, because neither side can see the other. Off-peak scheduled buses left with only 10–15 passengers,[2] while at peak and holiday times travellers waited several hours.[4] Furthermore, Kigali needed about 500 buses but had 229 in 2022.[1] Nobody measures who is waiting, where, or for which destination.

02Justification

Topic sentence

Kigali’s buses cannot see where passengers are waiting, so they often run either too empty or too full.

Development

In December 2025 the city launched “Generation 2”, with scheduled departures and real-time bus tracking.[3] However, a schedule is planned in advance, while demand changes by hour, stop and destination.

Example / evidence

During the scheduled-service pilot, off-peak buses left with only 10–15 passengers, and commuters asked for schedules adjusted to demand.[2] In contrast, during the 2025 holiday peak, demand exceeded bus capacity and travellers waited several hours.[4] Furthermore, research in Lagos found that demand-based scheduling could cut average waiting time by up to 80% in simulation.[6]

Summary

Therefore, Kigali needs more than extra buses; it needs to know who is waiting, so every bus leaves for a reason.

03The solution

Every bus stop becomes a sensor. Every bus leaves for a reason.

  1. 01

    Sense

    The kiosk counts who is waiting and where they are going.

  2. 02

    Decide

    HQ gets a live “release a bus” recommendation and approves it.

  3. 03

    Inform

    Passengers get a fair queue number and a live ETA.

Tap&Select works with Generation 2: schedules plus real demand.[3]

Passengers

A fair place in line and a live ETA, with no smartphone needed. They choose their stop hands-free, by voice or a swipe in the air, and hear their ticket number read out loud.

Operators

The aim: fuller buses, fewer empty off-peak trips, less fuel wasted.

City and RURA

Live demand per stop and destination, to plan routes and fleets with data instead of guesswork. Public transport is about 20% of daily trips, and the city aims to reach 50%.[5]

04How it works

  1. 1Tap card

    Tap card

    Tap&Go; simulated reader in the prototype

  2. 2Remera!

    Say the stop or swipe

    Voice or a swipe over the sensor

  3. 3mic · sensor · model, all on the boardSELECT,REM

    Arduino recognises it

    On-device, no internet

  4. 4Remera?ConfirmChangeRemeraR2-0143rd in line

    Confirm, get a number

    Tap Confirm on screen; ticket e.g. R2-014

  5. 5StopR2about 6 min

    HQ releases the bus

    Kiosk shows the live ETA

What it does, strongest first
FeatureStatus
1Live demand → dispatch loopTickets reach HQ within seconds; rules recommend a release; a person approvesBuses leave for a reason; HQ stays in controlReal
2Fair first-come queueNumbered tickets, one per card; the oldest board first, up to free seatsBoarding follows ticket order, and places can’t be heldReal
3Live bus trackingDriver's phone GPS: stop-by-stop progress, arrival within 50 mPassengers see where their bus isReal
4Swipe to choose a stopSensor direction engine, no ML; 85–95% per direction in 20-try testsChoose a stop without touching the screenReal, rule-based
5On-device voice keywordsEdge Impulse model on the Arduino; accuracy not yet measuredRecognition needs no internet; audio stays on the boardReal
6Accounts and rolesFive roles; rights enforced in the databaseEach person sees and does only their partReal
7Access for everyoneEnglish + Kinyarwanda (draft), spoken numbers, tap-a-stop fallback, /liveLess reading needed, and no smartphoneReal
8Seats and why people leaveSeats counted from tickets; cancel reasons so far from our tests onlyShows full buses and why people give upEstimated

Voice keywords

Edge Impulse model · PDM microphone, 16 kHz, 1 s windows

Status
Trained, in the firmware
Test accuracy
Pending
Voice labels
LabelSelects
remeraR2Remera
nyabugogoR1Nyabugogo
kimironkoR3Kimironko
downtownR4Downtown
noiseNothing (rejected)
unknownNothing (rejected)

Selects when one stop scores at least 0.80 twice in a row (one result every 250 ms). Exported 2026-10-28.

Swipes over the sensor

APDS9960 built-in direction engine (no ML) · read on its own thread

Tap model (planned)
Rule-based (model pending)
Swipe directions
Over the sensorSelects
Swipe upR1Nyabugogo
Swipe leftR2Remera
Swipe downR3Kimironko
Swipe rightR4Downtown

A hand passing over the sensor within about 10 cm is read as left, right, up or down. The earlier tap-count rules are still in the firmware as a fallback build, and the data logger for a trained Edge Impulse tap model is ready.

Real vs estimated vs simulated in this prototype

Real
  • Voice keyword model running on the Arduino
  • Swipe detection by the sensor (rule-based, no ML)
  • Queue, dispatch rules, dashboard and live updates
  • Phone GPS tracking and arrival by GPS
  • Sign-in, roles and the public live board
Estimated
  • ETA: remaining route distance ÷ an average 18 km/h, no traffic data
  • Seats on board: counted from tickets, corrected by the driver
  • Release thresholds (70% load, 15 min): our guesses, not yet tuned
Simulated
  • Card tap: demo cards on screen
  • Passengers at other stops: a simulator script
  • “Simulate drive” for indoor demos, and one-click demo logins
  • All queue and cancel data so far comes from our own tests
Not built
  • Real RFID / Tap&Go reader and payment
  • Hands-free confirm and cancel (on-screen taps today)
  • A trained tap-gesture model
  • Voice accuracy on new voices and Kinyarwanda accents
  • Weatherproof LTE + solar kiosk, and a field pilot

05Roadmap

  1. Today

    Prototype

    One kiosk, four destinations, live dashboard

  2. Next

    Pilot

    2–3 stops on one route

  3. Later

    City scale

    Every stop a demand sensor

Improvements we need, most important first

  1. 1Grow the voice model: Test on unseen voices; add accents, and “yes / no” for hands-free confirm
  2. 2One-week pilot at a real stop: Real waits and noise, to tune the 70% / 15 min rules
  3. 3Real card reader: RC522 first, then Tap&Go integration instead of demo cards
  4. 4Exact seat counts: Validator taps or door counters instead of ticket counts
  5. 5Traffic-aware ETA: Operator GPS (AVL) feeds and live traffic, not a fixed speed
  6. 6Street-ready kiosk: Weatherproof case, LTE, solar; native review of the Kinyarwanda

06Conclusion

Problem
Buses and passengers can’t see each other, so waits are long and buses run empty or overcrowded.
Solution
Tap&Select makes waiting demand visible, so buses leave when and where people are ready.
Tech
A fair digital queue, live dispatch with a human in the loop, GPS tracking, and on-device voice AI on an Arduino.

Today, people wait for buses. Tomorrow, buses will know who is waiting.

07References

  1. [1] W. Buningwire. (2022, Aug. 10). Kigali struggling to bridge gap in public transport [Online]. Available: https://www.ktpress.rw/2022/08/kigali-struggling-to-bridge-gap-in-public-transport/
  2. [2] The New Times. (2025, Jan. 21). Rwanda: What commuters make of Kigali's scheduled public transport system [Online]. Available: https://allafrica.com/stories/202501210080.html
  3. [3] A. Ishimwe. (2025, Dec. 9). Rwanda: Kigali commuters hail new public transport model [Online]. Available: https://allafrica.com/stories/202512090228.html
  4. [4] AllAfrica. (2025, Dec. 24). Rwanda: Christmas travel surge causes long delays at Kigali bus stations [Online]. Available: https://allafrica.com/stories/202512240312.html
  5. [5] The New Times. (2026, Jun. 29). Rwanda: Kigali plans to double public transport use in 10 years [Online]. Available: https://allafrica.com/stories/202606290083.html
  6. [6] O. Paul and P. McSharry. (2021, May 25). Public transportation demand analysis: A case study of metropolitan Lagos [Online]. Available: https://arxiv.org/abs/2105.11816