Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New roast does not line up with Background #1279

Closed
fatrabbit-la opened this issue Oct 12, 2023 · 14 comments
Closed

New roast does not line up with Background #1279

fatrabbit-la opened this issue Oct 12, 2023 · 14 comments
Labels
Milestone

Comments

@fatrabbit-la
Copy link

M1 laptop - same I've used for years. Artisan 2.8.5. MacOS Ventura 13.6.

This is a new issue for me. When using a background profile, starting a new roast used to automatically line up the two graphs upon charge. Now, it doesn't line up until I end the roast. Then, it snaps into place. Much more useful to have it snap into place at the beginning so I can really compare along the way.

I did make one change which was updating my OS to Ventura from Monterey.

Another issue, which I'm not convinced is a fault of Artisan but is also a new issue, is that my audible alarms are no longer audible. I see the info at the top when an alarm goes off but I don't hear anything. I checked my audio output settings and all looks ok.
IMG_8661

@MAKOMO
Copy link
Member

MAKOMO commented Oct 12, 2023

M1 laptop - same I've used for years. Artisan 2.8.5. MacOS Ventura 13.6.

This is a new issue for me. When using a background profile, starting a new roast used to automatically line up the two graphs upon charge. Now, it doesn't line up until I end the roast. Then, it snaps into place. Much more useful to have it snap into place at the beginning so I can really compare along the way.

First of all note that Artisan 2.8.5 (as all versions ending in uneven numbers) are development builds, not to be used for anything but testing. Some of those builds simply don't work or have major known issues.

Hm. Hard to see in detail from this screen shot (why not attach both, background and foreground .alog profiles, renamed to end in .txt, here to allow us to check), but to me it seems to both pairs of CHARGE annotations, the one of the background and the one of the foreground are perfectly aligned at this moment. Just maybe the CHAR>GE annotations of the background profile is not placed where it should be.

Anyhow, there was no code change on this mechanism since several versions of Artisan.

I did make one change which was updating my OS to Ventura from Monterey.

Not relevant.

Another issue, which I'm not convinced is a fault of Artisan but is also a new issue, is that my audible alarms are no longer audible. I see the info at the top when an alarm goes off but I don't hear anything. I checked my audio output settings and all looks ok. IMG_8661

Most likely not an Artisan issue. Check first if calling your script from outside of Artisan, like from a shell running in the Terminal.app, works.

@fatrabbit-la
Copy link
Author

Understood about 2.8.5 but it is working better for me than 2.8.4 (aside from this new issue).

I don't recall the roast from the original screenshot I uploaded but it doesn't matter because the issue was consistent. Attaching .alog files for the background and active roast as well as a screenshot showing how the traces lined up after the roast ended.

Regarding my "silent alarm", I had several using French Audrey to alert me to upcoming events. It appears they cancelled her in this version of the OS since I'm getting an error that she can't be found. When I don't reference her and use the default boring voice, it works. What have they done with her?! Sacre bleu!
23_0927_0928_GUA_AtitlanSanPedro550_SLOW.txt
23_1011_0911_GUA_AtitlanSanPedro_550SLOW.txt
Screenshot 2023-10-12 at 9 04 11 PM

@MAKOMO
Copy link
Member

MAKOMO commented Oct 13, 2023

Running this on the simulator you see that align on CHARGE works as expected. However, the CHARGE mark on your background profile might not be placed where you expected it to be. This explains the relative large lag with your 2sec sampling rate. If your machine/comm setup allows you could reduce this to 1sec. Note that you can move the background profile (via the buttons in the background dialog or the cursor keys) during roasting to make it fit better your current roast. Anyhow, we are working to further improve autoCHARGE marking for the next version of Artisan. It is quite difficult to come up with an approach which is satisfying on all setups as the produced data is quite different.

Screenshot 2023-10-13 at 08 16 40

I am closing this one as it is kind of a duplicate (see 1232)

Regarding "French Audrey" you might need to re-download her voice:

https://support.apple.com/en-mk/guide/mac-help/mchlp2290/mac

@MAKOMO MAKOMO closed this as completed Oct 13, 2023
@fatrabbit-la
Copy link
Author

fatrabbit-la commented Oct 13, 2023 via email

@MAKOMO
Copy link
Member

MAKOMO commented Oct 13, 2023

I cannot reproduce your issue here. Can you reproduce it using the Artisan Simulator on the two profiles you attached? If yes, please attach your Artisan settings file here (again renamed to end in .txt) and a screenshot of your Artisan about box to make sure which build are are exactly using. Thanks!

@fatrabbit-la
Copy link
Author

I ran the simulator and experienced the same issue. Files attached as requested. The first screenshot shows the offset I'm talking about. The second screenshot shows how the graph corrects itself once I click 'OFF'. Never mind the charge point being late. When I correct that, everything lines up perfectly. Sometimes it recognizes the correct charge point and sometimes it's off by a bit like in this example.

