Skip to content

A simulator for IoT sensors and actuators. This creates fake virtual sensors and actuators when the real ones won't fit on your counter 🤪.

License

Notifications You must be signed in to change notification settings

ExeterBScDTS/CounterFit

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CounterFit

GitHub license GitHub contributors GitHub issues GitHub pull-requests PRs Welcome

GitHub watchers GitHub forks GitHub stars

The CounterFit logo

IoT is great fun, but has a downside - hardware. You need access to a range of devices such as sensors and actuators to build your IoT projects. Sometimes you might have these devices, other times you may not - maybe you are waiting for a delivery, or parts are out of stock, or they are too expensive.

That's where this tool comes in.

What is CounterFit

CounterFit is a tool that is designed to fake various IoT hardware components, such as LEDs, buttons, temperature sensors and the like, that you can then access from IoT device code running on your computer rather than on an IoT device. It is made of two parts:

  • The CounterFit app - this is a web app run locally where you can connect fake sensors and actuators to your virtual hardware
  • Shims - these are libraries that fake popular hardware APIs so you can take code that runs against well known hardware and run it against the CounterFit app.

This project is under construction

This project is seriously under construction! Please let me know if you want to help.

Under development animated GIF

Installing and running the app

  • Install the CounterFit app:

    pip install CounterFit
  • Run the app:

    CounterFit
  • The app will launch, listening for web requests on port 5000, and open a web browser for you to start adding virtual sensors and actuators to your project

Running on a different port

To use a different port than the default 5000, set the --port option when you run the app:

CounterFit --port 5050

Shims

The shims are designed to mimic the APIs for popular hardware components. The idea being you should be able to take code built against the shim and eventually run it on real hardware by changing the name of the package that is imported.

Available shims

Samples

Check out the samples directory for a range of samples.

About

A simulator for IoT sensors and actuators. This creates fake virtual sensors and actuators when the real ones won't fit on your counter 🤪.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 52.5%
  • Python 47.0%
  • Other 0.5%