Raspberry Pi Bluetooth LE Controller voor WS2812B (NeoPixels) (9 / 9 stap)

Stap 9: BLE gegevens via programmacode schrijven in Python (Raspberry Pi)

In deze laatste stap schrijven we een script in Python programmatisch gebruik van het programma gatttool . Dat betekent dat we onze script op een manier die ons toelaten zal om gatttool te gebruiken zonder te hoeven herhaaldelijk het invoeren van opdrachten in de terminal zal structuur.

Het script is vrij ongecompliceerd, en kan worden uitgebreid door u verschillende animaties van de RGB LED weergeven. Met de RFduino aangedreven en draait de dezelfde firmware zoals in de vorige stap, we gaan naar onze Raspberry Pi en open een teksteditor (bijvoorbeeld Leafpad).

We zullen het maken van ons script gebruiken. We beginnen met het invoeren van een aantal functiedefinities:

MAC = "DC:E2:F4:0B:3A:03"
CHAR = 0X0011

def initialize():

commands.getoutput '(hciconfig hci0 neer')

commands.getoutput '(hciconfig hci0 omhoog')

afdrukken van commands.getoutput ('hciconfig - a')

commands.getoutput ('killall hcitool')

De initialize() functie zorgt voor het configureren van de BLE-interface. Hoewel we dit reeds in een vorige stap deden, is het niet slecht om ervoor te zorgen dat deze beschikbaar is. Deze functie geeft de uitvoer van de opdracht hciconfig aan de Windowwhere van de Terminal het script is uitgevoerd.

def sendColor(c):

opdracht "sudo gatttool -t willekeurige -b {0}--char-schrijven-req - een {1} - n {2}" = .format (MAC, CHAR, c)

p = subproces. Popen(Command.split(), shell = False)

afdrukken van p.communicate() [0]

De sendColor-functie neemt 3-byte string en verzendt het naar het apparaat met het mac-adres MAC met de karakteristieke greep CHAR. U moet deze waarden te vervangen door uw eigen waarden aan het begin van het script.

Als __name__ == '__main__':
Initialize()

sendColor('FF0000')

time.Sleep(1)

sendColor('00FF00')

time.Sleep(1)

sendColor('0000FF')

time.Sleep(1)

sendColor('000000')

Tot slot, wanneer het script is liep het zal draaien de initialize() functie eenmaal, en kies de kleur tot full-helderheid rood, wacht 1 tweede, volledig-helderheid Green, wacht 1 seconde, full-helderheid blauw, wacht 1 seconde en stuurt u een 'geen kleur' (uit) opdracht. Als alles aanwezig is, indien de RFduino blijkt het volgende gedrag:


Gerelateerde Artikelen

(AT) Kleine controller voor WS2812B

(AT) Kleine controller voor WS2812B

Aangezien de WS2812B binnen mijn Kerstdecoratie besturen met behulp van een arduino een beetje overkill was ik ontwierp een kleinere: waardoor enkele sneeuwvlokken standalone BV als giften (terwijl mijn arduino :-)De MSP430G2452 die ik had bij de han
Bluetooth NES Controller

Bluetooth NES Controller

na het installeren van een emulator voor oude NES games op mijn Android telefoon en Super Matio Bros 3 spelen voor een tijdje, ik besefte al snel hoe vervelend het gebruik van een touchscreen voor een jump'n'run spel kon worden. Het is bovendien niet
Bluetooth SNES Controller for Android

Bluetooth SNES Controller for Android

dus dit mijn eerste is instructable...Een beetje meer dan een jaar geleden was ik bezig met mijn ECE senior design project, dat een bluetooth SNES-controller voor Android was.  Kort na de voltooiing van het project, postte ik een werkende video op Yo
ArduDroid: Een eenvoudige 2-weg Bluetooth gebaseerde Androïde Controller voor Arduino

ArduDroid: Een eenvoudige 2-weg Bluetooth gebaseerde Androïde Controller voor Arduino

UPDATES:19 nov. 2031: advies: de fantastische synergie tussen Arduino & Android.30 oktober 2013: Andruino is nu officieel ARDUDROID en zal binnenkort beschikbaar op Google Play. Deze naamswijziging te vermijden conflict met een andere app op Google P
Hacking SNES Pads maken Arcade Style Controller voor Retropie

