Package: edgepi-python-sdk
EdgePi is a DIN rail-mounted, Raspberry Pi 4 industrial PC with the features of a Programmable Logic Controller (PLC), and Internet of Things (IoT) cloud edge device. Visitedgepi.comfor more information.EdgePi SDKUse our user-friendly Python SDK to control the EdgePi hardware with just a few lines of simple Python Code.How to Use EdgePi SDKHow to InstallThe latest stable release of the EdgePi SDK will be available to be installed via The Python Package Index (PyPi). To install the EdgePi SDK from PyPi via pip, you may use the following command from terminal:$ python3 -m pip install edgepi-python-sdkExample CodeThe EdgePi SDK provides a wide range of functionality to users, allowing interaction with the many modules onboard the EdgePi. One such module, the ADC, can be used to read voltage continuously from any of the eight EdgePi analog input pins:fromedgepi.dac.edgepi_adcimportEdgePiADCfromedgepi.adc.adc_constantsimportADCChannel,ConvMode# initialize ADCedgepi_adc=EdgePiADC()# configure ADC to sample input pin 4 (the input pins are 0-indexed)edgepi_adc.set_config(adc_1_analog_in=ADCChannel.AIN3,conversion_mode=ConvMode.CONTINUOUS)# send command to start automatic conversionsedgepi_adc.start_conversions()# perform 10 voltage readsfor_inrange(10):out=edgepi_adc.read_voltage()print(out)# stop automatic conversionsedgepi_adc.stop_conversions()For further details on this and other modules, please refer to each module's documentation by following the links provided in theImplemented Modulessection below.Implemented ModulesThe EdgePi SDK contains modules intended to represent each connected peripheral device onboard the EdgePi. Below is a directory of the currently available modules.ThermocoupleDigital to Analog Converter (DAC)Analog to Digital Converter (ADC)LED ArrayDigital Input (DIN)Digital Output (DOUT)DevelopmentActive development SDK versions can be accessed from the following resources:Installing from TestPyPiTo install the most recent active development SDK version viaTestPyPi:$ python3 -m pip install -i https://test.pypi.org/simple/edgepi-python-sdkPrevious development SDK versions can also be installed by specifiying the version number:$ python3 -m pip install -i https://test.pypi.org/simple/edgepi-python-sdk==<version-number>Please refer toTestPyPifor available SDK versions.Installing from GitHubTo install the SDK via HTTPS from GitHub:$ python3 -m pip install git+https://github.com/EdgePi-Cloud/edgepi-python-sdk.git@<branch-name>PackagingTo build and publish a new SDK version as a package, a build virtual environment is required. This may be configured as follows:$ cd edgepi-python-sdk

$ python3 -m venv venv_build

$ source venv_build/bin/activate 

$ python3 -m pip install -r requirements_build.txtWith the build environment configured and activated, a new distribution can be built as follows:$ python3 -m buildNote, when the package structure changes, such as after renaming thesrcmodule or other folders, delete the.egg-infofile from/srcand rebuild. This will ensure the file names in the compiled package are updated. Also note that changes in file/folder name capitalization are recognized by git. To disable this:git config --global core.ignorecase falseWith the new disbtribution created, you may publish to the official Python package repositories:To publish to TestPyPi:$ python3 -m twine upload --repository testpypi dist/* --verboseTo publish to PyPi:$ python3 -m twine upload dist/* --verboseBoth TestPyPi and PyPi will prompt you for authentication. For best practices, use a corresponding TestPyPi or PyPi token to authenticate as follows:name: __token__
password: <token-value>Make sure to include thepypi-prefix for your token value.Bug Reports / Feature RequestsUseGitHub Issues Pageto report any issues or feature requests.Get involvedFollow@edgepi_cloud on Twitter.
Read and subscribe to theEdgePi blog.
If you have a specific question, please check out ourdiscussion forums.LicenseEdgePi SDK is distributed underMIT License.