| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
First draft for new ComponentInformation support (#1965) * First draft for new ComponentInformation support * Support SPI busses in ComponentInformation * Implementation of QueryComponentInformation for all core object types * Fix tests (Can have more than one SPI device for the same set of pins) * Disable kernel creation Due to the code changes, the kernel grew to big, will attempt to fix that later * Remove ComponentState.cs, as usage is still unclear * Prevent infinite recursion while iterating the tree In case there's a loop in it * Provide OpenPins list from base class And keep separate list in ManagedGpioController, so we don't need to expose the list. * Fix baseline compatibility errors * Event will eventually be added later * Add comment that this API is subject to change * Add ComponentInformation specifics for FtDevice | 3 年前 | |
LangVersion set globally to 12.0 (#2465) * LangVersion set globally go 12.0 * Small update, remove outdated link * Apply suggestion from @krwq * Apply suggestion from @krwq --------- Co-authored-by: Krzysztof Wicher <mordotymoja@gmail.com> | 8 个月前 | |
Update to .NET 8.0, remove support for older runtimes Remove netstandard2.0 support Drop support for Windows 10 IoT Remove .NET 4.8 build Update version to .NET 8.0 Remove centos docker image from build There's no need to create another VM inside a VM for the build, also the existing centos images don't seem to support .NET 8.0. Update Helix test runs to .NET 8.0 | 1 年前 | |
LangVersion set globally to 12.0 (#2465) * LangVersion set globally go 12.0 * Small update, remove outdated link * Apply suggestion from @krwq * Apply suggestion from @krwq --------- Co-authored-by: Krzysztof Wicher <mordotymoja@gmail.com> | 8 个月前 | |
Make all internal types in Common internal OR public (#1759) This cleans up a few dependency issues between the bindings and the common project. The classes marked internal (including the Interop classes) are now public when building Common.csproj but still internal for the final assembly. This removes the need to link to individual source files outside their binding folders, which causes build problems when they're used from multiple places. | 4 年前 | |
First draft for new ComponentInformation support (#1965) * First draft for new ComponentInformation support * Support SPI busses in ComponentInformation * Implementation of QueryComponentInformation for all core object types * Fix tests (Can have more than one SPI device for the same set of pins) * Disable kernel creation Due to the code changes, the kernel grew to big, will attempt to fix that later * Remove ComponentState.cs, as usage is still unclear * Prevent infinite recursion while iterating the tree In case there's a loop in it * Provide OpenPins list from base class And keep separate list in ManagedGpioController, so we don't need to expose the list. * Fix baseline compatibility errors * Event will eventually be added later * Add comment that this API is subject to change * Add ComponentInformation specifics for FtDevice | 3 年前 | |
| 11 个月前 | ||
First draft for new ComponentInformation support (#1965) * First draft for new ComponentInformation support * Support SPI busses in ComponentInformation * Implementation of QueryComponentInformation for all core object types * Fix tests (Can have more than one SPI device for the same set of pins) * Disable kernel creation Due to the code changes, the kernel grew to big, will attempt to fix that later * Remove ComponentState.cs, as usage is still unclear * Prevent infinite recursion while iterating the tree In case there's a loop in it * Provide OpenPins list from base class And keep separate list in ManagedGpioController, so we don't need to expose the list. * Fix baseline compatibility errors * Event will eventually be added later * Add comment that this API is subject to change * Add ComponentInformation specifics for FtDevice | 3 年前 | |
"Arduino C# Compiler" (#1785) This "compiler" (actually a metadata converter and code analyzer) can take a compiled Iot program written using the Arduino binding and flash it as a standalone application to an ESP32 or similar 32-bit microcontroller. Test and debug your application on the PC using the Arduino binding, and when everything works as expected, just flash it to the ESP32 and run it without the PC. There are still a lot of open ends, but several more-or-less complex programs already work (see the WeatherStation example). Further documentation (both on usage as well as on internals) is still to be written. See Readme for further instructions. | 4 年前 | |
First draft for new ComponentInformation support (#1965) * First draft for new ComponentInformation support * Support SPI busses in ComponentInformation * Implementation of QueryComponentInformation for all core object types * Fix tests (Can have more than one SPI device for the same set of pins) * Disable kernel creation Due to the code changes, the kernel grew to big, will attempt to fix that later * Remove ComponentState.cs, as usage is still unclear * Prevent infinite recursion while iterating the tree In case there's a loop in it * Provide OpenPins list from base class And keep separate list in ManagedGpioController, so we don't need to expose the list. * Fix baseline compatibility errors * Event will eventually be added later * Add comment that this API is subject to change * Add ComponentInformation specifics for FtDevice | 3 年前 | |
First draft for new ComponentInformation support (#1965) * First draft for new ComponentInformation support * Support SPI busses in ComponentInformation * Implementation of QueryComponentInformation for all core object types * Fix tests (Can have more than one SPI device for the same set of pins) * Disable kernel creation Due to the code changes, the kernel grew to big, will attempt to fix that later * Remove ComponentState.cs, as usage is still unclear * Prevent infinite recursion while iterating the tree In case there's a loop in it * Provide OpenPins list from base class And keep separate list in ManagedGpioController, so we don't need to expose the list. * Fix baseline compatibility errors * Event will eventually be added later * Add comment that this API is subject to change * Add ComponentInformation specifics for FtDevice | 3 年前 | |
| 11 个月前 | ||
| 11 个月前 | ||
| 11 个月前 | ||
Board approach, iteration 2 (#1128) * Add possibility to set the alternate pin mode on Raspberry Pis This is a split from PR #1128 * A few members renamed * Changed according discussion * Board class concept, with implementation for existing boards Handles pin management and special pin modes. Is one interface (as well as typically one instance) to keep everything together. * Extra GPIO drivers, used for testing DummyGpioDriver is a driver that has no pins, but can be instantiated regardless of any hardware support. KeyboardGpioDriver is a driver that uses the keyboard as GPIO "pins". * Separate tests for hardware and software CS for SPI. * Update src/devices/Board/Board.cs Co-authored-by: Krzysztof Wicher <mordotymoja@gmail.com> * Change AlternatePinMode to class, so that it is extensible * Remove pinAssignment capability from GpioController for now Might be interfering with the proposed IGpioPin approach * Fix unit tests * That test was quite pointless. Now it fails (will fix later) * Rebase on latest proposed low-level implementation * Some nullability fixes * Add documentation * Add documentation * Some missing headers, again * Add AnalogOut as valid usage * Replace I2cDeviceManager with I2cBus, per #1335 * Adjustments to new I2cBus class * Add I2cBus scan function * Fix comment * Properly use the I2cBus Make I2cBusManager a wrapper around it * Fix unit test * Logging will be provided in separate PR * Minor review comments addressed * Changed AlternatePinMode -> ExtendedPinMode, splitted up to base class and driver-specific implementation * Missing core changes * Adaptions to latest core interfaces * Remove now duplicate change * Add Board as base class of existing ArduinoBoard * Fix unit test (Initialize is not public) * Remove support for physical numbering scheme Adds complexity to the API for a rarely used feature. * Clean up usage in samples * Clean up Board creation * Minor cleanup * Move implementation to base * Remove unused functions Co-authored-by: Krzysztof Wicher <mordotymoja@gmail.com> | 5 年前 | |
First draft for new ComponentInformation support (#1965) * First draft for new ComponentInformation support * Support SPI busses in ComponentInformation * Implementation of QueryComponentInformation for all core object types * Fix tests (Can have more than one SPI device for the same set of pins) * Disable kernel creation Due to the code changes, the kernel grew to big, will attempt to fix that later * Remove ComponentState.cs, as usage is still unclear * Prevent infinite recursion while iterating the tree In case there's a loop in it * Provide OpenPins list from base class And keep separate list in ManagedGpioController, so we don't need to expose the list. * Fix baseline compatibility errors * Event will eventually be added later * Add comment that this API is subject to change * Add ComponentInformation specifics for FtDevice | 3 年前 | |
Only check internal markdown links, plus a few stable sites (#2021) Only check internal markdown links, plus a few stable sites | 3 年前 | |
LibGpiodV2 is no longer experimental (#2482) * Remove some strange Unicode characters from file * Remove some obsolete error messages * LibGpiodV2Driver and all it's subclasses are no longer experimental * Remove some more experimental flags, update documentation | 7 个月前 | |
First draft for new ComponentInformation support (#1965) * First draft for new ComponentInformation support * Support SPI busses in ComponentInformation * Implementation of QueryComponentInformation for all core object types * Fix tests (Can have more than one SPI device for the same set of pins) * Disable kernel creation Due to the code changes, the kernel grew to big, will attempt to fix that later * Remove ComponentState.cs, as usage is still unclear * Prevent infinite recursion while iterating the tree In case there's a loop in it * Provide OpenPins list from base class And keep separate list in ManagedGpioController, so we don't need to expose the list. * Fix baseline compatibility errors * Event will eventually be added later * Add comment that this API is subject to change * Add ComponentInformation specifics for FtDevice | 3 年前 | |
| 11 个月前 | ||
| 11 个月前 | ||
Regenerate device listing (#1592) * Regenerate device listing * adjust categories for firmata and board abstraction | 5 年前 |
Board abstraction
A "board" is a piece of hardware that offers low-level interfaces to other devices. Typically, it has GPIO pins and one or multiple SPI or I2C busses. There should be exactly one instance of a board class per hardware component in an application, but it is possible to work with multiple boards at once (i.e. when having a GPIO expander connected to the Raspberry Pi).
using Board b = Board.Create();
using GpioController controller = b.CreateGpioController();
controller.OpenPin(1);
// ...
using bus = b.CreateOrGetI2cBus(1);
// ...