A Python module to control a FreshRoastSR700 coffee roaster.
Project description
A Python module to control a FreshRoastSR700 coffee roaster.
Usage
import time
import multiprocessing
import freshroastsr700
# freshroastsr700 uses multiprocessing under the hood.
# call multiprocessing.freeze_support() if you intend to
# freeze your app for packaging.
multiprocessing.freeze_support()
# Create a roaster object.
roaster = freshroastsr700.freshroastsr700()
# Conenct to the roaster.
roaster.connect()
# Set roasting variables.
roaster.heat_setting = 3
roaster.fan_speed = 9
roaster.time_remaining = 20
# Begin roasting.
roaster.roast()
# This ensures the example script does not end before the roast.
time.sleep(30)
# Disconnect from the roaster.
roaster.disconnect()
API & Documentation
Complete code documentation and a breakdown of the FreshroastSR700 communication protocol can be found at freshroastsr700.readthedocs.org. The Fresh Roast SR700 can be purchased directly from the manufacturer at homeroastingsupplies.com.
Installation
The latest release of this package can be installed by running:
pip install freshroastsr700
Version History
Version 0.2.2 - May 2017
Resolves issues #22, 23, 24 and 25. Added logic to handle hardware connects and hardware disconnects properly in all supported OSes. Software now supports multiple connect()-disconnect() cycles using the same freshroastsrs700 object instance.
Version 0.2.1 - March 2017
Resolves issue #20 by managing hardware discovery logic in the comm process, eliminating the need for the thread heretofore associated with auto_connect. Openroast 1.2 (currently in development) now operates properly in Windows 10 64-bit, with this fix.
Version 0.2.0 - March 2017
Completely rewritten PID control for tighter tracking against target temperature (when freshroastsr700 is instantiated with thremostat=True).
Callback functions for update_data_func and state_transition_func now called from a thread belonging to the process that instantiated freshroastsr700. This was necessary for Openroast version 1.2 code refactoring.
Reduced processor load for PID control as part of code refactoring.
Version 0.1.1 - Dec 28 2017
Added support for python 2.7.
Version 0.1.0
(no notes)
License
MIT License. Please refer to LICENSE in this package for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for freshroastsr700-0.2.3.dev1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | fb4809fb30decb40c1967453a15ec380a902cc48e24f68701dc6abb343a2c9ce |
|
MD5 | f8b97f0d0f6b802e56135bba153152c6 |
|
BLAKE2b-256 | 56b555edabe4460ab06fe07e80450f89dd8ecf3e0c856134ea422343a55e31ac |
Hashes for freshroastsr700-0.2.3.dev1-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ba3e11476e5327d3a67747242a694e436b37792bb93e41762bb48a3a0d399b56 |
|
MD5 | bcdcc9981dc963a8a62d8a0bbb54bcf6 |
|
BLAKE2b-256 | 9be18a75f3624e9e7ddfed1653a951f8ae1db25131ba7c0d294d00cde0890ee8 |