public NetduinoClient()
        {
            Debug.WriteLine("devMobile.IoT.Netduino.FieldGateway");

            led = GpioController.GetDefault().OpenPin(PinNumber('A', 10));
            led.SetDriveMode(GpioPinDriveMode.Output);

            // Arduino D10->PB10
            int chipSelectPinNumber = PinNumber('B', 10);
            // Arduino D9->PE5
            int resetPinNumber = PinNumber('E', 5);
            // Arduino D2->PA3
            int interruptPinNumber = PinNumber('A', 3);

            sensor = new SiliconLabsSI7005(I2cBusId);

            rfm9XDevice = new Rfm9XDevice(SpiBusId, chipSelectPinNumber, resetPinNumber, interruptPinNumber);
        }
Esempio n. 2
0
        public static void Main()
        {
            try
            {
                Debug.WriteLine("devMobile.SiliconLabsSI7005TestHarness starting");

                // STM32F091RC: PA5 is LED_GREEN
                // nanoff --target ST_NUCLEO64_F091RC --update
                //GpioPin led = GpioController.GetDefault().OpenPin(PinNumber('A', 5));

                // nanoff --target NETDUINO3_WIFI --update
                GpioPin led = GpioController.GetDefault().OpenPin(PinNumber('A', 10));

                // nanoff --target ST_STM32F769I_DISCOVERY --update
                //GpioPin led = GpioController.GetDefault().OpenPin(PinNumber('J', 5));

                led.SetDriveMode(GpioPinDriveMode.Output);

                Debug.WriteLine(I2cDevice.GetDeviceSelector());

                SiliconLabsSI7005 sensor = new SiliconLabsSI7005("I2C1");
                Debug.WriteLine(" while starting");

                while (true)
                {
                    double humidity    = sensor.Humidity();
                    double temperature = sensor.Temperature();

                    Debug.WriteLine($"{DateTime.UtcNow:hh:mm:ss} H:{humidity:f0} % T:{temperature:f1}°");

                    led.Toggle();

                    Thread.Sleep(10000);
                }
            }
            catch (Exception ex)
            {
                Debug.WriteLine(ex.Message);
            }

            Debug.WriteLine("Terminated");
            Thread.Sleep(Timeout.Infinite);
        }