Hacking SNES Pads maken Arcade Style Controller voor Retropie

Hi en bedankt voor het nemen van enige tijd te lezen mijn geweldige tutorial. Mijn kleine zusje van verjaardag is op 25 februari, ze draait 29 en ik denk dat ze begon het gevoel een beetje oud omdat ze vroeg me om haar een van mijn Super Nintendos en
Raspberry Pi Alamode CNC Controller

Raspberry Pi Alamode CNC Controller

Dit is mijn eerste poging om een instructable. Ik hoop dat het helpt iemand anders.Schakelaars en lampjes en ventilatoren, oh mijn...Gelieve te lezen via de commentaar voor meer details.Ik kocht een CNC machine enige tijd geleden en ik was nooit tevr
Raspberry Pi foto stand controller

Raspberry Pi foto stand controller

Foto cabines zijn leuk! Ze kunnen goofiness in zowat iedereen inspireren.Voor mijn eerste project met de Raspberry Pi bouwde ik een foto stand voor een feestje. Dit was een groot project voor het leren te prutsen met fotografie en elektronica op de P
Raspberry Pi Bluetooth + Airplay Audio ontvanger combo

Raspberry Pi Bluetooth + Airplay Audio ontvanger combo

Laten we een bluetooth audio-ontvanger waardoor u uw R-Pi aansluiten op uw stereo-installatie en gebruik van uw telefoon als de geluidsbron.Om eerlijk te zijn, is dit niet een uniek project. Veel mensen hebben geprobeerd om een bluetooth-ontvanger we
3D gedrukte Raspberry Pi Tablet en wieg voor VEX praktijk velden

3D gedrukte Raspberry Pi Tablet en wieg voor VEX praktijk velden

Ik ben een middelbare school senior in McLean, VA Ik koos voor het ontwerpen en monteren van een 3D afdruk Raspberry Pi tablet samen met een aangepaste VEX toren bijlage voor gebruik in mijn school robotica-lab.Mijn school is onderdeel van het progra
Het gebruik van een PSP als een game controller voor PC en PS3

Het gebruik van een PSP als een game controller voor PC en PS3

Hebben u ooit ging zitten om te spelen op je PS3 met een vriend en besefte dat u slechts één domeincontroller of was je spelen van een spel op uw PC en wilde dat u had een afzonderlijke controller? Nou nu kunt u in plaats van het kopen van een nieuwe
Bluetooth FM zender voor uw auto/Home

Bluetooth FM zender voor uw auto/Home

Dit is mijn eerste instructable zo ga gemakkelijk op mij. Ik gedacht aan het creëren van dit apparaat een tijdjerug en ben nu mijn idee te delen met u. Hebt u ooit een voertuig zonder BLUETOOTH gebouwd in? Hoe zit het met een zonder zelfs een AUX ing
200kW AC Motor Controller voor elektrische auto

200kW AC Motor Controller voor elektrische auto

Elektrische auto's zijn de toekomst, en beginnen af te nemen vandaag. Ze zijn echter nog steeds vrij duur. Een 3 fase AC-motor is de absolute norm voor auto-bedrijven bij het maken van een elektrisch voertuig. De Tesla Roadster, Nissan Leaf, enz... A
Funtendo - een multistick retro controller voor uw PC

Funtendo - een multistick retro controller voor uw PC

Funtendo is een volledig zelfstandige retro gaming & controller systeem voor uw PC.Het is geschikt voor het gebruik van de originele Nintendo controller, de N64 -controller en de Wii Classic controller op hetzelfde moment!Funtendo is USB powered en b
Timelapse Panning controller voor GoPro camera's

Timelapse Panning controller voor GoPro camera's

dit instructible zal u tonen hoe bouwde ik (en u kunt ook bouwen) een Arduino Timelapse Panning-controller voor GoPro camera's. Er zijn uiteraard enkele verfijningen die kunnen worden aangebracht in het ontwerp, maar in het algemeen ben ik erg blij m