Interesting.
1) Hmmm... probes are defined at the app level, in other words, they don't exist in a database, so making strict connections between a curve and a particular probe isn't easy in the current configuration. That's actually the reason I only allow 1 matching definition at a time, so that curves can easily locate their probe when needed. Not to say that couldn't change, but that was a design choice so folks wouldn't have to define and calibrate multiple probes for different databases. I wonder if a modifier in the curve binding might be a better choice here. If defining multiple probes with different calibrations would fit the bill, maybe a simple numerical modifier like "Calibration Modifier: 0.9" would work equally well. Essentially, it seems to be the same difference, and achieve the same effect with less work on the user's part, avoiding the process of defining and managing multiple probes. Any thoughts you have are definitely welcome.
2) Yes, actually, I've thought about this. My thinking was the ability to define points similar to nodes on a curve. Since probes have different tolerances at different temps, maybe provide the ability to enter multiple calibration points, say 0° C: 0 offset, 140° C: 10 offset, 200° C: 15 offset. Roastmaster could then interpolate the value based on that information. I really like that idea.
Thanks for the thoughts - I'll have to check out Home-Barista. I've been so head deep in code trying to be ready for iOS8, I haven't looked up from my computer for a while.