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.
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.
-
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
To use a different port than the default 5000, set the --port
option when you run the app:
counterfit --port 5050
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.
-
Grove.Py shims that work with the Seeed Grove ecosystem.
-
Seeed DHT shims that work with the Seeed DHT sensors.
Check out the samples directory for a range of samples.