Tag: iOS 6

  • Introducing Roastmaster for iOS 7

    Introducing Roastmaster for iOS 7

    Version 7 for iOS 7 is here! Version 7, you might say… but where did the other versions go? Well, from here on out I plan to align the app version with the iOS version it’s targeted for, so we’re jumping ahead here to catch up. Apple has recently begun to allow downloads of older versions, and I think this type of versioning scheme will be the easiest to understand as iOS moves forward.

    I want to take a moment to offer a very heartfelt thanks to everyone I’ve worked so closely with over the past few months while implementing and refining features, as well as the beta testers who offered invaluable input. This update, code-wise, was probably the biggest one to date. iOS 7 is very different than iOS 6 and earlier with respect to how screens are drawn and displayed – something Roastmaster draws a lot of. When the GM seeds of iOS 7 were released, I realized development time was going to run long. Since I also wanted to hold out for testing on the new iPad, I took the chance to concentrate heavily on both form and function – a very big undertaking to say the least, but one that was definitely due.

    Form

    I’ve overhauled the UI – in part to help Roastmaster blend with iOS 7’s minimalistic design theme, and integrate seamlessly with its new features. More importantly, though, I felt the new version of Roastmaster should have an interface that is familiar, but much more content-oriented – one that takes a back seat to your data – complementing it, and eschewing unnecessary elements that compete with it.

    In line with this, I’ve paid very close attention to typography, colors and iconography in this update. In an app as comprehensive as Roastmaster, running on a platform that is limited to one visible screen at a time, these items are critical in helping you to navigate your data, and also in serving as mnemonic cues – helping you mentally retain your place in the app as you browse. I really hope you enjoy the new look, and find the UI enahncements helpful in presenting and navigating your data.

    Function

    My ever-present goal is to equip Roastmaster with the tools to help you put your data to work for you. I strive to help you easily and intuitively build on past successes – either by direct comparison of current roasts to past roasts and their cupping data, or by using this data in tandem with your ever-evolving custom profiles. This is the means to the end goal of the best tasting cup of coffee possible. In addition to this, it’s important to be able to perform tasks in Roastmaster easily – with minimal effort and thought on your part. Most of the new features are geared toward one of these two goals.

    So many amazing folks have come forward with ideas and suggestions – some I’d already planned, some I’d never even thought of. Thanks to you all! Believe me, I listen to and evaluate every single suggestion. As always, majority rules – so if you see your suggestion on this list, you’re in good company.

    New Features

    User Interface

    • Full iOS 7 compatibility
    • A more simple, open and content-oriented design
    • Improved typography and iconography
    • Support for iOS 7 dynamic text sizing
    • Easily recognizable activity icons now replace the old text-based activity choices
    • All buttons are easier to tap

    Support for two new probes for Data Logging Users

    • Support for the BlueTherm Duo Probe – a wireless Bluetooth probe that supports 2 K Style thermocouples
    • Support for the iCelsius BBQ Probe – a wired probe that attaches to the dock connector, or to a Lightning port via a Dock to Lightning adapter.

    Productivity

    • New inventory report type
    • Analyze recent roasts to quickly view your most recent roast activity
    • Easily turn a completed roast into a profile or program
    • Notes for all items are now edited via a spacious full-screen editor
    • Dedicated numeric keypad for editing node values and times
    • Faster database operations
    • Copying a roast now includes the profile and program, and applies the appropriate curve templates
    • Roast alarms can now be set by tapping on the alarm marker and entering a specific time in addition to dragging on the gauge or graph
    • Several of the past-roast matching algorithms have been shifted to the database side, speeding up queries and greatly reducing memory consumption
    • Roaster setup assistant. Behmor users will find this particularly helpful, as it will automatically configure a Behmor roaster for using and displaying Behmor curves.
    • Better curve comparison for past roast matching
    • Rested age since roasting in days and hours for cuppings
    • Ability to condense or expand an existing curve by intervals of 15 seconds
    • Roasts, blends and cuppings now show the countries of their items in the header
    • Roasts, blends and cuppings can now be filtered by country in the main list views
    • Ability to two-finger tap on the main roast console graph to select a curve from a list of all curves
    • Ability to have roast timers display inverted Behmor time when a Behmor curve is selected
    • Ability to enter cracks for 30 seconds after the roast has ended

    Roast Analyzer

    • Faster scrolling and more responsive navigation
    • Curve targeting mode enables you choose which curves are displayed for targeting:
      1. Profile/Program Mode: Current roast curves are displayed as solid, profile/program curves are displayed as dotted, all other curves hidden
      2. Past Roast Mode: Current roast curves are displayed as solid, past roast curves are displayed as dotted, all other curves hidden
      3. All (The legacy mode): Current roast and current profile/program curves are displayed as solid, other past roast curves displayed as dotted
      4. None: Current roast and current profile/program curves are displayed as solid, all other curves are hidden
    • Live differential temperature projection markers. Select a curve, and create a draggable target with the predicted temperature based on the recent differential energy of the curve.
    • Floating labels for curve levels, crack times and duration milestones
    • Define up to three separate custom deltas to report for the selected curve or node
    • Ability to plot control curves with a reduced height at the bottom of the screen – leaving the top area free for reading curve analysis
    • More intuitive crack buttons: tap once to set the begin time – subsequent taps extend the duration. To clear times, tap and hold.
    • Analyzer now remembers the selected curve, focus past roast and projection markers between views
    • Customizable opacities for graph elements, like current curves, target curves and background
    • More accurate delta times for data logging users (deltas are calculated from recent probe readings – accurate to 1/2 second)
    • Easier curve selection by tapping directly on a curve, or two-finger tapping to invoke a chooser list
    • Preference for alerts to remind you to enter temperature nodes at a customizable interval while in the Analyzer
    • Ability to show a margin around the graph for easier selection of nodes that lie at 0 on the X or Y axis
    • Preference settings to independently set the opacity for X or Y axis grid line markers.
    • Selected curve remains selected when swiping through past roasts
    • Analyzer display is calibrated to minutes, and remembers the last used setting between views

    Looking Ahead

    I’m going to be concentrating heavily on a series of screencast “shorts” – videos geared toward educating users on some of the features and how to perform standard and more complex workflow operations in Roastmaster. Please let me know if you have any suggestions on things you’d like to see showcased, or if you have any specific questions or comments on using Roastmaster.

    I really hope you enjoy the new features in this update, and find them helpful in your roasting workflow. For folks celebrating Thanksgiving – enjoy your turkey, your time off and all we have to be thankful for. For those, and everyone else… as always, Happy Roasting!

    Danny

  • Introducing Version 4.1

    Introducing Version 4.1

    Last night, Roastmaster 4.1 went live. If you haven’t installed it already, head over to the app store, grab the update and check out what’s new:

    • Reporting
    • Tab delimited exporting of report data
    • J Type thermocouple support for Data Logging users
    • Smoother temperature display for Data Logging users
    • The Roast Analyzer now displays crack and duration averages from past roasts as gradient bars in the bottom x-axis legend, removing some of the clutter that could present in complex roast comparisons, and giving a clear way to see how the milestones of your current roast are occurring compared to the past roasts your are targeting.
    • Selected curves in Analyzer now display as gradients, making it easier to discern between multiple current and past curves
    • Tap-and-hold to clone a Bean
    • Many under-the-hood and small usability tweaks
    • Fixed a bug that would result in a crash when attempting to delete a curve from a profile or program, if that curve was copied from a roast in which it was instantiated from a curve template.
    • Fixed a bug that would prevent deletion of a curve template from a Profile or Program

    For Data Logging Users: Roastmaster 4.1 uses the latest Phidgets software – build 2.1.8.20130618. For users with a PC or Mac host, please download the appropriate software and install the Preference Pane (Mac) or Control Panel (Windows). For those with an SBC host, please open the PhidgetSBC Administration Console by double clicking the SBC in the Preference Pane/Control Panel of your desktop computer, navigating to the “System” main tab, then the “Packages” subtab, and clicking the update all packages button. Once your Phidgets software is updated, Roastmaster 4.1 will be able to link to your probes.

    About the Update

    As the app gradually matures with each release, I find my greatest ambition is to enhance the ways in which the data you record is made available to you as you use Roastmaster, not only in the area in which it resides, but in other areas – areas where you need to see it, and where it will be the most beneficial. Alongside of this, an ever-present ambition is to enhance the user experience – making the app as fun and easy to use as possible.

    In the previous update, the Roast Analyzer screen was given a much-needed facelift. This included, among other things, the capability to display multiple roasts, and scroll through each one, seeing the current roast data compared to past roast and cupping data, to help you make informed decisions as you roast. After all, what good is dutifully recording data if you have to hunt and peck to retrieve it? That information should be easily accessible when and where you need it, in a way that makes it easy to understand and recognize patterns.

    This update continues that focus with one of the most requested features this year – reporting. Whether you make your livelihood from roasting coffee, or are a coffee enthusiast who, like me, spends more than your fair share on green coffee beans, it’s important to be able to see how much you roast, blend or cup. Even if you don’t faithfully cup all of your roasts, seeing exactly what you roast is a good indicator of your own personal preferences, and is a great way to see what you like, as well a good means to bring attention to beans, countries or regions you’ve been neglecting.

    What is Reporting?

    Whereas the roasting mode of the home screen graph only displays totals from top-level beans in your roasts, Roastmaster’s reporting engine scours your database, descending through as many levels of encapsulation as your roasts contain to extract the exact weights of the green beans you’re using. So, for instance, if you like to roast blends that are comprised of roasts – the reporting engine will track that bean usage all the way to the beans themselves, reporting the exact weights and cost involved. Pairing this with cost analysis paints a pretty comprehensive picture of not only your roasting habits, but your spending habits as well.

    Version 4.1 introduces 3 report types:

    • Bean Usage of Roasts: An exhaustive actual bean use and cost analysis of your roasts.
    • Bean Usage of Cuppings: An exhaustive actual bean use and cost analysis of your cuppings.
    • Bean Components of Blends: An exhaustive report of bean percentages and projected cost averages of beans per lb or kg of blend.

    Roastmaster’s reporting engine is equipped with flexible features:

    • Advanced automatic and customizable time ranges
    • Ability to group by Region, Country or Vendor, or lump everything together
    • Sorting by Amount, Cost or Name
    • Export to a tab delimited text file, including all of the bean details, amounts and costs, for sending to dropbox, iTunes file sharing or as an email attachment. Special attention has been paid to the data contained in the export – values are normalized and label free to allow easy sorting in your spreadsheet application.

    I encourage you to experiment with the reporting feature, and, if you aren’t in the habit of recording the cost of your beans, to start recording this as you receive bean shipments. The existing bean cost feature is very easy to use, just enter the amount paid, and the weight you received. For instance, you can enter $24.57 per 5 lb – Roastmaster handles all of the math when needed. This information is very helpful when using the reporting feature – especially if you’re on a budget.

    This is just the beginning of Reporting. I have ideas for more reports I plan to introduce in subsequent updates. If you have suggestions for other report types that would be beneficial to you, please let me know.

    Moving Forward

    Lots of things are planned for coming updates. I’ve done a lot of work under-the-hood with this release to prepare for the future. In the data logging arena, I’m in the process of securing test units and the SDKs for two interesting probes: the iCelsius BBQ and the Bluetherm Duo. Both units look promising, and both have their own individual strengths. Now that this update is released, I’ll be diving headfirst into coding and testing for hopeful support for Data Logging users in an update soon.

    Lots of other general features have been suggested by users. International localization, temperature-based alarms and events and iCloud syncing are among the most popular – all things I want to tackle. I’ve even got my own personal favorite ideas that are starting to get some requests – like integrating the coffee roasting taste wheel into cuppings, bean inventory lots/batches/skids to track changing costs and bean aging, and many others. Please let me know what you’d like to see in future updates – I gauge development by popularity – so the most votes win!

    As alway – Happy Roasting!

  • Introducing Version 4.0

    Introducing Version 4.0

    It is with great excitement that I can finally announce that Roastmaster 4.0 for iOS is live on the App Store! It’s been a long wait for many folks itching for the update – 10 months to be exact. For me, it’s been 9 months of development – lots of fun, and lots of hurdles. For the folks patiently waiting – thank you for your patience. I knew going into this update, based on the features I wanted to tackle, that it would mean a dry spell for updates, but I couldn’t be happier with the end product.

    Some of the great new features in this update:

    • Data Logging Add-On
    • Roast Analyzer
    • Curve Templates in Profiles and Programs
    • Better Handling of Numbers in International Locales
    • Auto Behmor Curves
    • Clone Roast
    • Hide Beans with Zero Inventory
    • Decimal Numbers in Cupping Scores
    • Show Automated Bean Tally for Roasts
    • iPad Retina
    • iPhone 5 Retina
    • Miscellaneous Bug Fixes
    • Internal Speed Improvements

    Data Logging add-on

    Far and away, the most requested feature over the past year has been data logging – a means to automatically record roast temperatures during a roast, instead of having to enter each and every node manually. I was more than happy to oblige, because data logging has long been something I wanted to tackle as well. In fact, some of the code hooks for data logging have been there since I wrote the first lines of code dealing with curves themselves.

    The first question you may be asking right now is “What probes are supported?” Well, unfortunately, there is no prebuilt commercial thermocouple I’m aware of that is compatible with iOS (at least for the temperature range required for roasting coffee). The majority of probes on the market are USB, which – as far as iOS is concerned, is utterly useless, as there is no formal USB support on iOS devices. Apple does offer a USB camera adapter, but that is not the same thing as a programatic USB stack built to handle communication with devices using the standard USB protocol. In fact – devices attached over this adapter have to emulate a keyboard in order for information to be passed to iOS apps – something no probe is built to do. Any attempts to bypass this would get an app rejected in an instant.

    So, the solution? Phidgets! Phidgets are amazing little pieces of hardware, designed primarily for prototyping, or environmental sensing or control projects. Where they really shine for us coffee roasters, is that they can be accessed over a standard ethernet network, like is used in common WiFi network environments – something Apple does not regulate. Roastmaster now has the ability to, with the Data Loggin option, link to Phidgets Temperature Sensors via a network host and report, and automatically log, temperatures throughout a roast from one or more K type thermocouples.

    Check back often for more information on Data Logging in Roastmaster. There are also detailed help files in the app that can be accessed from the Data Logging store in the Probe section of Utilities. For now, though, see the Data Logging Guide for an introduction to how Phidgets can be implemented in your workflow, as well as a parts list for the hardware you’d need to get started.

    Roast Analyzer

    Roastmaster has always let you record lots of details about your roasts. Though it’s easy to manually browse through that data, there’s not been an easy way to graphically see details about all of the roasts of specific beans and blends, and the associated cupping data. Also lacking was a way to graphically browse roasts that relate to a current roast – a way to not only see more details of a range of past curve data, but also the cupping data tied to those past roasts. Having this data at your fingertips, in an format that is easily browsable during a roast, is indispensable for putting that data to good use in shaping the current roast.

    Well, I’ve given the full screen graph a big and much-needed facelift – turning it into the Roast Analyzer. The Analyzer can be accessed from several areas of the app: the home screen, bean and blend details screens, and of course, the roasting console. When accessed via the roasting console, the analyzer will be populated with the same past roasts that are being displayed in the graph, as well, of course, as the current roast. When accessed from a bean or blend details screen, it will contain all of the roasts of that particular item.

    You can flip through the roasts displayed in the analyzer with the arrow buttons on the left and right side of the graph, or swipe along the bottom horizontal axis to pan through them quickly. Cupping data for the roast currently being viewed will be displayed on the left side of the graph as an average of all the cuppings of that roast.

    There are lots of UI improvements as well: clear markers with icons for durations, crack times and alarm time (both current and the focus past roast), sharper text, better rendering at higher zoom resolution, basic roast controls, the ability to set a roast alarm as well as a host of other small improvements.

    Curve templates in Profiles and Programs

    This one should be a big time-saver for a lot of folks. Profiles and Programs have always allowed you to store curves. These curves are designed to be instructional curves (in the case of “Control Curves”), or target curves (in the case of “Reading Curves”)–basically recipes for a roast. Version 4.0 introduces the concept of “Curve Templates”. Designed to speed workflow, Curve Templates function as placeholder curves, allowing you to set the name, color, curve type, probe binding for Data Logging users–all of the important curve details, and have new, identical curves automatically generated in a roast whenever you use that profile or program.

    Better handling of numbers in international locales

    Before this update, Roastmaster did not address the numbering formats of users in locales that do not use the “.” (period) decimal separator. Users in France and Germany, for instance, use “,” (comma) as the decimal separator. These users were forced to enter and read numbers and dates in the US format, rather than their native formate. To make matters worse, one of the main areas of data entry would not honor decimals in any regard for users whose locale was not set to US. These issues have been resolved – international users should notice that number entry now occurs correctly, based on their native locale. My sincere apologies to these users – and thanks for your patience.

    Auto Behmor Curves

    Lots of folks have been asking for a way to make Behmor curves automatically populate a roast, instead of having to manually define one for every roast. I drug my heels a bit on that one, because, as popular as the Behmor is, only a percentage of Roastmaster users are roasting with a Behmor – lots are shop roasters with Probat or Diedrich machines, or home roasters with one of the other home appliances on the market. To avoid cluttering the interface, I have, and will continue, to avoid anything roaster-specific in the UI design of the app. That, coupled with the international language barrier, made it a bit troublesome as to how to give Roastmaster the “smarts” it needs to be able to tell what profile, program and weight setting to use, in a database model that I designed to be flexible with organization, data use and naming schemes.

    I finally settled on a solution that was non-intrusive for folks who do not use the Behmor, and effective for those that do – simple string matching. Following is a list of conditions. If the “Auto Behmor Curves” preference is enabled, and the following conditions are met in a roast, Roastmaster will oblige by automatically creating a Behmor curve for you in that roast. Note: for any of the string patterns listed, the name must either match that string, or begin with that string followed by a space – e.g. a Profile titled either P1″ or “P1 Behmor Profile” would both be considered a positive match.

    1. Your are roasting with a roaster whose manufacturer field is “Behmor”, and whose model field is “1600”
    2. You are roasting with a profile named “P1”, “P2”, “P3”, “P4” or “P5”
    3. You are roasting with a program named “A”, “B”, “C”, or “D”
    4. You are roasting with a Custom Weight Setting named “.25” (or “1/4”), “.5” (or “1/2”) or “1” AND that Weight Setting belongs to a Weight Setting Type named “Weight”

    Naturally, those Profiles, Programs and Weight settings should represent the corresponding settings on the Behmor machine itself. Following these rules, you’ll find that roasting with a Behmor is a lot faster and more intuitive. I use auto Behmor curves every time I roast with my Behmor – hopefully you’ll love it like I do.

    Duplicate roast

    If you often roast the same bean, especially back-to-back in batches, you’ll appreciate this one. In the main roast list, tap and hold on any roast to duplicate it as a new roast, with the roasted items and roaster already filled in–ready to roast.

    Hide beans with zero inventory

    This was probably the third most requested feature. In any of the bean list views or bean choosers, you can pinch zoom to hide and show beans that have 0 inventory. Pinch-swipe apart to hide out of stock beans, pinch-swipe together to show all.

    Decimal numbers in cupping scores

    Prior to this update, cupping scores were limited to integers. You’ll now be able to enter cupping scores as decimals for each category, as well as the cupping correction.

    Show automated tally of roast ingredients

    If you like to roast blends, this one will come in handy. You’ll notice a blue button with a scale in the “Roasted Items” section of a roast. Once you’ve tagged the item(s) you’re about to roast, tap this button to show a list of the green beans you need. Roastmaster will tally up every bean, recursing through blends, and present a list with weights.

    iPad Retina support

    iPhone 5 Retina support

    Bug fixes

    Finally squashed the elusive “Inconsistency” error that would occur if you closed a database, and tried to navigate the app without opening another database first. Hopefully, only a few folks encountered this, but it’s been bothering me for some time.

    I really hope you enjoy the new update, and find the new features helpful. If you have any questions, just let me know.