IoT Workshop - Budapest
A mi hackathonunk: Egy kihívásokkal teli IoT projekt tapasztalatai Horváth László, Mágedli Tamás, Takács Péter, Balássy György
4 nap 6 helyszín 78 csapat fakultatív részvétel hardver, szoftver, költségkeret díjazás
Kreatív Feature complete Ambiciózus Hasznos 3 percben demózható A projekt legyen: Kreatív Feature complete Ambiciózus Hasznos 3 percben demózható Király!
A csapatunk Mágedli Tamás Takács Péter Horváth László Balássy György JavaScript Warrior Takács Péter Hardware Guru Horváth László Front-End Ninja Balássy György
Nem is igazi, ha nincs benne... Céljaink forrasztás ! JavaScript ! Nem is igazi, ha nincs benne... böngésző ! C# !
Meet.me: hatékony értekezletek Pontosan kezdődik Mindenki odaér az elejére Véget ér időben Készül feljegyzés
Funkciók 3 perc! Figyelmeztetés a megbeszélés kezdete előtt “Ott leszek / kések” válasz A jelen lévők felismerése több helyszínen Tájékoztatás a későkről Hátralévő idő folyamatos jelzése Figyelmeztetés a megbeszélés vége előtt Feljegyzés diktálása Archiválás, webes visszakereshetőség 3 perc!
Szoftver architektúra Active Directory Meet.me Website Meet.me Service Exchange Server Meet.me Device App SMS Service MySQL
Continuous Deployment A szerveroldal Continuous Deployment
Balsamiq Mockup: értesítés
Balsamiq Mockup: dashboard
Hardver komponensek Hálózat LED (sok LED) Kapcsoló Hangszóró Mikrofon RFID olvasó Bluetooth Tápellátás és mérése Raspberry Pi az egyszer biztos!
Az elegáns megoldás - RPi Shield
Pokoli torony
RPi HAT - Hardware Attached on Top https://github.com/raspberrypi/hats
RPi és Arduino
I2C, egy kis tuninggal
Windows.Devices.I2c névtér I2C: Raspberry oldal string selector = I2cDevice.GetDeviceSelector(); IReadOnlyList<DeviceInformation> i2cDevices = await DeviceInformation.FindAllAsync( selector ); int ARDUINO_ADDRESS = 0x42; var settings = new I2cConnectionSettings( ARDUINO_ADDRESS ); I2cDevice arduino = await I2cDevice.FromIdAsync( i2cDevices[ 0 ].Id, settings ); byte[] MY_COMMAND = new byte[] { ... }; arduino.Write( MY_COMMAND ); byte[] response = new byte[ 6 ]; arduino.Read( response ); Windows.Devices.I2c névtér
I2C: Arduino oldal Wire library #include <Wire.h> void setup() { Wire.begin(66); // join i2c bus with address 0x42 Wire.onRequest(requestEvent); // register event } void requestEvent() Wire.write("hello "); // respond with message of 6 bytes Wire library
A kis Arduino és sok LED esete
Windows IoT Core “v1”
WiFi Ma: Official Raspberry Pi WiFi dongle TP-Link TL-WN725N Realtek 8191 Realtek 8192 Hardware Compatibility List: https://ms-iot.github.io/content/en-US/win10/SupportedInterfaces.htm Raspberry Pi 3-ban már benne van!
Bluetooth Kétféle típus: CSR Mini USB BT v4.0 adapter Orico BTA-403 Mini Bluetooth 4.0 USB Dongle Raspberry Pi 3-ban már benne van!
BT LE API var watcher = new BluetoothLEAdvertisementWatcher { SignalStrengthFilter = new BluetoothSignalStrengthFilter { InRangeThresholdInDBm = -60, SamplingInterval = TimeSpan.FromSeconds(30) } }; watcher.Received += this.OnReceived; watcher.Start(); Megbízható?
Bluetooth Beacon Interactor app
Melyik legyen? Headed Headless UWP UI használható Csak egy UI alkalmazás Sok háttérben futó alkalmazás Headless UWP UI nem használható Nem lehet UI alkalmazás Sok háttérben futó alkalmazás
A hardveres reset gombnál nincs jobb... Soft-reset Alkalmazás logika Alkalmazás Operációs rendszer A hardveres reset gombnál nincs jobb...
Hang: Text to Speech var synthesizer = new SpeechSynthesizer(); synthesizer.Voice = SpeechSynthesizer.AllVoices.First( v => v.Gender == VoiceGender.Female ); var stream = synthesizer.SynthesizeTextToStreamAsync( text ); mediaElement.SetSource( stream, stream.ContentType ); mediaElement.Play();
Hang: audio kimenet Fülhallgatóval oké! Hangszóróval ?
Hang: Speech to Text var recognizer = new SpeechRecognizer(); await recognizer.CompileConstraintsAsync(); var result = await recognizer.RecognizeAsync(); return result.Text;
Hivatalosan nem támogatott Hang: audio bemenet Logitech C910 Hivatalosan nem támogatott
Sabrent USB External Stereo Sound Adapter, Model AU-EMAC1 Hang: audio bemenet Sabrent USB External Stereo Sound Adapter, Model AU-EMAC1 C-Media CM108 chipset
Raspberry-ről vezérelve Hang: Privacy Raspberry-ről vezérelve
A menő doboz
Kell egy jó terv!
Under construction...
Összefoglalás
További információk Takács Péter Balássy György Windows IoT Peter.Takacs3@logmein.com http://www.mirrorbox.hu Balássy György balassy.gyorgy@outlook.com http://balassygyorgy.wordpress.com Windows IoT http://www.windowsondevices.com/ Windows IoT Core Interaction Pack https://github.com/balassy/iot-interaction-pack Arduino Hardware Collection & sample codes for I2C shield https://github.com/takacs525