Stap 5: Imp Firmware, expediteur en Blink-up
Zodra de BlinkUp voltooid is, verschijnt uw imp op uw IDE onder nieuwe apparaten. Als u een elektrische Imp voordat niet hebt gebruikt, stel ik dat u eerst proberen de Hello World voorbeeld op de site van de elektrische Imp te krijgen de knie van het GMB. Er is ook een geweldige gids voor het GMB op instructables geschreven door
De firmware voor het GMB is gekoppeld aan deze stap als ImpoweredImp.nut
De code voor de expediteur is gekoppeld als ImpoweredAgent.nut
Firmware en Agent code interactie
Uw Agent heeft een specifieke URL. Wanneer een HTTP-bericht wordt verzonden naar deze URL, uw Agent-code die wordt uitgevoerd in de wolk Imp controleert de geldigheid van het verzoek door het vergelijken van de binnenkomende API-sleutel (een sleutel die je make-up - meer bits maken het moeilijker te raden) met de API-sleutel opgeslagen in het geheugen van de Agent (het idee van de API-sleutel van http://forums.electricimp.com/discussion/comment/8281#Comment_8281). Als wedstrijd van de sleutel, het bericht wordt gecontroleerd om te bepalen als een buttonPress gebeurtenis of Status request wordt doorgegeven in de HTTP-aanvraagpakket.
Als de HTTP-aanvraag voor de status, retourneert de Agent code de status On/Off van de AC outlets. De status wordt asynchroon door de Imp firmware bijgewerkt wanneer de output pinnen status wijzigen.
Als een buttonPress-gebeurtenis wordt doorgegeven in de HTTP-aanvraag, deze gebeurtenis wordt doorgegeven aan het GMB firmware via de elektrische imp beveiligde communicatie-kanaal tussen het GMB en de server gebaseerde Agent. Het Imp "ontvangt" dit event door middel van de agent.on ("buttonPressed", (waarde) functie. Telkens wanneer een knop persevenement wordt ontvangen door het GMB, de toestand van de uitgang van Pin1 en 7 is een knevel gevoorzid die de relais in- of uitschakelen afhankelijk van de vorige toestand verandert. De variabele status wordt teruggestuurd naar de agent via het communicatiekanaal Agent-Imp en wordt ontvangen door de Agent in de device.on functie.