hpio: Monads for GPIO in Haskell

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain]

This package provides an embedded DSL for writing cross-platform GPIO programs in Haskell. Currently only Linux is supported (via the sysfs filesystem), but other Unix GPIO platforms will be supported in the future.

Monads and low-level actions are also provided for each supported platform's native GPIO API, if you want to program directly to the platform API.

Example programs are provided in the examples directory of the source code distribution. There is also a System.GPIO.Tutorial module, which explains how to use the cross-platform DSL.


[Skip to ReadMe]

Properties

Versions0.8.0.0, 0.8.0.1, 0.8.0.2, 0.8.0.3, 0.8.0.4, 0.8.0.5, 0.8.0.6, 0.8.0.7, 0.8.0.9, 0.8.0.10, 0.9.0.0, 0.9.0.1, 0.9.0.2, 0.9.0.3, 0.9.0.3, 0.9.0.4, 0.9.0.5, 0.9.0.6
Change logchangelog.md
Dependenciesasync (>=2.0.2 && <2.2), base (>=4.7.0 && <5), bytestring (>=0.10.4 && <0.11), containers (>=0.5.5 && <0.6), directory (>=1.2.1 && <1.4), exceptions (>=0.8.0 && <1), fail (==4.9.*), filepath (>=1.3.0 && <1.5), hpio, monad-control (==1.*), monad-logger (==0.3.*), mtl (>=2.1.3 && <2.3), optparse-applicative (>=0.11.0 && <0.15), protolude (==0.2.*), QuickCheck (>=2.7.6 && <2.12), semigroups (==0.18.*), text (>=1.2.0 && <1.3), transformers (>=0.3.0 && <0.6), transformers-base (==0.4.*), unix (>=2.7.0 && <2.8), unix-bytestring (>=0.3.7 && <0.4) [details]
LicenseBSD-3-Clause
CopyrightCopyright (c) 2017, Quixoftic, LLC
AuthorDrew Hess <dhess-src@quixoftic.com>
MaintainerDrew Hess <dhess-src@quixoftic.com>
CategorySystem
Home pagehttps://github.com/quixoftic/hpio#readme
Bug trackerhttps://github.com/quixoftic/hpio/issues
Source repositoryhead: git clone https://github.com/quixoftic/hpio
Executableshpio-sysfs-example, hpio-reader-example, hpio-example
UploadedThu Jan 25 09:03:06 UTC 2018 by dhess

Modules

[Index]

Flags

NameDescriptionDefaultType
examples

Build the example programs

EnabledManual
linux-bbone-tests

Enable Linux BeagleBone-specific tests. Disabled by default. See testSystemGPIOLinuxSysfs/BeagleBoneSpec.hs for requirements. Run with "cabal test -flinux-bbone-tests".

DisabledManual
test-doctests

Build doctests

EnabledManual
test-hlint

Build hlint test

EnabledManual

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainers' corner

For package maintainers and hackage trustees


Readme for hpio-0.9.0.3

[back to package description]

hpio

hpio provides support for writing GPIO programs in Haskell. It includes an embedded DSL for writing platform-independent programs, along with low-level monads and IO functions which provide direct access to each supported platform's native GPIO API.

Currently only the Linux sysfs GPIO filesystem is supported, but support for other Unix GPIO platforms is planned.

For details on usage, see the included tutorial module, or the examples directory in the source distribution.

Travis CI build status