Consequently, I also ran the simulator on a roast prior to my update to Ventura when I did not experience the issue but I did experience the issue through the simulator so I don't know what else it could possibly be aside from something having to do with Ventura.
About
artisan-settings.txt
Screenshot1
Screenshot2

@MAKOMO MAKOMO reopened this Oct 18, 2023
@MAKOMO
Copy link
Member

MAKOMO commented Oct 18, 2023

Thanks for sending your settings and the further information. We have an idea what is going on here. Give us a moment time to resolve this.

@fatrabbit-la
Copy link
Author

Here's another curious thing I just noticed, possibly related? I'm attaching two screenshots. The first shows the beginning of the roast where Artisan gets the charge point perfectly. The second shows after I stop the roast and Artisan curiously moves the charge point a bit later in time. The annotation is identical but it's off graphically.
IMG_8732
IMG_8733

@roasterdave
Copy link
Contributor

Unfortunately it is not possible to diagnose this one from a screenshot. Could you post this profile for me to take a look at? Thanks!

@fatrabbit-la
Copy link
Author

Understood - I was just showing an example rather than requesting a diagnosis since it seems like the issue might be related to the other one currently being looked at. But attaching a different roast (because I don't think I have the .alog for the one I took pics of) that I believe suffered the same issue.
23_1011_0956_GUA_AtitlanSanPedro_SLOW.alog.txt

@MAKOMO
Copy link
Member

MAKOMO commented Oct 19, 2023

Thanks for this additional profile. This issue is not caused by the OS version or Artisan version, but an issue how optimal smoothing works. For now you can just disable "optimal smoothing" under menu Config >> Curves, tab "Filters", untick "Optimal Smoothing Post Roast". We update as soon as possible.

@MAKOMO MAKOMO added the bug label Nov 4, 2023
@MAKOMO MAKOMO added this to the v2.8.6 milestone Nov 4, 2023
@MAKOMO
Copy link
Member

MAKOMO commented Nov 4, 2023

Dear Dan,

the issue is caused by the application of different smoothing algorithms during recording then while being offline. If not recording OFFLINE smoothing algorithms can be applied which do not cause any time shifting as at any point the future is known. Thus to smooth a point the readings before, but also the reading after the point can be taken into account. This is not true during recording where only previous readings can be used to smooth the current one. This always leads to some shifting of the time. The more smoothing is applied the more shifting happens.

There was also a difference of the handling of the background profile vs the foreground profile. For the background profile the future is know also during recording thus Artisan applied non-shifting OFFLINE algorithms.

Further, there is an interplay of several smoothing algorithms that are applied in different places. The most fundamental is "Curve Smoothing" which is applied to every curve, but never during recording. That alone can lead to discrepancies in time shifting between the foreground and the background profile. The algorithm applied is a simple ONLINE decay averaging (in case "optional smoothing" is not ticked) which creates quite some time shifting and smoothing artefacts if applied strongly.

There is further curve smoothing algorithm that can be activated via the "Smooth Spikes" flag. This one is a median filter which comes in two variants, an ONLINE and an OFFLINE variant. This one only introduce minimal or no time-shifting and takes away some of the high-frequency noise.

Finally, there is the RoR computation which can be influenced by the selection of the delta span and the algorithm to use (polyfit or not). This one also has an "optimal" version which has the advantage of not causing any time shift but works only OFFLINE. After the RoR curve is computed (based on the smoothed version of the underlying curve), additional smoothing can be applied, which again adds more time shifting.

I now revised the implementation such that during recording the same smoothing is applied to the background profile as is to the foreground profile being recorded. There should not be any relative timer-shifting between those anymore.

Still it is adviced to apply only minimal software smoothing on the Artisan side to avoid the introduction of too much signal delay. Thus one should not use curve smoothing larger than 1 (maybe 2 is ok in some cases). "Smooth Spikes" can be activated if it helps. Then one should reduce the noise of the RoR curve by choosing a longer delta span, but not longer than needed. Delta smoothing should be applied only minimally or not at all. Optimal smoothing can be ticked, but will not have any consequences during recording.

There new continuous builds as well as a specific signed and notarized universal binary for macOS which should run native on Apple Silicon (M1, M2, M3, ..).

Please report if this works for you and I can close this issue.

@fatrabbit-la
Copy link
Author

fatrabbit-la commented Nov 6, 2023 via email

@MAKOMO
Copy link
Member

MAKOMO commented Nov 7, 2023

On your setup, I would reduce "Curve Smoothing" from 3 to 1, increase the "Delta Span" from 10 to 15 and tick "Optimal Smoothing" in case you like to see no time shift while OFF (no effect during roasting). Further I would deactivate the DeltaET curve as it is too noisy. This is normal, even on RTD setups, and most likely caused by machine vibration and air turbulences within the drum which renders the ET signal more noisy.

@MAKOMO MAKOMO closed this as completed Nov 7, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants