Releases: medlor/bleeding-edge-ranciliopid
Releases · medlor/bleeding-edge-ranciliopid
3.2.5 Perfect Coffee PID Master Release
New release 3.2.5 of Perfect Coffee PID
- MQTT server can now be run locally on ESP32 too.
What's Changed
- Add MQTT Broker support on ESP32 by @bviecelli in #79
- 3.2.5 by @medlor in #82
New Contributors
- @bviecelli made their first contribution in #79
Full Changelog: 3.2.4...3.2.5
3.2.4 Perfect Coffee PID Master Release
There is a new master release 3.2.4 of the "Perfect Coffee PID" software
New release 3.2.4 of Perfect Coffee PID
- Just refactorings.
Changelog
- 3.2.4:
- Many more refactorings by aschoelzhorn. Thanks again!
- Seperated wifi, temperature and other code to dedicated files.
- Introduces rancilio-enums.h file and replaced some defines with enum classes.
- Reorganized OTA (init and handle), OTA code still in "rancilio-pid.ino" because of timer stuff.
- Separated declaration and implementation in some header/code files.
- Part cleanup of includes.
- Some bugfixes and refactorings by Tobias.
- Many more refactorings by aschoelzhorn. Thanks again!
3.2.3 Perfect Coffee PID Master Release
There is a new release 3.2.3 of the "Perfect Coffee PID" software
New release 3.2.3 of Perfect Coffee PID
- General performance improvements.
- WIFI improvements.
- On OTA Update show special logo and progress. Thanks aschoelzhorn!
- Enable bigger status icons when ENABLE_BIG_STATUS_ICONS is set to 1 (default 0). Many thanks aschoelzhorn!
- Many code refactorings. Many thanks aschoelzhorn again!!
Changelog
- 3.2.3:
- Feature: On OTA Update show special logo and progress. Thanks aschoelzhorn!
- Feature: Enable bigger status icons when ENABLE_BIG_STATUS_ICONS is set to 1 (default 0). Many thanks aschoelzhorn!
- Refactor: Code refactorings. Many thanks aschoelzhorn!
- Fix: Wifi stability improvements.
- Disable WiFi Power Safe.
- Reduce WiFi retry wait times.
- WiFi instability by adding housekeeping times.
- Changed minimum retry timer when mqtt/blynk disconnects happen from 160s to 60s.
- Fix: Changing MQTT settings while machine being offline is being honored again.
- Fix: Blynk working again with latest version.
- Added Blynk state caching.
- Fix: Some "include" issues when arduinoIDE is used. Thanks Helge!
- Fix: Support for Expressif v5.3.
- Performance improvements.
- Removed legacy grafana.
3.2.2 Perfect Coffee PID Master Release
There is a new master release 3.2.2 of the "Perfect Coffee PID" software
New release 3.2.2 of Perfect Coffee PID
- Code base refactorings. No new features. Thanks aschoelzhorn!
Changelog
- 3.2.2:
- Refactor: Moved blynk code into own files. Thanks aschoelzhorn!
- Refactor: Add a temperature sensor mock. Thanks aschoelzhorn!
- Refactor: Replace state magic numbers with meaningful names. Thanks aschoelzhorn!
- Fix: Schematic_bleeding_edge_full_control_pcb_layout_v0.7.png, was wrong at one place.
3.2.1 Perfect Coffee PID Master Release
New release 3.2.1 of Perfect Coffee PID
- Upgraded/Updated all dependencies and requirements.
- Feature: Add support for SH1106 in SPI mode. Thanks piontec!
- Feature: Add support for custom display pins (see DISPLAY_I2C_SCL, DISPLAY_I2C_SDA). Thanks piontec!
Changelog
- 3.2.1:
- Feature: Add support for SH1106 in SPI mode. Thanks piontec!
- Feature: Add support for custom display pins (see DISPLAY_I2C_SCL, DISPLAY_I2C_SDA). Thanks piontec!
- Feature: Distinguish triggertype for 3way-valve and pump. Thanks piontec!
- userConfig.h Changes:
- Added VALVE_TRIGGERTYPE, PUMP_TRIGGERTYPE (default HIGH. Previously called TRIGGERTYPE).
- RENAMED pinRelayVentil to pinRelayValve.
- RENAMED pinRelayPumpe to pinRelayPump.
- Added DISPLAY_I2C_SCL, DISPLAY_I2C_SDA (default 255).
- Fix: SSD1306 support should also work again. Thanks piontec!
- Added IoTMQTTPanel-perfect_coffee_pid_v3.2.0_v1.json to support the "new" scale settings.
- Fix: Changed BREWTIME_END_DETECTION to type "bool" to improve handling of improper configuration.
- Upgrade ZACWire to v2.0.0. Thanks Adrian/lebuni.
- Refactored GpioCheck accordingly.
- Updated ESP boardmanager and library dependencies to latest official version:
- Platformio:
- esp32: Upgrade espressif32 from v3 to v5
- FastLED to v3.5.0
- esp8266: Upgrade espressif8266 from v2 to v4
- esp8266: Update to latest uMQTTBroker
- ArduinoIDE:
- Upgrade Boardmanager from
- ESP32:v1.0.6 to v2.0.4
- ESP8266:v2.7.4 to 3.0.2
- Important: Update all manually installed libs like RemoteDebug and ZACWire (see Wiki)!
- Upgrade Boardmanager from
- Platformio:
3.2.0 Perfect Coffee PID Master Release
New release 3.2.0 of Perfect Coffee PID
- Add SCALE functionality for brewing.
Changelog
- 3.2.0:
- NEW FEATURE (ESP32 & ONLYPID=0): Add SCALE functionality for brewing based on a PR by Hoondie (Many thanks Hoondie!).
- Rewrite of brew() function to supports stopping brewing by time or weight (see userConfig.h BREWTIME_END_DETECTION):
- Setup guide in Wiki
- 3D printer models:
- 3D Scale Case made by Hoondie (Many thanks Hoondie!).
- PerfectCoffeePid Scale Case.
- 3D printer models:
- Display shows actual weight while brewing and additionally brewStatistics/flowRate a couple of seconds after brew (all themes are supported).
- Automatic tuning of target-weight offset to adapt to dipping effects after brew ends.
- Refactoring und noticeable further features:
- Implemented manual calibration feature:
- Howto:
- Set ENABLE_CALIBRATION_MODE=1, start machine without any weight on the scale,
after around 20s put a known weight (which is set in SCALE_SENSOR_CALIBRATION_WEIGHT) on the scale.
The LOG will show the calculated SCALE_SENSOR_CALIBRATION_FACTOR which has to be added to the userConfig.h .
- Set ENABLE_CALIBRATION_MODE=1, start machine without any weight on the scale,
- Howto:
- Send brewStatistics to display, mqtt events and LOG: "Brew statistics: 37.36g in 29.78s (1.25g/s) with profile 1".
- FlowRate also included in output.
- Display shows brewStatistics after brew for a couple of seconds.
- Use powerOff and powerUp to save energy and to reduce interrupt conflicts. HX711 is only enabled when brew is running.
- 3rd party library for the HX711_ADC by Olav Kallhovd (https://github.com/olkal/HX711_ADC) adapted to our needs (Many thanks Olav!):
- custom async implementation while using ISR to ...
- reduce processing delays
- reduce competing interrupts between TSIC, display and scale
- no TSIC errors!
- custom async implementation while using ISR to ...
- Auto-tare weight (async; without delay) at start of brew.
- After brew is finished weight is measured for an additional 2 seconds (to include drops after the pump has stopped).
- If HX711 cannot be initialized on start of brew, fallback to time-based brewing.
- New scale settings are now tied to "Profiles":
- Set following settings in userConfig.h / MQTT / "CONTROLS_CONFIG" / Blynk (V64 := activeBrewTimeEndDetection , V65 := activeScaleSensorWeightSetPoint):
- BREWTIME_END_DETECTIONX: if 0, stop by time else stop by weight
- SCALE_SENSOR_WEIGHT_SETPOINTX = weight when to stop brewing
- Set following settings in userConfig.h / MQTT / "CONTROLS_CONFIG" / Blynk (V64 := activeBrewTimeEndDetection , V65 := activeScaleSensorWeightSetPoint):
- Custom scaleConfigOverwrite.h
- ArduinoIDE: Added library/HX711_ADC_fix which has to be manually copied to your arduino library path. (see wiki)
- ArduinoIDE: Successfully compiles (in addition to Platformio).
- Implemented manual calibration feature:
- ArduinoIDE: "library/RemoteDebug" minor compile fix.
- ArduinoIDE: Add check to force esp32 board version 1.0.6.
- brew() is only called at most every 1ms.
- Fix: If you have an analog toggle configured for BREWING and dont turn it off before power-off,
then brewing will no longer automatically start on power-on. - userConfig.h Changes:
- BREWTIMER_MODE renamed to BREWTIME_TIMER
- Many new defines called SCALE_SENSOR_*
- Added BREWTIME_END_DETECTIONX
- Added SCALE_SENSOR_WEIGHT_SETPOINTX.
- Added SCALE_SENSOR_CALIBRATION_WEIGHT, SCALE_SENSOR_CALIBRATION_FACTOR
- Updated circuit-diagrams to add HX711.
- NEW FEATURE (ESP32 & ONLYPID=0): Add SCALE functionality for brewing based on a PR by Hoondie (Many thanks Hoondie!).
3.1.1 Perfect Coffee PID Master Release
New release 3.1.1 of Perfect Coffee PID
- Bugfix: Coldstart working again.
3.1.0 Perfect Coffee PID Master Release
New release 3.1.0 of Perfect Coffee PID
- Add support for up to 3 "Profiles" which can be used to quickly switch between different brew settings (eg. when different beans are used).
- Initial support for "MENU" which can be used to control settings using the display-case with buttons
- Support for Thermistor K-type with MAX6675 (Thanks to aschoelzhorn for the PR and TeraK, sailhobie for support).
Changelog
- 3.1.0:
- NEW FEATURE: Add support for up to 3 "Profiles" which can be used to quickly switch between different brew settings (eg. when different beans are used).
- An individual profile comprises of following settings:
- Brew Temperature / setPoint
- Brew Time
- Preinfusion time and pause
- Coldstart Temperature / startTemp
- Profiles can be selected by any means, eg mqtt/blynk/menu/.. . The variable for this is "profile".
- The selected profile is also shown on the display, see new setting ENABLE_PROFILE_STATUS.
- ATTENTION: Following variable names has changed and therefore any mqtt dashboards and tools have to be adapted (eg IotMQTT/Grafana/nodered):
- setPoint -> activeSetPoint
- brewtime -> activeBrewTime
- starttemp -> activeStartTemp
- preinfusion -> activePreinfusion
- preinfusionpause -> activePreinfusionPause
- Hint: Changing the value of any of variables (eg using mqtt/blynk) will update the respective setting of the currently activated profile.
- Blynk:
- Added new virtual Pin V3 for "profile", which can be any number between 1 and 3.
- Added Blynk Showcase.
- An individual profile comprises of following settings:
- NEW FEATURE: Initial support for MENU which can be used to control settings using the display-case with buttons:
- Action "MENU" added.
- Actions TEMP_INC and TEMP_DEC renamed to MENU_INC and MENU_DEC respectively.
- Added new userConfig.h setting MENU_CONFIG which is used to configure menu settings.
- Following menu operations are supported (can be extended on request):
- SETPOINT, SETPOINTSTEAM, BREWTIME, PREINFUSION, PREINFUSION_PAUSE, PID_ON
- NEW FEATURE: The calculation of the "total brew time" can be adjusted with the userConfig.h setting BREWTIMER_MODE.
- 0: (default) brewtime-countdown is equal BREWTIMEX.
- 1: brewtime-countdown is BREWTIMEX + PREINFUSIONX + PREINFUSION_PAUSEX
- userConfig.h Changes:
- Added:
- ENABLE_PROFILE_STATUS
- Renamed SETPOINT to SETPOINT1
- Renamed BREWTIME to SETPOINT1
- Renamed PREINFUSION to PREINFUSION1
- Renamed PREINFUSION_PAUSE to PREINFUSION_PAUSE1
- TEMPSENSOR (default=2)
- SETPOINT2, SETPOINT3
- STARTTEMP2, STARTTEMP3
- PREINFUSION2, PREINFUSION3
- PREINFUSION_PAUSE2, PREINFUSION_PAUSE3
- BREWTIMER_MODE
- Added:
- Support for Thermistor K-type with MAX6675 (Thanks to aschoelzhorn for the PR and TeraK, sailhobie for support).
- TSIC3xx is still strongly recommended to use!
- Updated IoTMQTT Dashboard IoTMQTTPanel-perfect_coffee_pid_v3.1.0_v1.json to include Profile and Action support. Showcase.
- Refactor and fix eeprom stuff.
- Refactor all variables from double to float.
- Make blynk optional on compilation.
- Removed burst feature.
- Fixes:
- Fix blynk "heater output" not being shown.
- Fix float compare function.
- NEW FEATURE: Add support for up to 3 "Profiles" which can be used to quickly switch between different brew settings (eg. when different beans are used).
3.0.0 Perfect Coffee PID Master Release
New release 3.0.0 of Perfect Coffee PID
Changelog
- 3.0.0:
- Project is getting renamed to "Perfect Coffee PID".
- Improve temperature readings to reduce undesireable actions of the PID controller:
- Detect outliers near setpoint and fix them automatically.
- Read temperature every 100ms (previous 1s) and save it to TemperatureHistory for later use.
- Implement average calculations on all temperature functions to stabilize temp readings.
- Temporary use custom ZACwire library, which offer:
- bitwindow auto-tuning right from the start.
- directMode to improve outlier detection and flapping temperature in seldom cases (esp32).
- Important: You have to manually install library/ZACwire_for_TSic (only if you are using Arduino IDE).
- Add full support for platformio, code cleanup and fix compile warnings.
- Force espressif8266 to Version 2 (until external libs are adapted)
- Arduino IDE: Remove some libaries which from now on have to be installed manually, see Wiki.
- Performance improvement:
- controlActions are now using interrupts with an optional debounce feature (instead of polling each gpio).
- Update ESP32 schematic to reflect recommendation to use 5v (instead of 3.3v) for the TSIC.
- Fix:
- DISPLAY_TEXT_STATE is working on exp8266.
- controllerActions: Improve debouncing of analog(ADC) and digital buttons/switches.
- Improve steaming cycle-times.
- Remove support for DS19B20 temperature sensors.
- Improvements in error logging.
- UserConfig Changes:
- Breaking Change:
- renamed DISPLAY to DISPLAY_HARDWARE
- Removed:
- TEMPSENSOR
- Added:
- DEBOUNCE_ANALOG_GPIO / DEBOUNCE_DIGITAL_GPIO
- Changes:
- recommended defaults
- Breaking Change:
2.8.0 Bleeding Edge Master Release
New release 2.8.0 of rancilio "bleeding-edge"
- Add support for low water detection
Changelog
- Feature: Add support to detect low water using a VL53L0X Time of Flight distance sensor. see Howto
- Helge supplied a 3d printing model for rancilio silvia's water tank lid which can be used with the VL53L0X sensor. (thanks Helge!)
- Update ZACWire to v1.3.2. (Thanks Adrian)
- UserConfig change:
- Renamed DEBUG_FORCE_GPIO_CHECK to ENABLE_CALIBRATION_MODE.
- Fix: Show general logo when MASCHINE_TYPE is set to unknown.