verlichting volière

Lijkt me niet zo heel moeilijk.
Maar ik vraag me af waarom je dat onderscheid wil maken.

In jouw functie bluetooth kun je meer doen dan kijken of er iets binnenkomt, en wat er dan binnenkomt kopiëren naar een variabele.
Je kunt ook een variabele bewerken die bijhoudt of er iets binnenkwam of niet.
En natuurlijk kun je de variabele 'keuze' vullen met een inhoud die onmogelijk uit de bluetooth verbinding kan komen.
Als dat dan in 'keuze' zit, dan is er dus niets binnengekomen.
Wanneer er iets anders inzit, dan is er wel at binnengekomen en kun je de binnengekomen data gaan verwerken.
Uiteraard ga je na het verwerken, 'keuze' weer vullen met de onmogelijke inhoud.

Overigens raad ik je aan je eigen vragen eens kritisch te lezen en te beantwoorden (dat raad ik iedereen aan, schrijf je vragen op en verdeel ze onder in steeds kleinere deelvragen, maakt ze eenvoudig te beantwoorden).
Want wat hier boven staat, is niet veel meer dan een reflectie van de laatste helft van je laatste zin in je vraag hierboven.

Stukje code:

void bluetooth() {

  if (Serial.available() > 0) {
    keuze = Serial.read();
    BT_gekozen = true;
  }
}

Uiteraard maak je dan de de boolean variabele BT_gekozen aan zodat ie globaal (in alle functies van je sketch) beschikbaar is.
Dat kan wel anders maar is een klein beetje ingewikkelder.