├── .editorconfig
├── .gitattributes
├── .github
├── PULL_REQUEST_TEMPLATE.md
├── stale.yml
└── workflows
│ └── update-dependencies.yml
├── .gitignore
├── .pipeline-assets
└── build-solutions.ps1
├── Archive
├── GpioChangeCounter
│ ├── GpioChangeCounter.sln
│ ├── GpioChangeCounter
│ │ ├── GpioChangeCounter.nfproj
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── packages.config
│ └── README.md
├── README.md
├── Storage
│ ├── AccessRemovableDevices
│ │ ├── AccessRemovableDevices.nfproj
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── packages.config
│ ├── FileAccess
│ │ ├── FileAccess.nfproj
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Scenario0_MountDevice.cs
│ │ ├── Scenario1_CreateAFolderInStorage.cs
│ │ ├── Scenario2_CreateAFileInStorage.cs
│ │ ├── Scenario3_WriteAndReadTextInAFile.cs
│ │ ├── Scenario5_CreateMultiLevelFolders.cs
│ │ ├── Scenario6_CreateFilesInFolder.cs
│ │ ├── Scenario7_RenameFolder.cs
│ │ ├── Scenario8_DeleteFIlesAndFolders.cs
│ │ ├── Scenario9_RenameFile.cs
│ │ ├── ScenarioA_UnmountDevice.cs
│ │ └── packages.config
│ ├── MountDevices
│ │ ├── MountDevices.nfproj
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── packages.config
│ ├── README.md
│ ├── RemovableDeviceEvent
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── RemovableDeviceEvent.nfproj
│ │ └── packages.config
│ ├── Storage.sln
│ └── category.txt
├── Windows.Devices.I2c
│ ├── Display
│ │ ├── I2C.nfproj
│ │ ├── I2C.sln
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── README.md
│ │ ├── STMPE811.Driver
│ │ │ └── STMPE811.cs
│ │ ├── packages.config
│ │ └── switcher.json
│ ├── GPS
│ │ ├── README.md
│ │ ├── nanoframework.Samples.GPS.sln
│ │ └── nanoframework.Samples.GPS
│ │ │ ├── Drivers
│ │ │ └── GPS
│ │ │ │ └── IesShieldGps.cs
│ │ │ ├── Program.cs
│ │ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ │ ├── nanoframework.Samples.GPS.nfproj
│ │ │ └── packages.config
│ └── README.md
├── Windows.Devices.Pwm
│ ├── PWM.nfproj
│ ├── PWM.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ └── packages.config
├── Windows.Devices.SerialCommunication
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Scenario1_ConfigureDevice.cs
│ ├── Scenario2_StreamWrite.cs
│ ├── Scenario3_StreamRead.cs
│ ├── Scenario4_DataReceivedEvent.cs
│ ├── SerialCommunication.nfproj
│ ├── SerialCommunication.sln
│ └── packages.config
└── Windows.Devices.Spi
│ ├── L3GD20.Driver
│ └── L3GD20.cs
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── README.md
│ ├── SPI.nfproj
│ ├── SPI.sln
│ └── packages.config
├── CODE_OF_CONDUCT.md
├── LICENSE.md
├── NuGet.Config
├── README.md
├── README.zh-cn.md
├── azure-pipelines.yml
├── device-listing
├── Category.cs
├── Configuration.cs
├── Configuration.json
├── Program.cs
├── README.md
├── SampleInfo.cs
├── device-listing.csproj
└── device-listing.sln
└── samples
├── 1-Wire
├── OneWire.TestApp.nfproj
├── OneWire.TestApp.sln
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── category.txt
└── packages.config
├── ADC
├── ADC.nfproj
├── ADC.sln
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── category.txt
└── packages.config
├── AMQP
├── Amqp.Samples.sln
├── Azure-IoT-Hub
│ ├── Azure-IoT-Hub.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Azure-ServiceBus-Sender
│ ├── Azure-ServiceBus-Sender.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Sender.nfproj
│ ├── category.txt
│ └── packages.config
├── README.md
├── azure-iot-explorer-sas.png
└── category.txt
├── AzureMQTTTwinsBMP280Sleep
├── AzureMQTT.sln
├── AzureMQTT
│ ├── AzureMQTT.nfproj
│ ├── HMACSHA256.cs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Resource.Designer.cs
│ ├── Resource.resx
│ ├── Resource
│ │ └── AzureRootCerts.pem
│ ├── StringExtensions.cs
│ ├── TwinProperties.cs
│ └── packages.config
├── README.md
└── category.txt
├── AzureSDK
├── AzureEdgeOta
│ ├── AzureEdgeOTA.sln
│ ├── AzureEdgeOTAEngine
│ │ ├── AzureEdgeOTAEngine.nfproj
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Resource.Designer.cs
│ │ ├── Resource.resx
│ │ ├── Resource
│ │ │ ├── AzureRootCerts.pem
│ │ │ └── DigiCertGlobalRootCA.cer
│ │ ├── Secrets.cs
│ │ └── packages.config
│ ├── CountMeasurement
│ │ ├── CountMeasurement.cs
│ │ ├── CountMeasurement.nfproj
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── packages.config
│ ├── FindPeFiles
│ │ ├── CommandOptions.cs
│ │ ├── FindPeFiles.csproj
│ │ └── Program.cs
│ ├── OtaInterface
│ │ ├── FileSettings.cs
│ │ ├── OtaInterface.projitems
│ │ └── OtaInterface.shproj
│ ├── README.md
│ ├── architecture.png
│ └── category.txt
├── AzureIoTPnP
│ ├── AzureIoTPnP.nfproj
│ ├── AzureIoTPnP.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Resource.Designer.cs
│ ├── Resource.resx
│ ├── Resource
│ │ └── AzureRootCerts.pem
│ ├── Secrets.cs
│ ├── TemperatureReporting.cs
│ ├── category.txt
│ ├── command.png
│ ├── packages.config
│ ├── pnp-config.png
│ ├── reported-properties.png
│ ├── telemetry.png
│ └── writable-property.png
├── AzureSDK
│ ├── AzureIoTExample.nfproj
│ ├── AzureIoTExample.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Resource.Designer.cs
│ ├── Resource.resx
│ ├── Resource
│ │ └── AzureRootCerts.pem
│ ├── category.txt
│ ├── cloud-to-device-result.png
│ ├── cloud-to-device.png
│ ├── direct-method-exception.png
│ ├── method-callback-add.png
│ └── packages.config
├── AzureSDKBasic
│ ├── AzureSDKBasic.nfproj
│ ├── AzureSDKBasic.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Resource.Designer.cs
│ ├── Resource.resx
│ ├── Resource
│ │ └── AzureRootCerts.pem
│ ├── category.txt
│ ├── output.png
│ └── packages.config
├── AzureSDKBasicFullyManaged
│ ├── AzureSDKBasic.nfproj
│ ├── AzureSDKBasic.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Resource.Designer.cs
│ ├── Resource.resx
│ ├── Resources
│ │ └── DigiCertGlobalRootG2.der
│ ├── category.txt
│ ├── output.png
│ └── packages.config
├── AzureSDKSensorCertificate
│ ├── NFSensorAzureIoTHub.sln
│ ├── NFSensorAzureIoTHub
│ │ ├── NFSensorAzureIoTHub.nfproj
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── packages.config
│ ├── Readme.md
│ ├── category.txt
│ ├── create-certificate.md
│ └── images
│ │ ├── M5Stack-Azure-flow.png
│ │ ├── M5Stack-BMP280_bb.png
│ │ ├── M5Stack-BMP280_integration.png
│ │ ├── certificate-iot-hub-ca-csr.png
│ │ ├── certificate-iot-hub-ca.png
│ │ ├── certificate-iot-hub-csr.png
│ │ ├── create-a-device-ca-certificate.png
│ │ ├── iot-hub-create-iot-device-1.png
│ │ ├── iot-hub-create-iot-device-2.png
│ │ ├── iot-hub-message-routing-1.png
│ │ ├── iot-hub-message-routing-2.png
│ │ └── iot-hub-message-routing-3.png
├── AzureSDKSleepBMP280
│ ├── AzureSDKSleepBMP280.nfproj
│ ├── AzureSDKSleepBMP280.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Resource.Designer.cs
│ ├── Resource.resx
│ ├── Resource
│ │ └── AzureRootCerts.pem
│ ├── category.txt
│ └── packages.config
├── DpsSampleApp
│ ├── DpsSampleApp.nfproj
│ ├── DpsSampleApp.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Resource.Designer.cs
│ ├── Resource.resx
│ ├── Resource
│ │ └── AzureRootCerts.pem
│ ├── category.txt
│ └── packages.config
├── README.md
└── category.txt
├── Beginner
├── AnalogRainSensor
│ ├── 7-AnalogRainSensor.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Beginner.sln
├── BlinkLed
│ ├── 1-BlinkLed.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Button
│ ├── 2-Button.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── ButtonNuget
│ ├── 3-ButtonNuget.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Buzzer
│ ├── 5-Buzzer.nfproj
│ ├── Enums.cs
│ ├── ListMelodyElement.cs
│ ├── MelodyElement.cs
│ ├── MelodyPlayer.cs
│ ├── NoteElement.cs
│ ├── PauseElement.cs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ └── packages.config
├── Docs
│ ├── AM2320.jpg
│ ├── ESP32-DEVKITC.jpg
│ ├── add_nuget_gpio.png
│ ├── blinky.gif
│ ├── button.gif
│ ├── button.jpg
│ ├── buzzer.png
│ ├── debug.png
│ ├── device_selected.png
│ ├── led.jpg
│ ├── moisture-sensor.png
│ ├── nanoff_flashed.png
│ ├── nanoff_listports.png
│ ├── pwm-led.gif
│ ├── resistor.jpg
│ ├── schema-button.png
│ ├── schema_am2320.png
│ ├── servo.gif
│ ├── servo.jpg
│ └── soil_humidity_sensor_capacitive.jpg
├── PwmLed
│ ├── 4-PwmLed.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── README.md
├── ServoMotor
│ ├── 6-ServoMotor.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── TempHumI2c
│ ├── 8-TempHumI2c.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
└── category.txt
├── Blinky
├── Blinky.sln
├── Blinky
│ ├── Blinky.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── Properties
│ └── AssemblyInfo.cs
├── README.md
└── category.txt
├── Bluetooth
├── BluetoothBeacon
│ ├── BluetoothBeacon.nfproj
│ ├── BluetoothBeacon.sln
│ ├── IBeacon.cs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── BluetoothLESample1
│ ├── BluetoothLESample1.nfproj
│ ├── BluetoothLESample1.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── BluetoothLESample2
│ ├── BluetoothLESample2.nfproj
│ ├── BluetoothLESample2.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── BluetoothLESample3
│ ├── BluetoothLESample3.nfproj
│ ├── BluetoothLESample3.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Services
│ │ ├── BatteryService.cs
│ │ ├── CurrentTimeService.cs
│ │ ├── DeviceInformationService.cs
│ │ └── EnvironmentalSensorService.cs
│ ├── Services2
│ │ ├── BatteryService.cs
│ │ ├── CurrentTimeService.cs
│ │ ├── DeviceInformationService.cs
│ │ └── EnvironmentalSensorService.cs
│ ├── category.txt
│ └── packages.config
├── BluetoothLESerial
│ ├── BluetoothLESerial.nfproj
│ ├── BluetoothLESerial.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── BroadcastValues
│ ├── BroadcastValues.nfproj
│ ├── BroadcastValues.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Central1
│ ├── Central1.nfproj
│ ├── Central1.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Central2
│ ├── Central2.nfproj
│ ├── Central2.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Central3
│ ├── Central3.nfproj
│ ├── Central3.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── ImprovWifi
│ ├── Improv.cs
│ ├── ImprovWifi.nfproj
│ ├── ImprovWifi.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── README.md
├── WatcherFilters
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── WatcherFilters.nfproj
│ ├── WatcherFilters.sln
│ ├── category.txt
│ └── packages.config
└── category.txt
├── CAN
├── Can.TestApp.sln
├── Can.TestApp
│ ├── Can.TestApp.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── README.md
└── category.txt
├── Collections
├── Collections.sln
├── Collections
│ ├── Collections.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── README.md
└── category.txt
├── Converter.Base64
├── Base64Test.sln
├── Base64Test
│ ├── Base64Test.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── Base64TestingShared
│ ├── Base64TestingShared.projitems
│ ├── Base64TestingShared.shproj
│ └── TestCode.cs
├── DesktopBase64Testing
│ ├── DesktopBase64Testing.csproj
│ ├── Program.cs
│ └── Properties
│ │ └── AssemblyInfo.cs
├── README.Desktop.md
├── README.md
└── category.txt
├── DAC
├── DacSample.sln
├── DacSample
│ ├── DacSample.nfproj
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Scenario1ConfigureDac.cs
│ ├── Scenario2TriangleWave.cs
│ ├── Scenario3SquareWave.cs
│ ├── Scenario4SineWave.cs
│ └── packages.config
├── README.md
├── category.txt
└── images
│ ├── sine-wave.jpg
│ ├── square-wave.jpg
│ └── triangle-wave.jpg
├── DebugGC.Test
├── DebugGC.Test.nfproj
├── DebugGC.Test.sln
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── category.txt
└── packages.config
├── DependencyInjection
├── README.md
├── Simple
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Simple.nfproj
│ ├── Simple.sln
│ └── packages.config
├── SlowBlink
│ ├── Application.cs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Services
│ │ ├── HardwareService.cs
│ │ └── IHardwareService.cs
│ ├── SlowBlink.nfproj
│ ├── SlowBlink.sln
│ └── packages.config
└── category.txt
├── ExecutionConstraint
├── ExecutionConstraint.sln
├── ExecutionConstraint
│ ├── ExecutionConstraint.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── README.md
└── category.txt
├── GCStressTest
├── GCStressTest.nfproj
├── GCStressTest.sln
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── category.txt
└── packages.config
├── GiantGecko.Adc
├── ContinuousSampling
│ ├── ContinuousSampling.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── Gecko ADC samples.sln
├── README.md
├── Read.Channel
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Read.Channel.nfproj
│ └── packages.config
└── category.txt
├── Gpio
├── Esp32PulseCounter
│ ├── Esp32PulseCounter.nfproj
│ ├── Esp32PulseCounter.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Gpio+Events
│ ├── Gpio+Events.nfproj
│ ├── Gpio+Events.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Gpio+EventsIoTStyle
│ ├── Gpio+Events(IoT).nfproj
│ ├── Gpio+Events(IoT).sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── README.md
└── category.txt
├── Graphics
├── GenericDriver
│ ├── GenericDriver.nfproj
│ ├── GenericDriver.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Primitives
│ ├── PandaGif.cs
│ ├── Primitives.nfproj
│ ├── Primitives.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Resource.Designer.cs
│ ├── Resource.resx
│ ├── Resources
│ │ ├── MatrixFont.tinyfnt
│ │ ├── SoccerBall.gif
│ │ ├── comicsansms16.tinyfnt
│ │ ├── courierregular10.tinyfnt
│ │ ├── nanoFramework-logo.png
│ │ ├── ninab.tinyfnt
│ │ ├── segoeuiregular12.tinyfnt
│ │ ├── small.tinyfnt
│ │ └── waterfall_costa_rica.jpg
│ ├── SimplePrimitives
│ │ ├── BouncingBalls.cs
│ │ ├── ColourGradient.cs
│ │ ├── Colours.cs
│ │ ├── Extensions.cs
│ │ ├── FontExamples.cs
│ │ ├── InformationBar.cs
│ │ ├── MatrixRain.cs
│ │ ├── PagedText.cs
│ │ ├── RandomDrawLine.cs
│ │ ├── RandomEllipsesAndClipping.cs
│ │ ├── RandomRectangles.cs
│ │ ├── RotateImage.cs
│ │ ├── SetPixels.cs
│ │ ├── SliceScaling9.cs
│ │ ├── StretchImage.cs
│ │ ├── TileImage.cs
│ │ └── WritePoint.cs
│ ├── Untitled.cs
│ ├── WaterFallJpg.cs
│ ├── category.txt
│ └── packages.config
├── README.md
├── Screens
│ ├── README.md
│ ├── category.txt
│ ├── images
│ │ └── screen-output.png
│ ├── m5stack-screen
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Resource.Designer.cs
│ │ ├── Resource.resx
│ │ ├── Resources
│ │ │ └── segoeuiregular12.tinyfnt
│ │ ├── m5stack.screen.nfproj
│ │ ├── m5stack.screen.sln
│ │ └── packages.config
│ └── m5stick-screen
│ │ ├── Program.cs
│ │ ├── Properties
│ │ └── AssemblyInfo.cs
│ │ ├── m5stick.screen.nfproj
│ │ ├── m5stick.screen.sln
│ │ └── packages.config
├── SimpleWpf
│ ├── README.md
│ ├── SimpleWpf.Esp32
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── SimpleWpf.Esp32.nfproj
│ │ └── packages.config
│ ├── SimpleWpf.sln
│ ├── SimpleWpf
│ │ ├── GpioButtonInputProvider.cs
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Resource.Designer.cs
│ │ ├── Resource.resx
│ │ ├── Resources
│ │ │ ├── Canvas Panel Icon Small.JPG
│ │ │ ├── Canvas Panel Icon.JPG
│ │ │ ├── Diagonal Panel Icon Small.JPG
│ │ │ ├── Diagonal Panel Icon.JPG
│ │ │ ├── Free Drawing Panel Icon Small.JPG
│ │ │ ├── Free Drawing Panel Icon.JPG
│ │ │ ├── Horizontal Stack Panel Icon Small.JPG
│ │ │ ├── Horizontal Stack Panel Icon.JPG
│ │ │ ├── NinaB.tinyfnt
│ │ │ ├── Scrollable Panel Icon Small.JPG
│ │ │ ├── Scrollable Panel Icon.JPG
│ │ │ ├── Vertical Stack Panel Icon Small.JPG
│ │ │ ├── Vertical Stack Panel Icon.JPG
│ │ │ ├── courierregular10.tinyfnt
│ │ │ └── small.tinyfnt
│ │ ├── SimpleWPFApplication.cs
│ │ ├── SimpleWpf.nfproj
│ │ ├── SimpleWpf
│ │ │ ├── DesignTimeBuild
│ │ │ │ └── .dtbcache.v2
│ │ │ ├── FileContentIndex
│ │ │ │ ├── beac04c9-b264-4263-a29f-8b7571b45fc8.vsidx
│ │ │ │ └── bfd1b7f6-dead-4329-a7a1-26836b624265.vsidx
│ │ │ └── v17
│ │ │ │ └── .futdcache.v2
│ │ └── packages.config
│ └── category.txt
├── Tetris
│ ├── ExtendedWeakReference.cs
│ ├── GameLogic
│ │ ├── ByteMatrix.cs
│ │ ├── GameBlocks.cs
│ │ ├── GameStatistics.cs
│ │ ├── GameUniverse.cs
│ │ ├── HighScoreTable.cs
│ │ └── ScoreRecord.cs
│ ├── GpioButtonInputProvider.cs
│ ├── Presentation
│ │ ├── BlockBrushes.cs
│ │ ├── GameWindow.cs
│ │ ├── GradientStackPanel.cs
│ │ ├── HighScoreWindow.cs
│ │ ├── MainMenuWindow.cs
│ │ ├── NextBlockView.cs
│ │ ├── ScoreItem.cs
│ │ ├── StatisticsPanel.cs
│ │ └── UniverseView.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Resources
│ │ ├── Consolas23.tinyfnt
│ │ ├── Logo.gif
│ │ └── NinaB.tinyfnt
│ ├── Tetris.nfproj
│ ├── Tetris.sln
│ ├── TetrisApp.cs
│ ├── category.txt
│ ├── nfResource.Designer.cs
│ ├── nfResource.resx
│ └── packages.config
├── UsingGenericDriver
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── UsingGenericDriver.nfproj
│ ├── category.txt
│ └── packages.config
└── category.txt
├── HTTP
├── HTTP.Samples.sln
├── HttpAzureGET
│ ├── HttpAzureGET.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── SetPoint.cs
│ ├── category.txt
│ └── packages.config
├── HttpAzureGET_Wifi
│ ├── HttpAzureGET_Wifi.nfproj
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── HttpAzurePOST
│ ├── HttpAzurePOST.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Temp.cs
│ ├── category.txt
│ └── packages.config
├── HttpAzurePOST_Wifi
│ ├── HttpAzurePOST_Wifi.nfproj
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── HttpListener
│ ├── HttpListener.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── HttpListener_Wifi
│ ├── HttpListener_Wifi.nfproj
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── HttpWebRequest
│ ├── HttpWebRequest.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Resources
│ │ └── DigiCertGlobalRootCA.crt
│ ├── category.txt
│ └── packages.config
├── HttpWebRequest_Wifi
│ ├── HttpWebRequest_Wifi.nfproj
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Resources
│ │ └── digicertglobalrootca.crt
│ └── packages.config
├── README.md
└── category.txt
├── Hardware.Esp32.Rmt
├── InfraredRemoteReceiver
│ ├── InfraredRemoteReceiver.sln
│ ├── InfraredRemoteReceiverSample
│ │ ├── Decoder.cs
│ │ ├── InfraredListener.cs
│ │ ├── InfraredRemoteReceiverSample.nfproj
│ │ ├── NecSignalDecoder.cs
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Protocol.cs
│ │ ├── SignalData.cs
│ │ └── packages.config
│ ├── README.md
│ ├── VS1838.fzz
│ ├── VS1838.png
│ └── category.txt
├── NeoPixelStrip
│ ├── NeoPixel.sln
│ ├── NeoPixel
│ │ ├── Color.cs
│ │ ├── NeoPixel.nfproj
│ │ ├── NeopixelChain.cs
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── packages.config
│ ├── README.md
│ └── category.txt
├── NeoPixelStripLowMemory
│ ├── NeoPixel.sln
│ ├── NeoPixel
│ │ ├── NeoPixel.nfproj
│ │ ├── NeopixelChain.cs
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── packages.config
│ ├── README.md
│ └── category.txt
├── README.md
├── Ultrasonic
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Sr04.cs
│ ├── Ultrasonic.nfproj
│ ├── Ultrasonic.sln
│ ├── category.txt
│ └── packages.config
└── category.txt
├── Hardware.Esp32
├── HardwareEsp32.nfproj
├── HardwareEsp32.sln
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── category.txt
└── packages.config
├── Hardware.GiantGecko
├── GiantGecko.PowerMode
│ ├── GiantGecko.PowerMode.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── GiantGecko.ReadDeviceIDs
│ ├── GiantGecko.ReadDeviceIDs.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── Hardware.GiantGecko.sln
├── README.md
└── category.txt
├── Hardware.Stm32
├── Hardware.Stm32.sln
├── README.md
├── Stm32.BackupMemory
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Stm32BackupMemory.nfproj
│ ├── category.txt
│ └── packages.config
├── Stm32.PowerMode
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Stm32.GpioController.Extensions.cs
│ ├── Stm32.PowerMode.nfproj
│ ├── Stm32.PowerMode.previous.nugetreferenceswitcher
│ ├── category.txt
│ └── packages.config
├── Stm32.ReadDeviceIDs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Stm32.ReadDeviceIDs.nfproj
│ ├── category.txt
│ └── packages.config
├── Stm32.TestAlarms
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── Stm32.TestAlarms.nfproj
│ ├── category.txt
│ └── packages.config
└── category.txt
├── Hardware.TI
├── Hardware.TI.sln
├── README.md
├── TI.PowerMode
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── TI.PowerMode.nfproj
│ ├── category.txt
│ └── packages.config
├── TI.Utilities
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── TI.Utilities.nfproj
│ ├── category.txt
│ └── packages.config
└── category.txt
├── Hosting
├── Logging
│ ├── Extensions
│ │ └── ServiceCollectionExtensions.cs
│ ├── Logging.nfproj
│ ├── Logging.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Services
│ │ └── LoggingServices.cs
│ └── packages.config
├── README.md
├── SensorQueue
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── SensorQueue.nfproj
│ ├── SensorQueue.sln
│ ├── Services
│ │ ├── BackgroundQueue.cs
│ │ ├── DisplayService.cs
│ │ ├── MonitorService.cs
│ │ └── SensorService.cs
│ └── packages.config
├── Simple
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Simple.nfproj
│ ├── Simple.sln
│ └── packages.config
├── SlowBlink
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Services
│ │ ├── HardwareService.cs
│ │ ├── IHardwareService.cs
│ │ └── LedService.cs
│ ├── SlowBlink.nfproj
│ ├── SlowBlink.sln
│ └── packages.config
└── category.txt
├── I2C
├── I2cMasterSlave
│ ├── I2cMasterDevice
│ │ ├── I2cMasterDevice.nfproj
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── packages.config
│ ├── I2cMasterSlave.sln
│ ├── I2cSlaveDevice
│ │ ├── I2cSlaveDevice.nfproj
│ │ ├── Program.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ └── packages.config
│ └── README.md
├── NanoI2cScanner
│ ├── NanoI2cScanner.nfproj
│ ├── NanoI2cScanner.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── category.txt
│ └── packages.config
├── README.md
├── System.Device.I2c
│ └── GPS
│ │ ├── README.md
│ │ ├── category.txt
│ │ ├── nanoframework.Samples.GPS.sln
│ │ └── nanoframework.Samples.GPS
│ │ ├── Drivers
│ │ └── GPS
│ │ │ └── IesShieldGps.cs
│ │ ├── Program.cs
│ │ ├── Properties
│ │ └── AssemblyInfo.cs
│ │ ├── nanoframework.Samples.GPS.nfproj
│ │ └── packages.config
└── category.txt
├── I2S
├── Input
│ ├── MicrophoneIn.nfproj
│ ├── MicrophoneIn.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── WavFileHeader.cs
│ ├── category.txt
│ └── packages.config
├── Output
│ ├── AudioPlayer.nfproj
│ ├── AudioPlayer.sln
│ ├── I2sWavPlayer.cs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── WavFileHeader.cs
│ ├── category.txt
│ └── packages.config
├── README.md
├── category.txt
└── wav
│ └── Variation-CLJ013901.wav
├── Interop
├── README.md
├── awesome-library
│ ├── Math.cs
│ ├── NF.AwesomeLib.nfproj
│ ├── NF.AwesomeLib.sln
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Stubs
│ │ └── NF.AwesomeLib
│ │ │ ├── FindINTEROP-NF.AwesomeLib.cmake
│ │ │ ├── NF_AwesomeLib.cpp
│ │ │ ├── NF_AwesomeLib.h
│ │ │ ├── NF_AwesomeLib_NF_AwesomeLib_Math.cpp
│ │ │ ├── NF_AwesomeLib_NF_AwesomeLib_Math.h
│ │ │ ├── NF_AwesomeLib_NF_AwesomeLib_Math_mshl.cpp
│ │ │ ├── NF_AwesomeLib_NF_AwesomeLib_Utilities.cpp
│ │ │ ├── NF_AwesomeLib_NF_AwesomeLib_Utilities.h
│ │ │ └── NF_AwesomeLib_NF_AwesomeLib_Utilities_mshl.cpp
│ ├── Utilities.cs
│ └── packages.config
├── category.txt
└── test-application
│ ├── Program.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── Test.Interop.nfproj
│ ├── Test.Interop.sln
│ └── packages.config
├── Json
├── JsonConfigurationStore.sln
├── JsonConfigurationStore
│ ├── Configuration.cs
│ ├── ConfigurationStore.cs
│ ├── JsonConfigurationStore.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── README.md
└── category.txt
├── Logging
├── Logging.nfproj
├── Logging.sln
├── MyTestComponent.cs
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── category.txt
└── packages.config
├── MQTT
├── AdvancedExample.Aws
│ ├── AdvancedExample.Aws.nfproj
│ ├── AdvancedExample.Aws.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Resources
│ │ └── AwsCAroot.der
│ └── packages.config
├── AdvancedExample.Azure
│ ├── AdvancedExample.Azure.nfproj
│ ├── AdvancedExample.Azure.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Resource.Designer.cs
│ ├── Resource.resx
│ ├── Resource
│ │ └── AzureRootCerts.pem
│ ├── SHA.cs
│ ├── StringExtensions.cs
│ ├── WebUtility.cs
│ └── packages.config
├── AdvancedExample.Certificates
│ ├── AdvancedExample.Certificates.nfproj
│ ├── AdvancedExample.Certificates.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── BasicExample.Ethernet
│ ├── BasicExample.Ethernet.nfproj
│ ├── BasicExample.Ethernet.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── BasicExample.WiFi
│ ├── BasicExample.WiFi.nfproj
│ ├── BasicExample.WiFi.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── README.md
└── category.txt
├── ManagedResources
├── ManagedResources.nfproj
├── ManagedResources.sln
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── Resources.Designer.cs
├── Resources.resx
├── Resources
│ └── nano-Framework-logo-32-border-trans.png
├── category.txt
└── packages.config
├── NativeEvents
├── NativeEvents.nfproj
├── NativeEvents.sln
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── category.txt
└── packages.config
├── Networking
├── Networking.sln
├── README.md
├── Socket.Client
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Socket.Client.nfproj
│ └── packages.config
├── Socket.Client_WiFi
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Socket.Client_WiFi.nfproj
│ └── packages.config
└── category.txt
├── NumberParser
├── DesktopNumberParserTest
│ ├── DesktopNumberParserTest.csproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── app.config
├── NumberParser.sln
├── NumberParserTest
│ ├── NumberParserTest.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── NumberParserTestShared
│ ├── NumberParserTestShared.projitems
│ ├── NumberParserTestShared.shproj
│ ├── PerformTestBase.cs
│ ├── TestBase.cs
│ ├── TestByte.cs
│ ├── TestDouble.cs
│ ├── TestFloat.cs
│ ├── TestInt16.cs
│ ├── TestInt32.cs
│ ├── TestInt64.cs
│ ├── TestSByte.cs
│ ├── TestUInt16.cs
│ ├── TestUInt32.cs
│ └── TestUInt64.cs
├── README.Desktop.md
├── README.md
└── category.txt
├── OpenThread
├── Display.cs
├── Led.cs
├── README.md
├── SocketUtils.cs
├── UdpThreadClient
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── UdpThreadClient.nfproj
│ └── packages.config
├── UdpThreadSamples.sln
├── UdpThreadServer
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── UdpThreadServer.nfproj
│ └── packages.config
└── category.txt
├── PWM
├── README.md
├── System.Device.Pwm
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── PwmSample.nfproj
│ ├── README.md
│ ├── System.Device.Pwm.sln
│ ├── category.txt
│ └── packages.config
└── category.txt
├── RTC
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── RTC.nfproj
├── RTC.sln
├── category.txt
└── packages.config
├── Reflection
├── CustomAttributes.Desktop
│ ├── CustomAttributes.Desktop.csproj
│ ├── Program.cs
│ └── Properties
│ │ └── AssemblyInfo.cs
├── CustomAttributes.Shared
│ ├── AuthorAttribute.cs
│ ├── ComplexAttribute.cs
│ ├── CustomAttributes.Shared.projitems
│ ├── CustomAttributes.Shared.shproj
│ ├── DataRowAttribute.cs
│ ├── IgnoreAttribute.cs
│ ├── MaxAttribute.cs
│ ├── MyAttribute.cs
│ └── MyClass1.cs
├── CustomAttributes
│ ├── CustomAttributes.nfproj
│ ├── CustomAttributes.previous.nugetreferenceswitcher
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── README.Desktop.md
├── README.md
├── Reflection.sln
└── category.txt
├── SPI
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── SpiExamples.nfproj
├── SpiExamples.sln
├── category.txt
└── packages.config
├── SSL
├── 1024b-rsa-example-cert.der
├── 1024b-rsa-example-cert.pem
├── 2048b-rsa-example-cert.der
├── 2048b-rsa-example-cert.pem
├── 512b-rsa-example-cert.der
├── 512b-rsa-example-cert.pem
├── ParseCertificate
│ ├── ParseCertificate.nfproj
│ ├── ParseCertificate.previous.nugetreferenceswitcher
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Resources
│ │ └── DigiCertGlobalRootCA.cer
│ └── packages.config
├── README.md
├── SecureClient
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── SecureClient.nfproj
│ └── packages.config
├── SecureClient_WiFi
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Resources.Designer.cs
│ ├── Resources.resx
│ ├── Resources
│ │ ├── DigiCertGlobalRootCA.cer
│ │ └── DigiCert_Global_G2_Azure.cer
│ ├── SecureClient_WiFi.nfproj
│ └── packages.config
├── SecureServer
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── SecureServer.nfproj
│ └── packages.config
├── SecureServer_WiFi
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── SecureServer_WiFi.nfproj
│ └── packages.config
├── TLS.sln
└── category.txt
├── SerialCommunication
├── README.md
├── SerialCommunication
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Scenario1_ConfigureDevice.cs
│ ├── Scenario2_Write.cs
│ ├── Scenario3_Read.cs
│ ├── Scenario4_DataReceivedEvent.cs
│ ├── SerialCommunication.nfproj
│ ├── SerialCommunication.sln
│ └── packages.config
└── category.txt
├── System.IO.FileSystem
├── BasicFileSystemExample
│ ├── BasicFileSystemExample.nfproj
│ ├── BasicFileSystemExample.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── MountExample
│ ├── MountExample.nfproj
│ ├── MountExample.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── README.md
└── category.txt
├── System.Random
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── System.Random.nfproj
├── System.Random.sln
├── category.txt
└── packages.config
├── TI.EasyLink
├── EasyLink.Concentrator
│ ├── EasyLink.Concentrator.nfproj
│ ├── EasyLink.Concentrator.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── EasyLink.Node
│ ├── EasyLink.Node.nfproj
│ ├── EasyLink.Node.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── README.md
└── category.txt
├── Threading
├── 01-Basic Threading
│ ├── 01-Basic Threading.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── 02-Passing Parameters
│ ├── 02-Passing Parameters.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── 03-Retrieving data from threads
│ ├── 03-Retrieving data from threads.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── 04-Controlling threads
│ ├── 04-Controlling threads.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── 05-ManualResetEvent
│ ├── 05-ManualResetEvent.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── 06-AutoResetEvent
│ ├── 06-AutoResetEvent.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── 07-Sharing resources
│ ├── 07-Sharing resources.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── README.md
├── Threading.sln
└── category.txt
├── Timer
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── Timer.nfproj
├── Timer.sln
├── category.txt
└── packages.config
├── ToStringTest
├── DesktopToStringTesting
│ ├── DesktopToStringTesting.csproj
│ ├── Program.cs
│ └── Properties
│ │ └── AssemblyInfo.cs
├── README.md
├── ToStringTest.sln
├── ToStringTest
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── ToStringTesting.nfproj
│ ├── ToStringTesting.previous.nugetreferenceswitcher
│ └── packages.config
├── ToStringTestingShared
│ ├── TestCode.cs
│ ├── ToStringTestingShared.projitems
│ └── ToStringTestingShared.shproj
└── category.txt
├── TouchESP32
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── TestTouchApp.nfproj
├── TestTouchApp.sln
├── category.txt
└── packages.config
├── UdpClient
├── DumpSSDPRequests
│ ├── DumpSSDPRequests.nfproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── QOTDClient
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── QOTDClient.nfproj
│ └── packages.config
├── README.md
├── UdpClient.sln
├── UdpEchoServer
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Sender.ipynb
│ ├── UdpEchoServer.nfproj
│ └── packages.config
└── category.txt
├── UnitTest
├── NFUnitTestDemo.sln
├── NFUnitTestDemo
│ ├── NFUnitTest.nfproj
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Test.cs
│ ├── TestOfTestFramework.cs
│ ├── nano.runsettings
│ └── packages.config
├── README.md
└── category.txt
├── UsbClient
├── README.md
├── UsbClient
│ ├── UsbClient.sln
│ └── UsbStream
│ │ ├── Program.cs
│ │ ├── Properties
│ │ └── AssemblyInfo.cs
│ │ ├── UsbStream.nfproj
│ │ └── packages.config
└── category.txt
├── WebSockets
├── README.md
├── README.zh-cn.md
├── WebSockets.Client.Sample
│ ├── NFWebSockets.Client.Example.nfproj
│ ├── NFWebSockets.Client.Example.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── README.zh-cn.md
│ ├── category.txt
│ └── packages.config
├── WebSockets.Server.RgbSample
│ ├── NFWebSockets.Server.RgbExample.nfproj
│ ├── NFWebSockets.Server.RgbExample.sln
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── README.zh-cn.md
│ ├── category.txt
│ └── packages.config
├── Websockets.ServerClient.Sample
│ ├── NFWebsockets.Sample1.nfproj
│ ├── NFWebsockets.Sample1.sln
│ ├── NetworkHelpers.cs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── README.zh-cn.md
│ ├── category.txt
│ └── packages.config
└── category.txt
├── Webserver
├── README.md
├── ServoMotorTester
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── README.md
│ ├── ServoInformation.cs
│ ├── ServoMotorTester.nfproj
│ ├── ServoMotorTester.sln
│ ├── category.txt
│ ├── packages.config
│ └── screen.png
├── WebServer.DI
│ ├── ControllerTest.cs
│ ├── ITextService.cs
│ ├── ITextServiceSingleton.cs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── TextService.cs
│ ├── WebServer.Sample.nfproj
│ ├── WebServer.Sample.sln
│ ├── WebServerDi.cs
│ └── packages.config
├── WebServer.GpioRest
│ ├── ControllerGpio.cs
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── WebServer.GpioRest.nfproj
│ ├── WebServer.GpioRest.sln
│ ├── packages.config
│ └── webserver-cert.crt
├── WebServer.Sample
│ ├── WebServer.Sample.FileSystem
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Resources.Designer.cs
│ │ ├── Resources.resx
│ │ ├── Resources
│ │ │ └── favicon.ico
│ │ ├── WebServer.Sample.FileSystem.nfproj
│ │ └── packages.config
│ ├── WebServer.Sample.sln
│ └── WebServer.Sample
│ │ ├── ControllerAuth.cs
│ │ ├── ControllerPerson.cs
│ │ ├── ControllerTest.cs
│ │ ├── Program.cs
│ │ ├── Properties
│ │ └── AssemblyInfo.cs
│ │ ├── Resources.Designer.cs
│ │ ├── Resources.resx
│ │ ├── Resources
│ │ └── favicon.ico
│ │ ├── WebServer.Sample.nfproj
│ │ ├── packages.config
│ │ └── webserver-cert.crt
├── category.txt
└── doc
│ └── POSTcapture.jpg
├── WiFiAP
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── README.md
├── Resources.Designer.cs
├── Resources.resx
├── Resources
│ ├── Html
│ │ └── main.html
│ └── Images
│ │ └── favicon.png
├── WebServer.cs
├── WiFiAP.nfproj
├── WiFiAP.sln
├── Wireless80211.cs
├── WirelessAP.cs
├── category.txt
└── packages.config
└── Wifi
├── README.md
├── README.zh-cn.md
├── ScanWiFi
├── Program.cs
├── Properties
│ └── AssemblyInfo.cs
├── ScanWiFi.nfproj
└── packages.config
├── Wifi.sln
└── category.txt
/.github/stale.yml:
--------------------------------------------------------------------------------
1 | # Number of days of inactivity before an issue becomes stale
2 | daysUntilStale: 60
3 |
4 | # Number of days of inactivity before a stale issue is closed
5 | daysUntilClose: 7
6 |
7 | # Issues with these labels will never be considered stale
8 | exemptLabels:
9 | - :pushpin: pinned
10 | - security
11 |
12 | # Label to use when marking an issue as stale
13 | staleLabel: stale
14 |
15 | # Comment to post when marking an issue as stale. Set to `false` to disable
16 | markComment: >
17 | This issue has been automatically marked as stale because it has not had
18 | recent activity. It will be closed if no further activity occurs. Thank you
19 | for your contributions.
20 |
--------------------------------------------------------------------------------
/.github/workflows/update-dependencies.yml:
--------------------------------------------------------------------------------
1 | # Copyright (c) .NET Foundation and Contributors
2 | # See LICENSE file in the project root for full license information.
3 |
4 | # This workflow will periodically check that the solutions nuget dependencies (for .NET nanoFramework) are up-to-date.
5 |
6 | name: Scheduled nuget dependency check
7 |
8 | on:
9 | schedule:
10 | # At 00:00 UTC every Friday.
11 | - cron: '00 03 * * Fri'
12 | repository_dispatch:
13 | types: update-dependencies
14 | workflow_dispatch:
15 |
16 | jobs:
17 | update-dependencies:
18 | name: nanoFramework
19 | uses: nanoframework/nf-tools/.github/workflows/update-dependencies.yml@main
20 | secrets: inherit
21 | with:
22 | solutionsToCheck: '*.sln'
23 | exclusionList: "device-listing,Amqp.Samples"
24 | workingDirectory: '${{ github.workspace }}/samples'
25 | nugetConfig: Nuget.config
26 |
--------------------------------------------------------------------------------
/Archive/GpioChangeCounter/GpioChangeCounter/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/Archive/README.md:
--------------------------------------------------------------------------------
1 | # Sample Archives
2 |
3 | This folder contains samples that are using deprecated classes or are not relevant in the current context.
4 |
5 | Those samples are kept for compatibility reasons. **Do not use those in production with current images**.
6 |
--------------------------------------------------------------------------------
/Archive/Storage/AccessRemovableDevices/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Archive/Storage/FileAccess/Scenario1_CreateAFolderInStorage.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 | using System.Diagnostics;
8 | using Windows.Storage;
9 |
10 | namespace FileAccess
11 | {
12 | public class Scenario1_CreateAFolderInStorage
13 | {
14 | public static void Execute(StorageFolder device)
15 | {
16 | Debug.WriteLine($"== Scenario1_CreateAFolderInStorage ==");
17 | try
18 | {
19 | // create a folder (failing if there is already one with this name)
20 | var folderNew = device.CreateFolder("folder1", CreationCollisionOption.FailIfExists);
21 |
22 | Debug.WriteLine($"OK: Successfully created folder: {folderNew.Path}");
23 | }
24 | catch(Exception)
25 | {
26 | Debug.WriteLine($"ERROR: can't create the folder as it already exists.");
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/Archive/Storage/FileAccess/Scenario2_CreateAFileInStorage.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 | using System.Diagnostics;
8 | using Windows.Storage;
9 |
10 | namespace FileAccess
11 | {
12 | public class Scenario2_CreateAFileInStorage
13 | {
14 | public static void Execute(StorageFolder device)
15 | {
16 | Debug.WriteLine($"== Scenario2_CreateAFileInStorage ==");
17 |
18 | try
19 | {
20 | // create a file (replace if there is already one with this name)
21 | var fileNew = device.CreateFile("file1.txt", CreationCollisionOption.ReplaceExisting);
22 |
23 | Debug.WriteLine($"OK: Successfully created file: {fileNew.Path}");
24 | }
25 | catch(Exception ex)
26 | {
27 | Debug.WriteLine($"Error: Unable to create file: {ex.Message}");
28 | }
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Archive/Storage/FileAccess/ScenarioA_UnmountDevice.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 | using System.Diagnostics;
8 | using Windows.Storage;
9 | using Windows.Storage.Devices;
10 |
11 |
12 | namespace FileAccess
13 | {
14 | class ScenarioA_UnmountDevice
15 | {
16 | public static void Execute()
17 | {
18 | Debug.WriteLine($"== ScenarioA_UnmountDevice ==");
19 |
20 | //
21 | // Unmount device if its been previously mounted.
22 | // This is done to allow the card to be removed
23 | //
24 | // Currently the mount card class only allows for 1 device to be mounted
25 | //
26 | if (SDCard.IsMounted)
27 | {
28 | SDCard.Unmount();
29 | }
30 | }
31 | }
32 | }
33 |
--------------------------------------------------------------------------------
/Archive/Storage/FileAccess/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/Archive/Storage/MountDevices/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Archive/Storage/RemovableDeviceEvent/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Archive/Storage/category.txt:
--------------------------------------------------------------------------------
1 | file
--------------------------------------------------------------------------------
/Archive/Windows.Devices.I2c/Display/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/Archive/Windows.Devices.I2c/Display/switcher.json:
--------------------------------------------------------------------------------
1 | {
2 | "solution": "I2C.sln",
3 | "mappings": {
4 | "mscorlib": "../../../../nflib-CoreLibrary/source/nanoFramework.CoreLibrary/CoreLibrary.nfproj",
5 | "Windows.Devices.I2c": "../../../../nflib-Windows.Devices.I2c/source/Windows.Devices.I2c/Windows.Devices.I2c.nfproj"
6 | }
7 | }
--------------------------------------------------------------------------------
/Archive/Windows.Devices.I2c/GPS/nanoframework.Samples.GPS/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Archive/Windows.Devices.Pwm/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/Archive/Windows.Devices.SerialCommunication/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/Archive/Windows.Devices.Spi/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/CODE_OF_CONDUCT.md:
--------------------------------------------------------------------------------
1 | # Contributor Code of Conduct
2 |
3 | Please refer to the contributor Code of Conduct at the Home repository [here](https://github.com/nanoframework/.github/blob/master/CODE_OF_CONDUCT.md).
4 |
--------------------------------------------------------------------------------
/NuGet.Config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/device-listing/Category.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 |
4 | namespace DdeviceListing
5 | {
6 | ///
7 | /// A category.
8 | ///
9 | internal class Category
10 | {
11 | ///
12 | /// Gets or sets the name of the category.
13 | ///
14 | public string Name { get; set; }
15 |
16 | ///
17 | /// Gets or sets the description of the category.
18 | ///
19 | public string Description { get; set; }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/device-listing/README.md:
--------------------------------------------------------------------------------
1 | # Device listing generator
2 |
3 | Run `dotnet run` on this project to auto-generate description in `/devices/README.md` and update the main `README.md`.
4 |
5 |
--------------------------------------------------------------------------------
/device-listing/device-listing.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Exe
5 | net6.0
6 |
7 |
8 |
9 |
10 | PreserveNewest
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/samples/1-Wire/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/1-Wire/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/ADC/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/ADC/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/AMQP/Azure-IoT-Hub/category.txt:
--------------------------------------------------------------------------------
1 | amqp
2 | azure
--------------------------------------------------------------------------------
/samples/AMQP/Azure-ServiceBus-Sender/Sender.nfproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/AMQP/Azure-ServiceBus-Sender/category.txt:
--------------------------------------------------------------------------------
1 | amqp
2 | azure
--------------------------------------------------------------------------------
/samples/AMQP/azure-iot-explorer-sas.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AMQP/azure-iot-explorer-sas.png
--------------------------------------------------------------------------------
/samples/AMQP/category.txt:
--------------------------------------------------------------------------------
1 | amqp
2 | azure
--------------------------------------------------------------------------------
/samples/AzureMQTTTwinsBMP280Sleep/AzureMQTT/StringExtensions.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | namespace System
7 | {
8 | public static class StringExtensions
9 | {
10 | public static bool StartsWith(this string s, string value)
11 | {
12 | return s.IndexOf(value) == 0;
13 | }
14 |
15 | public static bool Contains(this string s, string value)
16 | {
17 | return s.IndexOf(value) > 0;
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/samples/AzureMQTTTwinsBMP280Sleep/AzureMQTT/TwinProperties.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 |
5 | namespace AzureMQTT
6 | {
7 | public class TwinProperties
8 | {
9 | public Desired desired { get; set; }
10 | public Reported reported { get; set; }
11 | }
12 |
13 | public class Desired
14 | {
15 | public int TimeToSleep { get; set; }
16 | }
17 |
18 | public class Reported
19 | {
20 | public string Firmware { get; set; }
21 |
22 | public int TimeToSleep { get; set; }
23 | }
24 |
25 | }
26 |
--------------------------------------------------------------------------------
/samples/AzureMQTTTwinsBMP280Sleep/category.txt:
--------------------------------------------------------------------------------
1 | azure
2 | mqtt
3 | esp32
4 | iot-device
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureEdgeOta/AzureEdgeOTAEngine/Resource/DigiCertGlobalRootCA.cer:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureEdgeOta/AzureEdgeOTAEngine/Resource/DigiCertGlobalRootCA.cer
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureEdgeOta/AzureEdgeOTAEngine/Secrets.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) .NET Foundation and Contributors
2 | // See LICENSE file in the project root for full license information.
3 |
4 | namespace AzureEdgeOTAEngine
5 | {
6 | internal class Secrets
7 | {
8 | public const string DeviceID = "your_device_id";
9 | public const string IotBrokerAddress = "your_iot_hub.azure-devices.net";
10 | public const string SasKey = "your_device_sas_key";
11 | public const string Ssid = "your_wifi_ssid";
12 | public const string Password = "your_wifi_password";
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureEdgeOta/FindPeFiles/FindPeFiles.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Exe
5 | net6.0
6 | enable
7 | enable
8 | 10.0
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureEdgeOta/OtaInterface/FileSettings.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) .NET Foundation and Contributors
2 | // See LICENSE file in the project root for full license information.
3 |
4 | namespace AzureEdgeOTAEngine
5 | {
6 | ///
7 | /// File settings for a PE file
8 | ///
9 | internal class FileSettings
10 | {
11 | ///
12 | /// Gets or sets the file name
13 | ///
14 | public string FileName { get; set; } = string.Empty;
15 |
16 | ///
17 | /// Gets or sets the signature
18 | ///
19 | public string Signature { get; set; } = string.Empty;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureEdgeOta/OtaInterface/OtaInterface.projitems:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
5 | true
6 | d836967a-a9ee-4a90-8af1-3dae5e3f64fe
7 |
8 |
9 | OtaInterface
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureEdgeOta/architecture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureEdgeOta/architecture.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureEdgeOta/category.txt:
--------------------------------------------------------------------------------
1 | azure
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureIoTPnP/Secrets.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft. All rights reserved.
2 | // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3 |
4 | namespace AzureIoTPnP
5 | {
6 | internal static class Secrets
7 | {
8 | public const string Ssid = "wifiname";
9 | public const string Passwd = "wifipassword";
10 | public const string DeviceName = "devicename";
11 | public const string IotHub = "yourIoThubname.azure-devices.net";
12 | public const string SasKey = "alongsaskey";
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureIoTPnP/TemperatureReporting.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) Microsoft. All rights reserved.
2 | // Licensed under the MIT license. See LICENSE file in the project root for full license information.
3 |
4 | using System;
5 |
6 | namespace AzureIoTPnP
7 | {
8 | internal class TemperatureReporting
9 | {
10 | public double maxTemp { get; set; }
11 | public double minTemp { get; set; }
12 | public double avgTemp { get; set; }
13 | public DateTime startTime { get; set; }
14 | public DateTime endTime { get; set; }
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureIoTPnP/category.txt:
--------------------------------------------------------------------------------
1 | azure
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureIoTPnP/command.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureIoTPnP/command.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureIoTPnP/pnp-config.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureIoTPnP/pnp-config.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureIoTPnP/reported-properties.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureIoTPnP/reported-properties.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureIoTPnP/telemetry.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureIoTPnP/telemetry.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureIoTPnP/writable-property.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureIoTPnP/writable-property.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDK/category.txt:
--------------------------------------------------------------------------------
1 | azure
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDK/cloud-to-device-result.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDK/cloud-to-device-result.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDK/cloud-to-device.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDK/cloud-to-device.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDK/direct-method-exception.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDK/direct-method-exception.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDK/method-callback-add.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDK/method-callback-add.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKBasic/category.txt:
--------------------------------------------------------------------------------
1 | azure
2 | esp32
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKBasic/output.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKBasic/output.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKBasicFullyManaged/Resources/DigiCertGlobalRootG2.der:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKBasicFullyManaged/Resources/DigiCertGlobalRootG2.der
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKBasicFullyManaged/category.txt:
--------------------------------------------------------------------------------
1 | azure
2 | esp32
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKBasicFullyManaged/output.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKBasicFullyManaged/output.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/category.txt:
--------------------------------------------------------------------------------
1 | azure
2 | device
3 | iot-device
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/M5Stack-Azure-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/M5Stack-Azure-flow.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/M5Stack-BMP280_bb.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/M5Stack-BMP280_bb.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/M5Stack-BMP280_integration.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/M5Stack-BMP280_integration.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/certificate-iot-hub-ca-csr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/certificate-iot-hub-ca-csr.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/certificate-iot-hub-ca.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/certificate-iot-hub-ca.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/certificate-iot-hub-csr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/certificate-iot-hub-csr.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/create-a-device-ca-certificate.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/create-a-device-ca-certificate.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-create-iot-device-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-create-iot-device-1.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-create-iot-device-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-create-iot-device-2.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-message-routing-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-message-routing-1.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-message-routing-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-message-routing-2.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-message-routing-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/AzureSDK/AzureSDKSensorCertificate/images/iot-hub-message-routing-3.png
--------------------------------------------------------------------------------
/samples/AzureSDK/AzureSDKSleepBMP280/category.txt:
--------------------------------------------------------------------------------
1 | azure
2 | esp32
3 | iot-device
--------------------------------------------------------------------------------
/samples/AzureSDK/DpsSampleApp/category.txt:
--------------------------------------------------------------------------------
1 | azure
--------------------------------------------------------------------------------
/samples/AzureSDK/category.txt:
--------------------------------------------------------------------------------
1 | azure
--------------------------------------------------------------------------------
/samples/Beginner/AnalogRainSensor/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | beginner
3 |
--------------------------------------------------------------------------------
/samples/Beginner/AnalogRainSensor/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Beginner/BlinkLed/Program.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 |
4 | using System.Device.Gpio;
5 | using System.Diagnostics;
6 | using System.Threading;
7 |
8 | Debug.WriteLine("Hello from nanoFramework!");
9 |
10 | // Setup the GPIO pin to 2 as it is the embedded led in the ESP32
11 | // We create a controller and open the pin in output mode
12 | // If your board has another pin, change here. If you are using an external led, change here as well.
13 | GpioPin led = new GpioController().OpenPin(2, PinMode.Output);
14 |
15 | while (true)
16 | {
17 | // Turn on the LED
18 | led.Write(PinValue.High);
19 | Thread.Sleep(500);
20 | // Turn off the LED
21 | led.Write(PinValue.Low);
22 | Thread.Sleep(500);
23 | }
24 |
25 | Thread.Sleep(Timeout.Infinite);
26 |
--------------------------------------------------------------------------------
/samples/Beginner/BlinkLed/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | beginner
3 |
--------------------------------------------------------------------------------
/samples/Beginner/BlinkLed/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Beginner/Button/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | beginner
3 |
--------------------------------------------------------------------------------
/samples/Beginner/Button/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Beginner/ButtonNuget/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | beginner
3 | iot-device
4 |
--------------------------------------------------------------------------------
/samples/Beginner/ButtonNuget/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Beginner/Buzzer/MelodyElement.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 |
4 | namespace Iot.Device.Buzzer.Samples
5 | {
6 | ///
7 | /// A base class for melody sequence elements.
8 | ///
9 | public abstract class MelodyElement
10 | {
11 | ///
12 | /// Create a Melody Element.
13 | ///
14 | /// A duration.
15 | public MelodyElement(Duration duration) => Duration = duration;
16 |
17 | ///
18 | /// Duration which defines how long should element take on melody sequence timeline.
19 | ///
20 | public Duration Duration { get; set; }
21 |
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/samples/Beginner/Buzzer/PauseElement.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 |
4 | namespace Iot.Device.Buzzer.Samples
5 | {
6 | ///
7 | /// Pause element to define silence duration between sounds in melody.
8 | ///
9 | internal class PauseElement : MelodyElement
10 | {
11 | ///
12 | /// Create Pause element.
13 | ///
14 | /// Duration of pause in melody sequence timeline.
15 | public PauseElement(Duration duration)
16 | : base(duration)
17 | {
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/samples/Beginner/Buzzer/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/Beginner/Docs/AM2320.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/AM2320.jpg
--------------------------------------------------------------------------------
/samples/Beginner/Docs/ESP32-DEVKITC.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/ESP32-DEVKITC.jpg
--------------------------------------------------------------------------------
/samples/Beginner/Docs/add_nuget_gpio.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/add_nuget_gpio.png
--------------------------------------------------------------------------------
/samples/Beginner/Docs/blinky.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/blinky.gif
--------------------------------------------------------------------------------
/samples/Beginner/Docs/button.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/button.gif
--------------------------------------------------------------------------------
/samples/Beginner/Docs/button.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/button.jpg
--------------------------------------------------------------------------------
/samples/Beginner/Docs/buzzer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/buzzer.png
--------------------------------------------------------------------------------
/samples/Beginner/Docs/debug.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/debug.png
--------------------------------------------------------------------------------
/samples/Beginner/Docs/device_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/device_selected.png
--------------------------------------------------------------------------------
/samples/Beginner/Docs/led.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/led.jpg
--------------------------------------------------------------------------------
/samples/Beginner/Docs/moisture-sensor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/moisture-sensor.png
--------------------------------------------------------------------------------
/samples/Beginner/Docs/nanoff_flashed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/nanoff_flashed.png
--------------------------------------------------------------------------------
/samples/Beginner/Docs/nanoff_listports.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/nanoff_listports.png
--------------------------------------------------------------------------------
/samples/Beginner/Docs/pwm-led.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/pwm-led.gif
--------------------------------------------------------------------------------
/samples/Beginner/Docs/resistor.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/resistor.jpg
--------------------------------------------------------------------------------
/samples/Beginner/Docs/schema-button.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/schema-button.png
--------------------------------------------------------------------------------
/samples/Beginner/Docs/schema_am2320.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/schema_am2320.png
--------------------------------------------------------------------------------
/samples/Beginner/Docs/servo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/servo.gif
--------------------------------------------------------------------------------
/samples/Beginner/Docs/servo.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/servo.jpg
--------------------------------------------------------------------------------
/samples/Beginner/Docs/soil_humidity_sensor_capacitive.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Beginner/Docs/soil_humidity_sensor_capacitive.jpg
--------------------------------------------------------------------------------
/samples/Beginner/PwmLed/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | beginner
3 |
--------------------------------------------------------------------------------
/samples/Beginner/PwmLed/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Beginner/ServoMotor/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | beginner
3 |
--------------------------------------------------------------------------------
/samples/Beginner/ServoMotor/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/Beginner/TempHumI2c/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | beginner
3 |
--------------------------------------------------------------------------------
/samples/Beginner/TempHumI2c/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/Beginner/category.txt:
--------------------------------------------------------------------------------
1 | beginner
2 |
--------------------------------------------------------------------------------
/samples/Blinky/Blinky/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Blinky/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | beginner
3 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothBeacon/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️🌶️ - Create an IBeacon
2 |
3 | This shows how to create a Bluetooth iBeacon.
4 | The sample contains a **Beacon class** which does hard work and can be easily used in other applications.
5 |
6 | You will be able to see iBeacon advertisements in the relevant applications.
7 | Suitable Phone applications: "LightBlue" or "nRF Connect"
8 |
9 | See [main Bluetooth sample's readme](../README.md) for more information.
10 |
11 | The sample is [located here](./Program.cs).
12 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothBeacon/category.txt:
--------------------------------------------------------------------------------
1 | esp32
2 | ble
3 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothBeacon/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothLESample1/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️ - Bluetooth Low energy: read static and dynamic values, notification, read/write value
2 |
3 | This shows how to create a Bluetooth Server with a custom service.
4 |
5 | Shows the use of:-
6 |
7 | | Custom service | Behavior |
8 | | --- | --- |
9 | | Read static value (value that doesn't change) | Value text |
10 | | Read a dynamic value using an event handler. | value 3 bytes (Hour/Minute/Seconds) |
11 | | Notifying clients of a changed value | Notify time every 60 seconds or when date updated. |
12 | | Read and Write a value | Read/Write 3 bytes RGB |
13 |
14 | You will be able to connect to the service and read values or subscribe to be Notified ever 60 seconds.
15 | Suitable Phone apps: "LightBlue" or "nRF Connect"
16 |
17 | See [main Bluetooth sample's readme](../README.md) for more information.
18 |
19 | The sample is [located here](./Program.cs).
20 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothLESample1/category.txt:
--------------------------------------------------------------------------------
1 | ble
2 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothLESample1/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothLESample2/category.txt:
--------------------------------------------------------------------------------
1 | ble
2 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothLESample2/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothLESample3/category.txt:
--------------------------------------------------------------------------------
1 | ble
2 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothLESample3/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BluetoothLESerial/category.txt:
--------------------------------------------------------------------------------
1 | ble
2 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BroadcastValues/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️ - Bluetooth Low energy: Broadcast current values in a Bluetooth advertisement
2 |
3 | This shows how to create a Bluetooth advertisement publisher with custom values.
4 |
5 | Putting values in an advertisement saves having to connect to device and read the value.
6 | This sample puts a 1 byte count followed by a 32bit integer into a Manufacturer Data Section.
7 |
8 | To collect data from this sample create a simple Bluetooth Watcher and save data coming from
9 | device with local name "MyValues".
10 |
11 | You will be able see advertisements from device with ManufacterData value changing every second.
12 | Suitable Phone applications: "LightBlue" or "nRF Connect"
13 |
14 | See [main Bluetooth sample's readme](../README.md) for more information.
15 |
16 | The sample is [located here](./Program.cs).
17 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BroadcastValues/category.txt:
--------------------------------------------------------------------------------
1 | ble
2 |
--------------------------------------------------------------------------------
/samples/Bluetooth/BroadcastValues/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Bluetooth/Central1/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️ - Bluetooth Low energy: Watch for Bluetooth Advertisements
2 |
3 | This sample shows how to create a BluetoothLEAdvertisementWatcher class to watch for Bluetooth Advertisements.
4 |
5 | Runs this sample and all the Bluetooth LE Advertisements will be listed.
6 |
7 | See [main Bluetooth sample's readme](../README.md) for more information.
8 |
9 | The sample is [located here](./Program.cs).
10 |
--------------------------------------------------------------------------------
/samples/Bluetooth/Central1/category.txt:
--------------------------------------------------------------------------------
1 | ble
2 |
--------------------------------------------------------------------------------
/samples/Bluetooth/Central1/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Bluetooth/Central2/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️ - Bluetooth Low energy: Environmental Sensor data collection
2 |
3 | Sample to collect temperature values from a collection of
4 | Environmental Sensor devices
5 |
6 | This sample will watch for Environmental sensors advertisements and connect to sensor reading temperature values.
7 |
8 | Shows how to watch for advertisements and connect to devices.
9 |
10 | Designed to work with the Bluetooth Sample 3.
11 |
12 | See [main Bluetooth sample's readme](../README.md) for more information.
13 |
14 | The sample is [located here](./Program.cs).
15 |
--------------------------------------------------------------------------------
/samples/Bluetooth/Central2/category.txt:
--------------------------------------------------------------------------------
1 | ble
2 |
--------------------------------------------------------------------------------
/samples/Bluetooth/Central2/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Bluetooth/Central3/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️🌶️ - Bluetooth Low energy: Demonstrates pairing and authentication in Client program
2 |
3 | Sample to show how to Watch for advertisements and connect to a device which requires encryption and authentication to access the Characteristics value.
4 |
5 | This sample works with the BluetoothLESample2 sample as the server.
6 |
7 | Start the BluetoothLESample2 on another device and then run this sample.
8 |
9 | Pairing can be done before or ad hoc when the accessing the Characteristic.
10 | If Characteristic requires security or Authentication when accessed the system will automatically start a pairing operation.
11 |
12 | See [main Bluetooth sample's readme](../README.md) for more information.
13 |
14 | The sample is [located here](./Program.cs).
15 |
--------------------------------------------------------------------------------
/samples/Bluetooth/Central3/category.txt:
--------------------------------------------------------------------------------
1 | ble
2 |
--------------------------------------------------------------------------------
/samples/Bluetooth/Central3/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/Bluetooth/ImprovWifi/category.txt:
--------------------------------------------------------------------------------
1 | esp32
2 | ble
3 | wifi
4 |
--------------------------------------------------------------------------------
/samples/Bluetooth/WatcherFilters/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️ - Demonstrates how to use the watcher filter classes
2 |
3 | By using the BluetoothLEAdvertisementFilter class on the Watcher you can select only to receive advertisements events for your devices.
4 |
5 | The sample shows how to filter adrvertisements by whole advertisement data sections or just a few bytes within a data section to filter advertisements
6 | received by the watcher event handler.
7 |
8 | Also how to set up a signal strength filter to only receive advertisements from near devices.
9 |
10 | See [main Bluetooth sample's readme](../README.md) for more information.
11 |
12 | The sample is [located here](./Program.cs).
13 |
--------------------------------------------------------------------------------
/samples/Bluetooth/WatcherFilters/category.txt:
--------------------------------------------------------------------------------
1 | ble
2 |
--------------------------------------------------------------------------------
/samples/Bluetooth/WatcherFilters/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Bluetooth/category.txt:
--------------------------------------------------------------------------------
1 | esp32
2 | ble
3 |
--------------------------------------------------------------------------------
/samples/CAN/Can.TestApp/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/CAN/category.txt:
--------------------------------------------------------------------------------
1 | can
--------------------------------------------------------------------------------
/samples/Collections/Collections/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/Collections/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/Converter.Base64/Base64Test/Program.cs:
--------------------------------------------------------------------------------
1 | using Base64TestingShared;
2 | using System.Threading;
3 |
4 | namespace Base64Test
5 | {
6 | public class Program
7 | {
8 | public static void Main()
9 | {
10 | TestCode.Output();
11 |
12 | for (; ; )
13 | {
14 | Thread.Sleep(10000);
15 | }
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/samples/Converter.Base64/Base64Test/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/Converter.Base64/Base64TestingShared/Base64TestingShared.projitems:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
5 | true
6 | 65e7b59a-0f6a-4efd-880b-ea585cd3d397
7 |
8 |
9 | Base64TestingShared
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/samples/Converter.Base64/DesktopBase64Testing/Program.cs:
--------------------------------------------------------------------------------
1 | using Base64TestingShared;
2 | using System.Globalization;
3 | using System.Threading;
4 |
5 | namespace DesktopBase64Testing
6 | {
7 | class Program
8 | {
9 | static void Main(string[] args)
10 | {
11 | // Change current culture to Invariant culture to match nanoFramework culture setting
12 | CultureInfo dft = Thread.CurrentThread.CurrentCulture;
13 | Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
14 |
15 | TestCode.Output();
16 |
17 | for (; ; )
18 | {
19 | Thread.Sleep(10000);
20 | }
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/samples/Converter.Base64/README.Desktop.md:
--------------------------------------------------------------------------------
1 | These projects are the Destktop equivalents of the nanoFramework ones.
2 | Used to encode and decode with Base64.
3 |
--------------------------------------------------------------------------------
/samples/Converter.Base64/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/DAC/DacSample/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/DAC/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/DAC/images/sine-wave.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/DAC/images/sine-wave.jpg
--------------------------------------------------------------------------------
/samples/DAC/images/square-wave.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/DAC/images/square-wave.jpg
--------------------------------------------------------------------------------
/samples/DAC/images/triangle-wave.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/DAC/images/triangle-wave.jpg
--------------------------------------------------------------------------------
/samples/DebugGC.Test/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/DebugGC.Test/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/DependencyInjection/Simple/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/DependencyInjection/SlowBlink/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using Microsoft.Extensions.DependencyInjection;
7 | using nanoFramework.Logging.Debug;
8 | using Microsoft.Extensions.Logging;
9 |
10 | namespace nanoFramework.SlowBlink
11 | {
12 | public class Program
13 | {
14 | public static void Main()
15 | {
16 | ServiceProvider services = ConfigureServices();
17 | var application = (Application)services.GetRequiredService(typeof(Application));
18 |
19 | application.Run();
20 | }
21 |
22 | private static ServiceProvider ConfigureServices()
23 | {
24 | return new ServiceCollection()
25 | .AddSingleton(typeof(Application))
26 | .AddSingleton(typeof(IHardwareService), typeof(HardwareService))
27 | .AddSingleton(typeof(ILoggerFactory), typeof(DebugLoggerFactory))
28 | .BuildServiceProvider();
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/samples/DependencyInjection/SlowBlink/Services/IHardwareService.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | namespace nanoFramework.SlowBlink
7 | {
8 | public interface IHardwareService
9 | {
10 | public void StartBlinking(int ledPin)
11 | {
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/DependencyInjection/SlowBlink/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/DependencyInjection/category.txt:
--------------------------------------------------------------------------------
1 | tools
--------------------------------------------------------------------------------
/samples/ExecutionConstraint/ExecutionConstraint/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/ExecutionConstraint/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/GCStressTest/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/GCStressTest/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/GiantGecko.Adc/ContinuousSampling/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/GiantGecko.Adc/Read.Channel/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/GiantGecko.Adc/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/Gpio/Esp32PulseCounter/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("Esp32PulseCounter.Example")]
9 | [assembly: AssemblyProduct("Esp32PulseCounter.Example")]
10 | [assembly: AssemblyCopyright("Copyright .NET nanoFramework and contributors © 2023")]
11 |
12 | // Setting ComVisible to false makes the types in this assembly not visible
13 | // to COM components. If you need to access a type in this assembly from
14 | // COM, set the ComVisible attribute to true on that type.
15 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/samples/Gpio/Esp32PulseCounter/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | esp32
--------------------------------------------------------------------------------
/samples/Gpio/Esp32PulseCounter/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Gpio/Gpio+Events/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | system
--------------------------------------------------------------------------------
/samples/Gpio/Gpio+Events/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Gpio/Gpio+EventsIoTStyle/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | system
--------------------------------------------------------------------------------
/samples/Gpio/Gpio+EventsIoTStyle/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Gpio/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/Graphics/GenericDriver/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("GenericGraphic.Example")]
9 | [assembly: AssemblyProduct("GenericGraphic.Example")]
10 | [assembly: AssemblyCopyright("Copyright .NET nanoFramework and contributors © 2023")]
11 |
12 | // Setting ComVisible to false makes the types in this assembly not visible
13 | // to COM components. If you need to access a type in this assembly from
14 | // COM, set the ComVisible attribute to true on that type.
15 | [assembly: ComVisible(false)]
16 |
--------------------------------------------------------------------------------
/samples/Graphics/GenericDriver/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️🌶️ - Creating your own generic graphic driver
2 |
3 | This sample shows how you can create your own generic driver. This usually requires quite some experience. You have great examples in the [nanoFramework.Graphic libraries](https://github.com/nanoframework/nanoFramework.Graphics/tree/main/ManagedDrivers) with the existing drivers.
4 |
5 | > [!Important]
6 | >
7 | > You **MUST** use a .NET nanoFramework image that is built with the Generic Graphic Driver. Using an image that is not will either throw because you don't have the graphic library at all either have absolutely no effect if you have one of the built in driver in the image.
8 |
9 | The M5Stack devices have all an existing built in driver. So except if you are not using the standard image on them but one containing a generic image, you can't use a generic graphic driver on them. This won't have any effect at all.
10 |
11 | The sample is [located here](./).
12 |
--------------------------------------------------------------------------------
/samples/Graphics/GenericDriver/category.txt:
--------------------------------------------------------------------------------
1 | graphics
--------------------------------------------------------------------------------
/samples/Graphics/GenericDriver/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Resources/MatrixFont.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Primitives/Resources/MatrixFont.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Resources/SoccerBall.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Primitives/Resources/SoccerBall.gif
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Resources/comicsansms16.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Primitives/Resources/comicsansms16.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Resources/courierregular10.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Primitives/Resources/courierregular10.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Resources/nanoFramework-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Primitives/Resources/nanoFramework-logo.png
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Resources/ninab.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Primitives/Resources/ninab.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Resources/segoeuiregular12.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Primitives/Resources/segoeuiregular12.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Resources/small.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Primitives/Resources/small.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Resources/waterfall_costa_rica.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Primitives/Resources/waterfall_costa_rica.jpg
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/SimplePrimitives/Extensions.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 |
4 | using System;
5 |
6 | namespace Primitives.SimplePrimitives
7 | {
8 | public static class Extensions
9 | {
10 | public static int Next(this Random rand, int min, int max)
11 | {
12 | if (max - min == 0)
13 | return min;
14 | return min + rand.Next(max-min);
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/SimplePrimitives/InformationBar.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 |
4 | using nanoFramework.Presentation.Media;
5 | using nanoFramework.UI;
6 | using System.Drawing;
7 |
8 | namespace Primitives.SimplePrimitives
9 | {
10 | public enum InfoBarPosition
11 | {
12 | Top,
13 | bottom
14 | }
15 |
16 | public static class InformationBar
17 | {
18 | public static void DrawInformationBar(Bitmap theBitmap, Font DisplayFont, InfoBarPosition pos, string TextToDisplay)
19 | {
20 | theBitmap.DrawRectangle(Color.White, 0, 0, theBitmap.Height - 20, 320, 22, 0, 0, Color.White,
21 | 0, theBitmap.Height - 20, Color.White, 0, theBitmap.Height, Bitmap.OpacityOpaque);
22 | theBitmap.DrawText(TextToDisplay, DisplayFont, Color.Black, 0, theBitmap.Height - 20);
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/Untitled.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 |
4 | namespace Primitives
5 | {
6 | public class UntitledBmp
7 | {
8 | public static byte[] Untitled ={
9 | 0x42,0x4d,0x5a,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x36,0x00,0x00,0x00,0x28,
10 | 0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x03,0x00,0x00,0x00,0x01,0x00,0x18,0x00,
11 | 0x00,0x00,0x00,0x00,0x24,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
12 | 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,
13 | 0x00,0x00,0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,
14 | 0x00,0x00,0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x00
15 | };
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/category.txt:
--------------------------------------------------------------------------------
1 | graphics
--------------------------------------------------------------------------------
/samples/Graphics/Primitives/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/Graphics/Screens/category.txt:
--------------------------------------------------------------------------------
1 | graphics
--------------------------------------------------------------------------------
/samples/Graphics/Screens/images/screen-output.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Screens/images/screen-output.png
--------------------------------------------------------------------------------
/samples/Graphics/Screens/m5stack-screen/Resources/segoeuiregular12.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Screens/m5stack-screen/Resources/segoeuiregular12.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/Screens/m5stack-screen/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️ -Simple WPF
2 |
3 | This contains an animated graphical menu with allows the selection of pages that demonstrates features of the limited WPF that's available in nanoFramework.
4 |
5 | - Vertical Stack Panel
6 | - Horizontal Stack panel
7 | - Canvas panel
8 | - Scrollable text Panel
9 | - Free drawing panel
10 |
11 | Requires the GPIO pins numbers to be defined for the Left, Right, Up, Down & Select keys, see Program.cs
12 |
13 | - [🌶️🌶️ - Simple WPF](./SimpleWpf/)
14 | - [🌶️🌶️ - Simple WPF for ESP32 devices](./SimpleWpf.Esp32/)
15 |
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf.Esp32/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Canvas Panel Icon Small.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Canvas Panel Icon Small.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Canvas Panel Icon.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Canvas Panel Icon.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Diagonal Panel Icon Small.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Diagonal Panel Icon Small.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Diagonal Panel Icon.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Diagonal Panel Icon.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Free Drawing Panel Icon Small.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Free Drawing Panel Icon Small.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Free Drawing Panel Icon.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Free Drawing Panel Icon.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Horizontal Stack Panel Icon Small.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Horizontal Stack Panel Icon Small.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Horizontal Stack Panel Icon.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Horizontal Stack Panel Icon.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/NinaB.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/NinaB.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Scrollable Panel Icon Small.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Scrollable Panel Icon Small.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Scrollable Panel Icon.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Scrollable Panel Icon.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Vertical Stack Panel Icon Small.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Vertical Stack Panel Icon Small.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Vertical Stack Panel Icon.JPG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/Vertical Stack Panel Icon.JPG
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/courierregular10.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/courierregular10.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/Resources/small.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/Resources/small.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/SimpleWpf/DesignTimeBuild/.dtbcache.v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/SimpleWpf/DesignTimeBuild/.dtbcache.v2
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/SimpleWpf/FileContentIndex/beac04c9-b264-4263-a29f-8b7571b45fc8.vsidx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/SimpleWpf/FileContentIndex/beac04c9-b264-4263-a29f-8b7571b45fc8.vsidx
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/SimpleWpf/FileContentIndex/bfd1b7f6-dead-4329-a7a1-26836b624265.vsidx:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/SimpleWpf/FileContentIndex/bfd1b7f6-dead-4329-a7a1-26836b624265.vsidx
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/SimpleWpf/v17/.futdcache.v2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/SimpleWpf/SimpleWpf/SimpleWpf/v17/.futdcache.v2
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/SimpleWpf/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/Graphics/SimpleWpf/category.txt:
--------------------------------------------------------------------------------
1 | graphics
--------------------------------------------------------------------------------
/samples/Graphics/Tetris/ExtendedWeakReference.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace Tetris
4 | {
5 | public class ExtendedWeakReference
6 | {
7 | public enum PriorityLevel : int
8 | {
9 | OkayToThrowAway = 1000,
10 | NiceToHave = 500000,
11 | Important = 750000,
12 | Critical = 1000000,
13 | System = 10000000,
14 | }
15 | public static uint c_SurvivePowerdown {get;set;}
16 | public uint Id { get; set; }
17 | public uint Flags { get; set; }
18 | public Type Selector { get; set; }
19 | public int Priority { get; set; }
20 |
21 | public object Target { get; set; }
22 | public static ExtendedWeakReference RecoverOrCreate(Type selector, uint id, uint flags)
23 | {
24 | ExtendedWeakReference wr = Recover(selector, id);
25 | return wr;
26 | }
27 |
28 | public static ExtendedWeakReference Recover(Type selector, uint id)
29 | {
30 | return new ExtendedWeakReference();
31 | }
32 | }
33 | }
--------------------------------------------------------------------------------
/samples/Graphics/Tetris/GameLogic/GameStatistics.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | //
3 | // Tetris game for .NET Micro Framework
4 | //
5 | // http://bansky.net/blog
6 | //
7 | // This code was written by Pavel Bansky. It is released under the terms of
8 | // the Creative Commons "Attribution NonCommercial ShareAlike 2.5" license.
9 | // http://creativecommons.org/licenses/by-nc-sa/2.5/
10 | //-----------------------------------------------------------------------------
11 |
12 | using System;
13 | using nanoFramework.UI;
14 |
15 | namespace Tetris.GameLogic
16 | {
17 | ///
18 | /// Class to keep gameStatistics
19 | ///
20 | public class GameStatistics
21 | {
22 | public int Score;
23 | public int LinesCompleted;
24 | public int Level;
25 | public int Interval;
26 | public bool GameOver;
27 | public bool NextLevel;
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/samples/Graphics/Tetris/GameLogic/ScoreRecord.cs:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | //
3 | // Tetris game for .NET Micro Framework
4 | //
5 | // http://bansky.net/blog
6 | //
7 | // This code was written by Pavel Bansky. It is released under the terms of
8 | // the Creative Commons "Attribution NonCommercial ShareAlike 2.5" license.
9 | // http://creativecommons.org/licenses/by-nc-sa/2.5/
10 | //-----------------------------------------------------------------------------
11 |
12 | using System;
13 | using nanoFramework.UI;
14 |
15 | namespace Tetris.GameLogic
16 | {
17 | ///
18 | /// Struct representing score record in high score table
19 | ///
20 | [Serializable]
21 | public struct ScoreRecord
22 | {
23 | public string Name;
24 | public int Score;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/samples/Graphics/Tetris/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️🌶️ - Tetris Demo Game for nanoFramework
2 |
3 | This was converted from an .net Micro Framework created on _(January 28th 2008)_
4 |
5 | This is a demo application written to demonstrate different capabilities of .NET Micro Framework.
6 | Windows Presentation Foundation, Extended Weak Reference for persistent storage etc.
7 |
8 | It has been updated to work with nanoFramework (still Work in Progress).
9 |
10 | This Tetris game became almost a benchmark demo for different hardware that supports .NET Micro Framework.
11 |
12 | 
13 |
14 | 
15 |
16 | Requires the GPIO pins numbers to be defined for the Left, Right, Up, Down & Select keys in the TetrisApp.cs
17 |
18 | The number of Rows of blocks displayed and the size of the blocks can be adjusted to fit your screen in the UniverseView.cs and GameUniverse.cs
19 |
20 | The sample is [located here](./).
--------------------------------------------------------------------------------
/samples/Graphics/Tetris/Resources/Consolas23.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Tetris/Resources/Consolas23.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/Tetris/Resources/Logo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Tetris/Resources/Logo.gif
--------------------------------------------------------------------------------
/samples/Graphics/Tetris/Resources/NinaB.tinyfnt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Graphics/Tetris/Resources/NinaB.tinyfnt
--------------------------------------------------------------------------------
/samples/Graphics/Tetris/category.txt:
--------------------------------------------------------------------------------
1 | graphics
--------------------------------------------------------------------------------
/samples/Graphics/Tetris/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/Graphics/UsingGenericDriver/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("GenericGraphic.Example")]
9 | [assembly: AssemblyProduct("GenericGraphic.Example")]
10 | [assembly: AssemblyCopyright("Copyright .NET nanoFramework and contributors © 2023")]
11 |
12 | // Setting ComVisible to false makes the types in this assembly not visible
13 | // to COM components. If you need to access a type in this assembly from
14 | // COM, set the ComVisible attribute to true on that type.
15 | [assembly: ComVisible(false)]
16 |
--------------------------------------------------------------------------------
/samples/Graphics/UsingGenericDriver/README.md:
--------------------------------------------------------------------------------
1 | # 🌶️🌶️ - Using an existing generic graphic driver
2 |
3 | This sample shows how you can use and adjust an existing generic driver. This usually requires quite some experience. You have the source of all the existing drivers in the [nanoFramework.Graphic libraries](https://github.com/nanoframework/nanoFramework.Graphics/tree/main/ManagedDrivers).
4 |
5 | > [!Important]
6 | >
7 | > You **MUST** use a .NET nanoFramework image that is built with the Generic Graphic Driver. Using an image that is not will either throw because you don't have the graphic library at all either have absolutely no effect if you have one of the built in driver in the image.
8 |
9 | The M5Stack devices have all an existing built in driver. So except if you are not using the standard image on them but one containing a generic image, you can't use a generic graphic driver on them. This won't have any effect at all.
10 |
11 | The sample is [located here](./).
12 |
--------------------------------------------------------------------------------
/samples/Graphics/UsingGenericDriver/category.txt:
--------------------------------------------------------------------------------
1 | graphics
--------------------------------------------------------------------------------
/samples/Graphics/UsingGenericDriver/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/Graphics/category.txt:
--------------------------------------------------------------------------------
1 | graphics
--------------------------------------------------------------------------------
/samples/HTTP/HttpAzureGET/SetPoint.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | namespace HttpSamples.HttpAzureGET
7 | {
8 | internal class SetPoint
9 | {
10 | public string DeviceID { get; set; }
11 | public string Value { get; set; }
12 | public string Temperature { get; set; }
13 | }
14 | }
--------------------------------------------------------------------------------
/samples/HTTP/HttpAzureGET/category.txt:
--------------------------------------------------------------------------------
1 | networking
2 | azure
--------------------------------------------------------------------------------
/samples/HTTP/HttpAzurePOST/Temp.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | namespace HttpSamples.HttpAzurePOST
7 | {
8 | internal class Temp
9 | {
10 | public string DeviceID { get; set; }
11 | public string Temperature { get; set; }
12 | }
13 | }
--------------------------------------------------------------------------------
/samples/HTTP/HttpAzurePOST/category.txt:
--------------------------------------------------------------------------------
1 | networking
2 | azure
--------------------------------------------------------------------------------
/samples/HTTP/HttpListener/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/HTTP/HttpListener_Wifi/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/samples/HTTP/HttpWebRequest/Resources/DigiCertGlobalRootCA.crt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/HTTP/HttpWebRequest/Resources/DigiCertGlobalRootCA.crt
--------------------------------------------------------------------------------
/samples/HTTP/HttpWebRequest/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/HTTP/HttpWebRequest_Wifi/Resources/digicertglobalrootca.crt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/HTTP/HttpWebRequest_Wifi/Resources/digicertglobalrootca.crt
--------------------------------------------------------------------------------
/samples/HTTP/HttpWebRequest_Wifi/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/samples/HTTP/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/InfraredRemoteReceiver/InfraredRemoteReceiverSample/Protocol.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | namespace InfraredRemote
7 | {
8 | public enum Protocol
9 | {
10 | Unknown = 0,
11 | Nec = 1,
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/InfraredRemoteReceiver/InfraredRemoteReceiverSample/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/InfraredRemoteReceiver/VS1838.fzz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Hardware.Esp32.Rmt/InfraredRemoteReceiver/VS1838.fzz
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/InfraredRemoteReceiver/VS1838.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Hardware.Esp32.Rmt/InfraredRemoteReceiver/VS1838.png
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/InfraredRemoteReceiver/category.txt:
--------------------------------------------------------------------------------
1 | esp32
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/NeoPixelStrip/NeoPixel/Color.cs:
--------------------------------------------------------------------------------
1 | namespace NeoPixel
2 | {
3 | public class Color
4 | {
5 | public byte B;
6 | public byte G;
7 | public byte R;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/NeoPixelStrip/NeoPixel/Program.cs:
--------------------------------------------------------------------------------
1 | namespace NeoPixel
2 | {
3 | public class Program
4 | {
5 | private const int GpioPin = 5;
6 | private const int Size = 50;
7 | private static readonly Color RedColor = new Color { R = 255 };
8 | private static readonly Color BlackColor = new Color();
9 |
10 | public static void Main()
11 | {
12 | var chain = new NeopixelChain(GpioPin, Size);
13 |
14 | while (true)
15 | {
16 | for (uint i = 0; i < Size; i++)
17 | {
18 | chain[i] = RedColor;
19 | chain.Update();
20 | chain[i] = BlackColor;
21 | }
22 | }
23 | }
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/NeoPixelStrip/NeoPixel/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/NeoPixelStrip/category.txt:
--------------------------------------------------------------------------------
1 | esp32
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/NeoPixelStripLowMemory/NeoPixel/Program.cs:
--------------------------------------------------------------------------------
1 | namespace NeoPixel
2 | {
3 | public class Program
4 | {
5 | private const byte GpioPin = 5;
6 | private const ushort Size = 300;
7 |
8 | public static void Main()
9 | {
10 | var chain = new NeopixelChain(GpioPin, Size);
11 |
12 | while (true)
13 | {
14 | chain.MovePixel();
15 | }
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/NeoPixelStripLowMemory/NeoPixel/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/NeoPixelStripLowMemory/category.txt:
--------------------------------------------------------------------------------
1 | esp32
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/Ultrasonic/category.txt:
--------------------------------------------------------------------------------
1 | esp32
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/Ultrasonic/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Hardware.Esp32.Rmt/category.txt:
--------------------------------------------------------------------------------
1 | esp32
--------------------------------------------------------------------------------
/samples/Hardware.Esp32/category.txt:
--------------------------------------------------------------------------------
1 | esp32
--------------------------------------------------------------------------------
/samples/Hardware.Esp32/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Hardware.GiantGecko/GiantGecko.PowerMode/category.txt:
--------------------------------------------------------------------------------
1 | ggecko
--------------------------------------------------------------------------------
/samples/Hardware.GiantGecko/GiantGecko.PowerMode/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Hardware.GiantGecko/GiantGecko.ReadDeviceIDs/category.txt:
--------------------------------------------------------------------------------
1 | stm32
--------------------------------------------------------------------------------
/samples/Hardware.GiantGecko/GiantGecko.ReadDeviceIDs/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/Hardware.GiantGecko/category.txt:
--------------------------------------------------------------------------------
1 | ggecko
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.BackupMemory/category.txt:
--------------------------------------------------------------------------------
1 | stm32
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.BackupMemory/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.PowerMode/Stm32.PowerMode.previous.nugetreferenceswitcher:
--------------------------------------------------------------------------------
1 | nanoFramework.Hardware.Stm32 ../../../../nflib-nanoFramework.Hardware.Stm32/source/nanoFramework.Hardware.Stm32/nanoFramework.Hardware.Stm32.nfproj ../packages/nanoFramework.Hardware.Stm32.1.0.2/lib/nanoFramework.Hardware.Stm32.dll
2 |
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.PowerMode/category.txt:
--------------------------------------------------------------------------------
1 | stm32
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.PowerMode/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.ReadDeviceIDs/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 | using System.Diagnostics;
8 | using System.Threading;
9 | using STM32 = nanoFramework.Hardware.Stm32;
10 |
11 | namespace Stm32.ReadDeviceIDs
12 | {
13 | public class Program
14 | {
15 | public static void Main()
16 | {
17 | string uniqueDeviceId = "";
18 |
19 | foreach(byte b in STM32.Utilities.UniqueDeviceId)
20 | {
21 | uniqueDeviceId += b.ToString("X2");
22 | }
23 |
24 | Debug.WriteLine($"Unique device ID: {uniqueDeviceId}");
25 |
26 | Debug.WriteLine($"Device identifier: { STM32.Utilities.DeviceId.ToString("X4")}");
27 |
28 | Debug.WriteLine($"Device revision identifier: { STM32.Utilities.DeviceRevisionId.ToString("X4")}");
29 |
30 | Thread.Sleep(Timeout.Infinite);
31 | }
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.ReadDeviceIDs/category.txt:
--------------------------------------------------------------------------------
1 | stm32
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.ReadDeviceIDs/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.TestAlarms/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 | using System.Diagnostics;
8 | using System.Threading;
9 | using STM32 = nanoFramework.Hardware.Stm32;
10 |
11 | namespace Stm32.TestAlarms
12 | {
13 | public class Program
14 | {
15 | public static void Main()
16 | {
17 | DateTime alarmTime = new DateTime(2018, 10, 29, 23, 30, 15);
18 |
19 | Debug.WriteLine($"Set alarm time to {alarmTime.ToString("u")}");
20 |
21 | STM32.RTC.SetAlarm(alarmTime);
22 |
23 | // wait a couple of seconds...
24 | Thread.Sleep(2000);
25 |
26 | // read back alarm time
27 | DateTime alarmTimeReadBack = STM32.RTC.GetAlarm();
28 |
29 | Debug.WriteLine($"Alarm was set to {alarmTimeReadBack.ToString("u")}");
30 |
31 | Thread.Sleep(Timeout.Infinite);
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.TestAlarms/category.txt:
--------------------------------------------------------------------------------
1 | stm32
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/Stm32.TestAlarms/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/Hardware.Stm32/category.txt:
--------------------------------------------------------------------------------
1 | stm32
--------------------------------------------------------------------------------
/samples/Hardware.TI/TI.PowerMode/category.txt:
--------------------------------------------------------------------------------
1 | ti
--------------------------------------------------------------------------------
/samples/Hardware.TI/TI.PowerMode/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/Hardware.TI/TI.Utilities/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System.Diagnostics;
7 | using System.Threading;
8 | using TIUtilities = nanoFramework.Hardware.TI.Utilities;
9 |
10 | namespace Hardware.TI.Utilities
11 | {
12 | public class Program
13 | {
14 | public static void Main()
15 | {
16 | string devideAddress = "";
17 | byte[] ieeeAddress = TIUtilities.GetIeeeAddress();
18 |
19 | foreach (byte b in ieeeAddress)
20 | {
21 | devideAddress += b.ToString("X2");
22 | }
23 |
24 | Debug.WriteLine($"Device IEEE address: {devideAddress}");
25 |
26 | Thread.Sleep(Timeout.Infinite);
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/samples/Hardware.TI/TI.Utilities/category.txt:
--------------------------------------------------------------------------------
1 | ti
--------------------------------------------------------------------------------
/samples/Hardware.TI/TI.Utilities/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/Hardware.TI/category.txt:
--------------------------------------------------------------------------------
1 | ti
--------------------------------------------------------------------------------
/samples/Hosting/Logging/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using Microsoft.Extensions.Hosting;
7 | using Microsoft.Extensions.Logging;
8 |
9 | namespace nanoFramework.Logging
10 | {
11 | public class Program
12 | {
13 | public static void Main()
14 | {
15 | IHost host = CreateHostBuilder().Build();
16 |
17 | host.StartAsync();
18 | host.StopAsync();
19 | }
20 |
21 | public static IHostBuilder CreateHostBuilder() =>
22 | Host.CreateDefaultBuilder()
23 | .ConfigureServices(services =>
24 | {
25 | services.AddLogging(LogLevel.Debug);
26 | services.AddHostedService(typeof(LoggingService));
27 | });
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/samples/Hosting/Logging/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Hosting/SensorQueue/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using Microsoft.Extensions.DependencyInjection;
7 | using Microsoft.Extensions.Hosting;
8 |
9 | namespace Hosting
10 | {
11 | public class Program
12 | {
13 | public static void Main()
14 | {
15 | var host = CreateHostBuilder().Build();
16 | host.Run();
17 | }
18 |
19 | public static IHostBuilder CreateHostBuilder() =>
20 | Host.CreateDefaultBuilder()
21 | .ConfigureServices(services =>
22 | {
23 | services.AddSingleton(typeof(BackgroundQueue));
24 | services.AddHostedService(typeof(SensorService));
25 | services.AddHostedService(typeof(DisplayService));
26 | services.AddHostedService(typeof(MonitorService));
27 | });
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/samples/Hosting/SensorQueue/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Hosting/Simple/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/Hosting/SlowBlink/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using Microsoft.Extensions.DependencyInjection;
7 | using Microsoft.Extensions.Hosting;
8 |
9 | namespace Hosting
10 | {
11 | public class Program
12 | {
13 | public static void Main()
14 | {
15 | IHostBuilder hostBuilder = CreateHostBuilder();
16 | IHost host = hostBuilder.Build();
17 |
18 | // starts application and blocks the main calling thread
19 | host.Run();
20 | }
21 |
22 | public static IHostBuilder CreateHostBuilder() =>
23 | Host.CreateDefaultBuilder()
24 | .ConfigureServices(services =>
25 | {
26 | services.AddSingleton(typeof(IHardwareService), typeof(HardwareService));
27 | services.AddHostedService(typeof(LedService));
28 | });
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/samples/Hosting/SlowBlink/Services/HardwareService.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 | using System.Device.Gpio;
8 |
9 | namespace Hosting
10 | {
11 | internal class HardwareService : IHardwareService, IDisposable
12 | {
13 | private readonly GpioController _gpioController;
14 |
15 | public HardwareService()
16 | {
17 | _gpioController = new GpioController();
18 | }
19 |
20 | public GpioController GpioController { get { return _gpioController; } }
21 |
22 | public void Dispose()
23 | {
24 | _gpioController.Dispose();
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/samples/Hosting/SlowBlink/Services/IHardwareService.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System.Device.Gpio;
7 |
8 | namespace Hosting
9 | {
10 | public interface IHardwareService
11 | {
12 | GpioController GpioController { get; }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/Hosting/SlowBlink/Services/LedService.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System.Threading;
7 | using System.Device.Gpio;
8 | using Microsoft.Extensions.Hosting;
9 |
10 | namespace Hosting
11 | {
12 | internal class LedService : BackgroundService
13 | {
14 | private readonly IHardwareService _hardware;
15 |
16 | public LedService(IHardwareService hardware)
17 | {
18 | _hardware = hardware;
19 | }
20 |
21 | protected override void ExecuteAsync(CancellationToken cancellationToken)
22 | {
23 | var ledPin = 16;
24 |
25 | GpioPin led = _hardware.GpioController.OpenPin(ledPin, PinMode.Output);
26 |
27 | while (!cancellationToken.IsCancellationRequested)
28 | {
29 | led.Toggle();
30 | Thread.Sleep(1000);
31 | }
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/samples/Hosting/SlowBlink/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/Hosting/category.txt:
--------------------------------------------------------------------------------
1 | tools
--------------------------------------------------------------------------------
/samples/I2C/I2cMasterSlave/I2cMasterDevice/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System.Reflection;
7 | using System.Runtime.InteropServices;
8 |
9 | // General Information about an assembly is controlled through the following
10 | // set of attributes. Change these attribute values to modify the information
11 | // associated with an assembly.
12 | [assembly: AssemblyTitle("CSharp.I2cMasterDevice")]
13 |
14 | // Setting ComVisible to false makes the types in this assembly not visible
15 | // to COM components. If you need to access a type in this assembly from
16 | // COM, set the ComVisible attribute to true on that type.
17 | [assembly: ComVisible(false)]
18 |
--------------------------------------------------------------------------------
/samples/I2C/I2cMasterSlave/I2cMasterDevice/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/I2C/I2cMasterSlave/I2cSlaveDevice/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System.Reflection;
7 | using System.Runtime.InteropServices;
8 |
9 | // General Information about an assembly is controlled through the following
10 | // set of attributes. Change these attribute values to modify the information
11 | // associated with an assembly.
12 | [assembly: AssemblyTitle("CSharp.I2cSlaveDevice")]
13 |
14 | // Setting ComVisible to false makes the types in this assembly not visible
15 | // to COM components. If you need to access a type in this assembly from
16 | // COM, set the ComVisible attribute to true on that type.
17 | [assembly: ComVisible(false)]
18 |
--------------------------------------------------------------------------------
/samples/I2C/I2cMasterSlave/I2cSlaveDevice/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/I2C/NanoI2cScanner/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/I2C/NanoI2cScanner/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/I2C/System.Device.I2c/GPS/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/I2C/System.Device.I2c/GPS/nanoframework.Samples.GPS/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/I2C/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/I2S/Input/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/I2S/Input/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/I2S/Output/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/I2S/Output/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/I2S/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/I2S/wav/Variation-CLJ013901.wav:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/I2S/wav/Variation-CLJ013901.wav
--------------------------------------------------------------------------------
/samples/Interop/awesome-library/Math.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.CompilerServices;
3 |
4 | namespace NF.AwesomeLib
5 | {
6 | public class Math
7 | {
8 | ///
9 | /// Crunches value through a super complicated and secret calculation algorithm.
10 | ///
11 | /// Value to crunch.
12 | ///
13 | public double SuperComplicatedCalculation(double value)
14 | {
15 | return NativeSuperComplicatedCalculation(value);
16 | }
17 |
18 | #region Stubs
19 |
20 | [MethodImpl(MethodImplOptions.InternalCall)]
21 | private static extern double NativeSuperComplicatedCalculation(double value);
22 |
23 | #endregion stubs
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/samples/Interop/awesome-library/Stubs/NF.AwesomeLib/NF_AwesomeLib.cpp:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | //
3 | // ** DO NOT EDIT THIS FILE! **
4 | // This file was generated by a tool
5 | // re-running the tool will overwrite this file.
6 | //
7 | //-----------------------------------------------------------------------------
8 |
9 | #include "NF_AwesomeLib.h"
10 |
11 | // clang-format off
12 |
13 | static const CLR_RT_MethodHandler method_lookup[] =
14 | {
15 | NULL,
16 | NULL,
17 | Library_NF_AwesomeLib_NF_AwesomeLib_Math::NativeSuperComplicatedCalculation___STATIC__R8__R8,
18 | NULL,
19 | NULL,
20 | Library_NF_AwesomeLib_NF_AwesomeLib_Utilities::NativeGetHardwareSerial___STATIC__VOID__SZARRAY_U1,
21 | };
22 |
23 | const CLR_RT_NativeAssemblyData g_CLR_AssemblyNative_NF_AwesomeLib =
24 | {
25 | "NF.AwesomeLib",
26 | 0xEE794AFB,
27 | method_lookup,
28 | { 1, 0, 0, 0 }
29 | };
30 |
31 | // clang-format on
32 |
--------------------------------------------------------------------------------
/samples/Interop/awesome-library/Stubs/NF.AwesomeLib/NF_AwesomeLib.h:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | //
3 | // ** DO NOT EDIT THIS FILE! **
4 | // This file was generated by a tool
5 | // re-running the tool will overwrite this file.
6 | //
7 | //-----------------------------------------------------------------------------
8 |
9 | #ifndef _NF_AWESOMELIB_H_
10 | #define _NF_AWESOMELIB_H_
11 |
12 | #include
13 | #include
14 | #include
15 |
16 | struct Library_NF_AwesomeLib_NF_AwesomeLib_Math
17 | {
18 | NANOCLR_NATIVE_DECLARE(NativeSuperComplicatedCalculation___STATIC__R8__R8);
19 |
20 | //--//
21 |
22 | };
23 |
24 | struct Library_NF_AwesomeLib_NF_AwesomeLib_Utilities
25 | {
26 | static const int FIELD_STATIC___hardwareSerial = 0;
27 |
28 | NANOCLR_NATIVE_DECLARE(NativeGetHardwareSerial___STATIC__VOID__SZARRAY_U1);
29 |
30 | //--//
31 |
32 | };
33 |
34 | extern const CLR_RT_NativeAssemblyData g_CLR_AssemblyNative_NF_AwesomeLib;
35 |
36 | #endif //_NF_AWESOMELIB_H_
37 |
--------------------------------------------------------------------------------
/samples/Interop/awesome-library/Stubs/NF.AwesomeLib/NF_AwesomeLib_NF_AwesomeLib_Math_mshl.cpp:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | //
3 | // ** DO NOT EDIT THIS FILE! **
4 | // This file was generated by a tool
5 | // re-running the tool will overwrite this file.
6 | //
7 | //-----------------------------------------------------------------------------
8 |
9 | #include "NF_AwesomeLib.h"
10 | #include "NF_AwesomeLib_NF_AwesomeLib_Math.h"
11 |
12 | using namespace NF_AwesomeLib::NF_AwesomeLib;
13 |
14 |
15 | HRESULT Library_NF_AwesomeLib_NF_AwesomeLib_Math::NativeSuperComplicatedCalculation___STATIC__R8__R8( CLR_RT_StackFrame& stack )
16 | {
17 | NANOCLR_HEADER(); hr = S_OK;
18 | {
19 |
20 | double param0;
21 | NANOCLR_CHECK_HRESULT( Interop_Marshal_double( stack, 0, param0 ) );
22 |
23 | double retValue = Math::NativeSuperComplicatedCalculation( param0, hr );
24 | NANOCLR_CHECK_HRESULT( hr );
25 | SetResult_double( stack, retValue );
26 | }
27 | NANOCLR_NOCLEANUP();
28 | }
29 |
--------------------------------------------------------------------------------
/samples/Interop/awesome-library/Stubs/NF.AwesomeLib/NF_AwesomeLib_NF_AwesomeLib_Utilities_mshl.cpp:
--------------------------------------------------------------------------------
1 | //-----------------------------------------------------------------------------
2 | //
3 | // ** DO NOT EDIT THIS FILE! **
4 | // This file was generated by a tool
5 | // re-running the tool will overwrite this file.
6 | //
7 | //-----------------------------------------------------------------------------
8 |
9 | #include "NF_AwesomeLib.h"
10 | #include "NF_AwesomeLib_NF_AwesomeLib_Utilities.h"
11 |
12 | using namespace NF_AwesomeLib::NF_AwesomeLib;
13 |
14 |
15 | HRESULT Library_NF_AwesomeLib_NF_AwesomeLib_Utilities::NativeGetHardwareSerial___STATIC__VOID__SZARRAY_U1( CLR_RT_StackFrame& stack )
16 | {
17 | NANOCLR_HEADER(); hr = S_OK;
18 | {
19 |
20 | CLR_RT_TypedArray_UINT8 param0;
21 | NANOCLR_CHECK_HRESULT( Interop_Marshal_UINT8_ARRAY( stack, 0, param0 ) );
22 |
23 | Utilities::NativeGetHardwareSerial( param0, hr );
24 | NANOCLR_CHECK_HRESULT( hr );
25 |
26 | }
27 | NANOCLR_NOCLEANUP();
28 | }
29 |
--------------------------------------------------------------------------------
/samples/Interop/awesome-library/Utilities.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Runtime.CompilerServices;
3 |
4 | namespace NF.AwesomeLib
5 | {
6 | public class Utilities
7 | {
8 | private static byte[] _hardwareSerial;
9 |
10 | ///
11 | /// Gets the hardware unique serial ID (12 bytes).
12 | ///
13 | public static byte[] HardwareSerial
14 | {
15 | get
16 | {
17 | if (_hardwareSerial == null)
18 | {
19 | _hardwareSerial = new byte[12];
20 | NativeGetHardwareSerial(_hardwareSerial);
21 | }
22 |
23 | return _hardwareSerial;
24 | }
25 | }
26 |
27 | #region Stubs
28 |
29 | [MethodImpl(MethodImplOptions.InternalCall)]
30 | private static extern void NativeGetHardwareSerial(byte[] data);
31 |
32 | #endregion stubs
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/samples/Interop/awesome-library/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Interop/category.txt:
--------------------------------------------------------------------------------
1 | interop
2 | system
--------------------------------------------------------------------------------
/samples/Interop/test-application/Program.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Diagnostics;
3 | using System.Threading;
4 | using NF.AwesomeLib;
5 |
6 | namespace Test.Interop
7 | {
8 | public class Program
9 | {
10 | public static void Main()
11 | {
12 | // testing cpu serial number
13 | string serialNumber = "";
14 |
15 | foreach (byte b in Utilities.HardwareSerial)
16 | {
17 | serialNumber += b.ToString("X2");
18 | }
19 |
20 | Debug.WriteLine("cpu serial number: " + serialNumber);
21 |
22 | // test complicated calculation
23 | NF.AwesomeLib.Math math = new NF.AwesomeLib.Math();
24 | double result = math.SuperComplicatedCalculation(11.12);
25 |
26 | Debug.WriteLine("calculation result: " + result);
27 |
28 | Thread.Sleep(Timeout.Infinite);
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/samples/Interop/test-application/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Json/JsonConfigurationStore/Configuration.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | namespace JsonConfigurationStore
7 | {
8 | public class Configuration
9 | {
10 | public string SerialNumber { get; set; }
11 | public string ModelNumber { get; set; }
12 |
13 | public string Setting1 { get; set; }
14 | public string Setting2 { get; set; }
15 | public string Setting3 { get; set; }
16 | public string Setting4 { get; set; }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/samples/Json/JsonConfigurationStore/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/Json/category.txt:
--------------------------------------------------------------------------------
1 | json
--------------------------------------------------------------------------------
/samples/Logging/MyTestComponent.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 | using Microsoft.Extensions.Logging;
8 | using nanoFramework.Logging;
9 |
10 | namespace Logging
11 | {
12 | internal class MyTestComponent
13 | {
14 | private readonly ILogger _logger;
15 |
16 | public MyTestComponent()
17 | {
18 | _logger = this.GetCurrentClassLogger();
19 | }
20 |
21 | public void DoSomeLogging()
22 | {
23 | _logger.LogInformation("An informative message");
24 | _logger.LogError("An error situation");
25 | _logger.LogWarning(new Exception("Something is not supported"), "With exception context");
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/samples/Logging/category.txt:
--------------------------------------------------------------------------------
1 | tools
--------------------------------------------------------------------------------
/samples/MQTT/AdvancedExample.Aws/Resources/AwsCAroot.der:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/MQTT/AdvancedExample.Aws/Resources/AwsCAroot.der
--------------------------------------------------------------------------------
/samples/MQTT/AdvancedExample.Azure/StringExtensions.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | namespace System
7 | {
8 | public static class StringExtensions
9 | {
10 | public static bool StartsWith(this string s, string value)
11 | {
12 | return s.IndexOf(value) == 0;
13 | }
14 |
15 | public static bool Contains(this string s, string value)
16 | {
17 | return s.IndexOf(value) > 0;
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/samples/MQTT/AdvancedExample.Certificates/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/MQTT/BasicExample.Ethernet/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/MQTT/BasicExample.WiFi/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/samples/MQTT/category.txt:
--------------------------------------------------------------------------------
1 | mqtt
2 | networking
--------------------------------------------------------------------------------
/samples/ManagedResources/Resources/nano-Framework-logo-32-border-trans.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/ManagedResources/Resources/nano-Framework-logo-32-border-trans.png
--------------------------------------------------------------------------------
/samples/ManagedResources/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/ManagedResources/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/NativeEvents/category.txt:
--------------------------------------------------------------------------------
1 | system
2 | interop
--------------------------------------------------------------------------------
/samples/NativeEvents/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/Networking/Socket.Client/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/Networking/Socket.Client_WiFi/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/Networking/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/NumberParser/DesktopNumberParserTest/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/NumberParser/NumberParserTest/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/NumberParser/NumberParserTestShared/TestBase.cs:
--------------------------------------------------------------------------------
1 | // Licensed to the .NET Foundation under one or more agreements.
2 | // The .NET Foundation licenses this file to you under the MIT license.
3 |
4 | namespace NumberParserTestShared
5 | {
6 | public abstract class TestBase
7 | {
8 | public string InputString { get; set; }
9 | public bool ThrowsException { get; set; }
10 |
11 | public object Result { get; set; }
12 |
13 | protected TestBase(string inputString, bool throwsException = false)
14 | {
15 | InputString = inputString;
16 | ThrowsException = throwsException;
17 | }
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/samples/NumberParser/README.Desktop.md:
--------------------------------------------------------------------------------
1 | These projects are the Destktop equivalents of the nanoFramework ones.
2 | Used to test number parsing.
3 |
--------------------------------------------------------------------------------
/samples/NumberParser/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/OpenThread/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/PWM/System.Device.Pwm/category.txt:
--------------------------------------------------------------------------------
1 | device
2 | beginner
--------------------------------------------------------------------------------
/samples/PWM/System.Device.Pwm/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/PWM/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/RTC/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 |
7 | using nanoFramework.Runtime.Native;
8 | using System;
9 | using System.Diagnostics;
10 | using System.Threading;
11 |
12 | namespace RTCSample
13 | {
14 | public class Program
15 | {
16 | public static void Main()
17 | {
18 | Debug.WriteLine("system time is: " + DateTime.UtcNow);
19 |
20 | // set RTC
21 | Rtc.SetSystemTime(new DateTime(2018, 2, 28, 10, 20, 30));
22 |
23 | Debug.WriteLine("system time is: " + DateTime.UtcNow);
24 |
25 | Thread.Sleep(Timeout.Infinite);
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/samples/RTC/category.txt:
--------------------------------------------------------------------------------
1 | rtc
--------------------------------------------------------------------------------
/samples/RTC/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/Reflection/CustomAttributes.Shared/AuthorAttribute.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 |
8 | namespace Reflection.CustomAttributes
9 | {
10 | public class AuthorAttribute : Attribute
11 | {
12 | private readonly string _author;
13 |
14 | public string Author => _author;
15 |
16 | public AuthorAttribute(string author)
17 | {
18 | _author = author;
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/samples/Reflection/CustomAttributes.Shared/ComplexAttribute.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 |
8 | namespace Reflection.CustomAttributes
9 | {
10 | public class ComplexAttribute : Attribute
11 | {
12 | private readonly uint _max;
13 | private readonly string _s;
14 | private readonly bool _b;
15 |
16 | public uint Max => _max;
17 |
18 | public string S => _s;
19 | public bool B => _b;
20 |
21 | public ComplexAttribute(uint m, string s, bool b)
22 | {
23 | _max = m;
24 | _s = s;
25 | _b = b;
26 | }
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/samples/Reflection/CustomAttributes.Shared/DataRowAttribute.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 |
8 | namespace Reflection.CustomAttributes
9 | {
10 | [AttributeUsage(AttributeTargets.Method, AllowMultiple = true)]
11 | public class DataRowAttribute : Attribute
12 | {
13 | public DataRowAttribute(params object[] args)
14 | {
15 | Arguments = args;
16 | }
17 |
18 | public object[] Arguments { get; }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/samples/Reflection/CustomAttributes.Shared/IgnoreAttribute.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 |
8 | namespace Reflection.CustomAttributes
9 | {
10 | [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method | AttributeTargets.Field | AttributeTargets.Property)]
11 | public sealed class IgnoreAttribute : Attribute
12 | {
13 | public IgnoreAttribute() : this(null)
14 | {
15 | }
16 |
17 | public IgnoreAttribute(string ignoreMessage)
18 | {
19 | IgnoreMessage = ignoreMessage;
20 | }
21 |
22 | private string _ignoreMessage;
23 |
24 | public string IgnoreMessage
25 | {
26 | get
27 | {
28 | return _ignoreMessage;
29 | }
30 |
31 | set
32 | {
33 | _ignoreMessage = value;
34 | }
35 | }
36 | }
37 | }
38 |
--------------------------------------------------------------------------------
/samples/Reflection/CustomAttributes.Shared/MaxAttribute.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 |
8 | namespace Reflection.CustomAttributes
9 | {
10 | public class MaxAttribute : Attribute
11 | {
12 | private readonly uint _max;
13 |
14 | public uint Max => _max;
15 |
16 | public MaxAttribute(uint m)
17 | {
18 | _max = m;
19 | }
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/samples/Reflection/CustomAttributes.Shared/MyAttribute.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 |
8 | namespace Reflection.CustomAttributes
9 | {
10 | [AttributeUsage(AttributeTargets.All)]
11 | public class Attribute1Attribute : Attribute
12 | {
13 | }
14 |
15 | [AttributeUsage(AttributeTargets.All)]
16 | public class Attribute2Attribute : Attribute
17 | {
18 | }
19 |
20 | [AttributeUsage(AttributeTargets.All)]
21 | public class Attribute3Attribute : Attribute
22 | {
23 | }
24 |
25 | [AttributeUsage(AttributeTargets.All)]
26 | public class Attribute4Attribute : Attribute
27 | {
28 | }
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/samples/Reflection/CustomAttributes/CustomAttributes.previous.nugetreferenceswitcher:
--------------------------------------------------------------------------------
1 | CoreLibrary ../../../nflib-CoreLibrary/source/CoreLibrary.nfproj ../packages/nanoFramework.CoreLibrary.1.0.0-preview073/lib/mscorlib.dll
2 |
--------------------------------------------------------------------------------
/samples/Reflection/CustomAttributes/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Reflection/README.Desktop.md:
--------------------------------------------------------------------------------
1 | These projects are the Destktop equivalents of the nanoFramework ones.
2 | Used to cross check results.
3 |
--------------------------------------------------------------------------------
/samples/Reflection/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/SPI/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/SPI/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/samples/SSL/1024b-rsa-example-cert.der:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/SSL/1024b-rsa-example-cert.der
--------------------------------------------------------------------------------
/samples/SSL/1024b-rsa-example-cert.pem:
--------------------------------------------------------------------------------
1 | -----BEGIN CERTIFICATE-----
2 | MIICVjCCAb8CAg37MA0GCSqGSIb3DQEBBQUAMIGbMQswCQYDVQQGEwJKUDEOMAwG
3 | A1UECBMFVG9reW8xEDAOBgNVBAcTB0NodW8ta3UxETAPBgNVBAoTCEZyYW5rNERE
4 | MRgwFgYDVQQLEw9XZWJDZXJ0IFN1cHBvcnQxGDAWBgNVBAMTD0ZyYW5rNEREIFdl
5 | YiBDQTEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBmcmFuazRkZC5jb20wHhcNMTIw
6 | ODIyMDUyNzIzWhcNMTcwODIxMDUyNzIzWjBKMQswCQYDVQQGEwJKUDEOMAwGA1UE
7 | CAwFVG9reW8xETAPBgNVBAoMCEZyYW5rNEREMRgwFgYDVQQDDA93d3cuZXhhbXBs
8 | ZS5jb20wgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAMYBBrx5PlP0WNI/ZdzD
9 | +6Pktmurn+F2kQYbtc7XQh8/LTBvCo+P6iZoLEmUA9e7EXLRxgU1CVqeAi7QcAn9
10 | MwBlc8ksFJHB0rtf9pmf8Oza9E0Bynlq/4/Kb1x+d+AyhL7oK9tQwB24uHOueHi1
11 | C/iVv8CSWKiYe6hzN1txYe8rAgMBAAEwDQYJKoZIhvcNAQEFBQADgYEAASPdjigJ
12 | kXCqKWpnZ/Oc75EUcMi6HztaW8abUMlYXPIgkV2F7YanHOB7K4f7OOLjiz8DTPFf
13 | jC9UeuErhaA/zzWi8ewMTFZW/WshOrm3fNvcMrMLKtH534JKvcdMg6qIdjTFINIr
14 | evnAhf0cwULaebn+lMs8Pdl7y37+sfluVok=
15 | -----END CERTIFICATE-----
16 |
--------------------------------------------------------------------------------
/samples/SSL/2048b-rsa-example-cert.der:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/SSL/2048b-rsa-example-cert.der
--------------------------------------------------------------------------------
/samples/SSL/512b-rsa-example-cert.der:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/SSL/512b-rsa-example-cert.der
--------------------------------------------------------------------------------
/samples/SSL/512b-rsa-example-cert.pem:
--------------------------------------------------------------------------------
1 | -----BEGIN CERTIFICATE-----
2 | MIICEjCCAXsCAg36MA0GCSqGSIb3DQEBBQUAMIGbMQswCQYDVQQGEwJKUDEOMAwG
3 | A1UECBMFVG9reW8xEDAOBgNVBAcTB0NodW8ta3UxETAPBgNVBAoTCEZyYW5rNERE
4 | MRgwFgYDVQQLEw9XZWJDZXJ0IFN1cHBvcnQxGDAWBgNVBAMTD0ZyYW5rNEREIFdl
5 | YiBDQTEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBmcmFuazRkZC5jb20wHhcNMTIw
6 | ODIyMDUyNjU0WhcNMTcwODIxMDUyNjU0WjBKMQswCQYDVQQGEwJKUDEOMAwGA1UE
7 | CAwFVG9reW8xETAPBgNVBAoMCEZyYW5rNEREMRgwFgYDVQQDDA93d3cuZXhhbXBs
8 | ZS5jb20wXDANBgkqhkiG9w0BAQEFAANLADBIAkEAm/xmkHmEQrurE/0re/jeFRLl
9 | 8ZPjBop7uLHhnia7lQG/5zDtZIUC3RVpqDSwBuw/NTweGyuP+o8AG98HxqxTBwID
10 | AQABMA0GCSqGSIb3DQEBBQUAA4GBABS2TLuBeTPmcaTaUW/LCB2NYOy8GMdzR1mx
11 | 8iBIu2H6/E2tiY3RIevV2OW61qY2/XRQg7YPxx3ffeUugX9F4J/iPnnu1zAxxyBy
12 | 2VguKv4SWjRFoRkIfIlHX0qVviMhSlNy2ioFLy7JcPZb+v3ftDGywUqcBiVDoea0
13 | Hn+GmxZA
14 | -----END CERTIFICATE-----
15 |
--------------------------------------------------------------------------------
/samples/SSL/ParseCertificate/ParseCertificate.previous.nugetreferenceswitcher:
--------------------------------------------------------------------------------
1 | System.Net ../../../../nflib-nanoFramework.System.Net/source/nanoFramework.System.Net/System.Net.nfproj ../packages/nanoFramework.System.Net.1.1.1-preview.18/lib/System.Net.dll
2 | System.Net ../../../../nflib-nanoFramework.System.Net/source/nanoFramework.System.Net/System.Net.nfproj ../packages/nanoFramework.System.Net.1.1.1-preview.18/lib/System.Net.dll
3 | System.Net ../../../../nflib-nanoFramework.System.Net/source/nanoFramework.System.Net/System.Net.nfproj ../packages/nanoFramework.System.Net.1.1.1-preview.18/lib/System.Net.dll
4 |
--------------------------------------------------------------------------------
/samples/SSL/ParseCertificate/Resources/DigiCertGlobalRootCA.cer:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/SSL/ParseCertificate/Resources/DigiCertGlobalRootCA.cer
--------------------------------------------------------------------------------
/samples/SSL/ParseCertificate/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/SSL/SecureClient/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/SSL/SecureClient_WiFi/Resources/DigiCertGlobalRootCA.cer:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/SSL/SecureClient_WiFi/Resources/DigiCertGlobalRootCA.cer
--------------------------------------------------------------------------------
/samples/SSL/SecureClient_WiFi/Resources/DigiCert_Global_G2_Azure.cer:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/SSL/SecureClient_WiFi/Resources/DigiCert_Global_G2_Azure.cer
--------------------------------------------------------------------------------
/samples/SSL/SecureClient_WiFi/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/SSL/SecureServer/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/SSL/SecureServer_WiFi/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/SSL/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/SerialCommunication/SerialCommunication/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/SerialCommunication/category.txt:
--------------------------------------------------------------------------------
1 | device
--------------------------------------------------------------------------------
/samples/System.IO.FileSystem/BasicFileSystemExample/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/System.IO.FileSystem/MountExample/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/System.IO.FileSystem/category.txt:
--------------------------------------------------------------------------------
1 | file
--------------------------------------------------------------------------------
/samples/System.Random/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/System.Random/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/TI.EasyLink/EasyLink.Concentrator/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/samples/TI.EasyLink/EasyLink.Node/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/TI.EasyLink/category.txt:
--------------------------------------------------------------------------------
1 | ti
--------------------------------------------------------------------------------
/samples/Threading/01-Basic Threading/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Threading/02-Passing Parameters/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Threading/03-Retrieving data from threads/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Threading/04-Controlling threads/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Threading/05-ManualResetEvent/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Threading/06-AutoResetEvent/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/Threading/07-Sharing resources/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/Threading/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/Timer/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/Timer/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/ToStringTest/DesktopToStringTesting/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System.Globalization;
7 | using System.Threading;
8 |
9 | namespace ToStringTest
10 | {
11 | class Program
12 | {
13 | static void Main(string[] args)
14 | {
15 | // Change current culture to Invariant culture to match nanoFramework culture setting
16 | CultureInfo dft = Thread.CurrentThread.CurrentCulture;
17 | Thread.CurrentThread.CurrentCulture = CultureInfo.InvariantCulture;
18 |
19 | TestCode.Output();
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/samples/ToStringTest/ToStringTest/Program.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) .NET Foundation and Contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System.Threading;
7 |
8 | namespace ToStringTest
9 | {
10 | public class Program
11 | {
12 | public static void Main()
13 | {
14 | TestCode.Output();
15 |
16 | for (; ; )
17 | {
18 | Thread.Sleep(10000);
19 | }
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/samples/ToStringTest/ToStringTest/ToStringTesting.previous.nugetreferenceswitcher:
--------------------------------------------------------------------------------
1 | CoreLibrary ../../../nflib-CoreLibrary/source/CoreLibrary.nfproj ../packages/nanoFramework.CoreLibrary.1.0.0-preview054/lib/mscorlib.dll
2 |
--------------------------------------------------------------------------------
/samples/ToStringTest/ToStringTest/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/samples/ToStringTest/ToStringTestingShared/ToStringTestingShared.projitems:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
5 | true
6 | 4d808626-c015-4ea6-98a3-22b4958dea37
7 |
8 |
9 | ToStringTestingShared
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/samples/ToStringTest/category.txt:
--------------------------------------------------------------------------------
1 | system
--------------------------------------------------------------------------------
/samples/TouchESP32/category.txt:
--------------------------------------------------------------------------------
1 | esp32
--------------------------------------------------------------------------------
/samples/TouchESP32/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/samples/UdpClient/DumpSSDPRequests/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/UdpClient/QOTDClient/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/UdpClient/UdpEchoServer/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/samples/UdpClient/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/UnitTest/NFUnitTestDemo/nano.runsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | 1
6 | .\TestResults
7 | 120000
8 | net48
9 | x64
10 |
11 |
12 | None
13 | False
14 |
15 |
--------------------------------------------------------------------------------
/samples/UnitTest/NFUnitTestDemo/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/samples/UnitTest/category.txt:
--------------------------------------------------------------------------------
1 | tools
--------------------------------------------------------------------------------
/samples/UsbClient/UsbClient/UsbStream/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/samples/UsbClient/category.txt:
--------------------------------------------------------------------------------
1 | usbclient
--------------------------------------------------------------------------------
/samples/WebSockets/WebSockets.Client.Sample/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/WebSockets/WebSockets.Client.Sample/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/WebSockets/WebSockets.Server.RgbSample/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/WebSockets/Websockets.ServerClient.Sample/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/WebSockets/Websockets.ServerClient.Sample/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/samples/WebSockets/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/Webserver/ServoMotorTester/ServoInformation.cs:
--------------------------------------------------------------------------------
1 | // Copyright (c) .NET Foundation and Contributors
2 | // See LICENSE file in the project root for full license information.
3 |
4 | namespace ServoMotorTester
5 | {
6 | internal class ServoInformation
7 | {
8 | //servo info
9 | public uint MinPulse { get; set; } = 800;
10 | public uint MaxPulse { get; set; } = 2200;
11 | public uint Frequency { get; set; } = 50;
12 | public uint Position { get; set; } = 0;
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/samples/Webserver/ServoMotorTester/category.txt:
--------------------------------------------------------------------------------
1 | networking
2 | device
--------------------------------------------------------------------------------
/samples/Webserver/ServoMotorTester/screen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Webserver/ServoMotorTester/screen.png
--------------------------------------------------------------------------------
/samples/Webserver/WebServer.DI/ITextService.cs:
--------------------------------------------------------------------------------
1 | namespace nanoFramework.WebServer.Sample
2 | {
3 | public interface ITextService
4 | {
5 | string GetText();
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/samples/Webserver/WebServer.DI/ITextServiceSingleton.cs:
--------------------------------------------------------------------------------
1 | namespace nanoFramework.WebServer.Sample
2 | {
3 | public interface ITextServiceSingleton
4 | {
5 | string GetText();
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/samples/Webserver/WebServer.DI/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 |
3 | // General Information about an assembly is controlled through the following
4 | // set of attributes. Change these attribute values to modify the information
5 | // associated with an assembly.
6 | [assembly: AssemblyTitle("WebServer.Sample")]
7 | [assembly: AssemblyCompany("nanoFramework Contributors")]
8 | [assembly: AssemblyProduct("WebServer.Sample")]
9 | [assembly: AssemblyCopyright("Copyright (c) .NET Foundation and Contributors")]
10 |
--------------------------------------------------------------------------------
/samples/Webserver/WebServer.DI/TextService.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2020 Laurent Ellerbach and the project contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 |
8 | namespace nanoFramework.WebServer.Sample
9 | {
10 | internal class TextService : ITextService, ITextServiceSingleton
11 | {
12 | public Guid guid { get; }
13 |
14 | public TextService()
15 | {
16 | guid = Guid.NewGuid();
17 | }
18 |
19 | public string GetText()
20 | {
21 | return guid.ToString();
22 | }
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/samples/Webserver/WebServer.DI/WebServerDi.cs:
--------------------------------------------------------------------------------
1 | //
2 | // Copyright (c) 2020 Laurent Ellerbach and the project contributors
3 | // See LICENSE file in the project root for full license information.
4 | //
5 |
6 | using System;
7 | using System.Net;
8 | using Microsoft.Extensions.DependencyInjection;
9 |
10 | namespace nanoFramework.WebServer.Sample
11 | {
12 | internal class WebServerDi : WebServer
13 | {
14 | private readonly IServiceProvider _serviceProvider;
15 |
16 | public WebServerDi(int port, HttpProtocol protocol, Type[] controllers, IServiceProvider serviceProvider) : base(port, protocol, controllers)
17 | {
18 | _serviceProvider = serviceProvider;
19 | }
20 |
21 | protected override void InvokeRoute(CallbackRoutes route, HttpListenerContext context)
22 | {
23 | route.Callback.Invoke(ActivatorUtilities.CreateInstance(_serviceProvider, route.Callback.DeclaringType), new object[] { new WebServerEventArgs(context) });
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/samples/Webserver/WebServer.Sample/WebServer.Sample.FileSystem/Resources/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Webserver/WebServer.Sample/WebServer.Sample.FileSystem/Resources/favicon.ico
--------------------------------------------------------------------------------
/samples/Webserver/WebServer.Sample/WebServer.Sample/Resources/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Webserver/WebServer.Sample/WebServer.Sample/Resources/favicon.ico
--------------------------------------------------------------------------------
/samples/Webserver/category.txt:
--------------------------------------------------------------------------------
1 | networking
--------------------------------------------------------------------------------
/samples/Webserver/doc/POSTcapture.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/Webserver/doc/POSTcapture.jpg
--------------------------------------------------------------------------------
/samples/WiFiAP/Resources/Images/favicon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/nanoframework/Samples/770c8c71751cc1af2bc7e7c2531af60d16e80151/samples/WiFiAP/Resources/Images/favicon.png
--------------------------------------------------------------------------------
/samples/WiFiAP/category.txt:
--------------------------------------------------------------------------------
1 | networking
2 | wifi
--------------------------------------------------------------------------------
/samples/Wifi/README.zh-cn.md:
--------------------------------------------------------------------------------
1 | 文档语言: [English](README.md) | [简体中文](README.zh-cn.md)
2 |
3 | # 🌶️ - WiFI 示例
4 |
5 | 演示如何使用与Wifi相关的各种api。扫描WiFI网络,连接到指定网络
6 |
7 | ## 硬件要求
8 |
9 | 具有Wifi网络功能的硬件设备,运行nanafrwork映像。
10 |
11 | ## 相关的话题
12 |
13 | ### 引用
14 |
15 | - [System.Device.Wifi](http://docs.nanoframework.net/api/System.Device.Wifi.html)
16 |
17 | ## 构建示例
18 |
19 | 1. 启动Microsoft Visual Studio 2022 (VS 2019应该也可以)并选择 `File > Open > Project/Solution`.
20 | 1. 从解压缩示例/克隆存储库的文件夹开始,转到这个特定示例的子文件夹。双击Visual Studio Solution (.sln)文件。
21 | 1. 按 `Ctrl+Shift+B`, 或选择 `Build > Build Solution`.
22 |
23 | ## 运行示例
24 |
25 | 接下来的步骤取决于您是只想部署示例,还是想同时部署和运行它。
26 |
27 | ### 部署示例
28 |
29 | - 选择 `Build > Deploy Solution`.
30 |
31 | ### 部署和运行示例
32 |
33 | - 要调试示例并运行它,请按F5或选择 `Debug > Start Debugging`.
34 |
35 | > [!NOTE]
36 | >
37 | > **Important**: 在部署或运行示例之前,请确保您的设备在设备资源管理器中可见。
38 | >
39 | > **Tip**: 要显示设备资源管理器,请转到Visual Studio菜单: `View > Other Windows > Device Explorer`.
40 |
--------------------------------------------------------------------------------
/samples/Wifi/ScanWiFi/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/samples/Wifi/category.txt:
--------------------------------------------------------------------------------
1 | networking
2 | wifi
--------------------------------------------------------------------------------