mercury-api: Haskell binding to Mercury API for ThingMagic RFID readers

[ hardware, library, mit, program ] [ Propose Tags ]

This package is a Haskell binding to the "Mercury API" C API for ThingMagic RFID readers. It is especially geared toward the SparkFun Simultaneous RFID Reader, which uses ThingMagic's M6e Nano module, but it should work with other ThingMagic readers. (Though currently, only support for serial readers is compiled in.) Most of the function and type names are the same as their counterparts in the C API, with the TMR_ prefix dropped. For more in-depth, language-independent documentation of Mercury API, see Mercury API Programmers Guide.


[Skip to Readme]

Modules

[Index]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

  • No Candidates
Versions [RSS] 0.1.0.0, 0.1.0.1, 0.1.0.2
Change log ChangeLog.md
Dependencies ansi-terminal (>=0.6.2.3 && <0.7), base (>=4.6 && <5), bytestring (>=0.10.4 && <0.11), clock (>=0.7.2 && <0.8), hashable (>=1.2.4 && <1.3), mercury-api, optparse-applicative (>=0.13 && <0.15), text (>=1.2 && <1.3), unordered-containers (>=0.2.7.1 && <0.3) [details]
License MIT
Copyright © Patrick Pelletier, 2017
Author Patrick Pelletier
Maintainer code@funwithsoftware.org
Revised Revision 1 made by ppelleti at 2017-06-10T03:42:39Z
Category Hardware
Home page https://github.com/ppelleti/hs-mercury-api
Bug tracker https://github.com/ppelleti/hs-mercury-api/issues
Source repo head: git clone https://github.com/ppelleti/hs-mercury-api.git
Uploaded by ppelleti at 2017-06-05T22:41:23Z
Distributions
Executables tmr-gpio, tmr-lock, tmr-write, tmr-read, tmr-firmware, tmr-params
Downloads 2875 total (14 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2017-06-05 [all 1 reports]

Readme for mercury-api-0.1.0.0

[back to package description]

Latest: Hackage Linux: Build Status Windows: Build status

This package is a Haskell binding to the Mercury API C API for ThingMagic RFID readers. It is especially geared toward the SparkFun Simultaneous RFID Reader, which uses ThingMagic's M6e Nano module, but it should work with other ThingMagic readers. (Though currently, only support for serial readers is compiled in.) Most of the function and type names are the same as their counterparts in the C API, with the TMR_ prefix dropped. For more in-depth, language-independent documentation of Mercury API, see Mercury API Programmers Guide.

This package includes a copy of the Mercury API C library, so no external libraries are necessary. Several small bug fixes have been applied to the included version of the library. (I have submitted these patches upstream, but I don't know if or when they will be included in the official version.) If you need to upgrade to a newer version of Mercury API than the included one, see UPGRADING.md.

The Haskell binding doesn't support background reads. I recommend that you just spawn a new Haskell thread and do foreground reads instead.

Currently, only support for the serial reader is compiled in, but it probably wouldn't be too hard to enable LLRP support. (I don't have any way to test LLRP, however, as the M6e Nano doesn't support it.)

On Mac OS X, be sure to use the serial device that starts with /dev/cu., not the serial device that starts with /dev/tty..

Only some parameters and some tagops are currently supported in the Haskell binding. (There are a lot of them, and I only implemented the ones I needed.) If you need support for additional parameters or tagops, please file an issue in GitHub and I will add them.

Additional resources: