Git Product home page Git Product logo

Comments (18)

nilsbenson avatar nilsbenson commented on September 26, 2024 1

For the configuration I think we should probably introduce a menu that appears when the user goes to setup an entry. That menu has the traditional flip time as the default settings, so all the user has to do it set a time and it works like it normally does. There is also the total-time option in there, which would then go off into the flow that allows the user to select the total time and the number of flips to perform in that time period.

That way for regular use the clicks/steps are minimized and for total time use there's only 1 extra click (to select the "total time" option).
20200710_090745

from barbecueboss.

nilsbenson avatar nilsbenson commented on September 26, 2024 1

looks slick!

regarding out of memory - one thing that can be done is create a small SteakFire.png and use it for lower memory devices on the welcome view. I'm going to cherry pick a commit from low-n-slow-mockup into total time that has a new SteakFire-43x43.png that's implemented on the vivoactive (148x205) and overrides it normal one in the drawables.xml. This allowed the vivoactive to actually work instead of blowing up.

from barbecueboss.

nilsbenson avatar nilsbenson commented on September 26, 2024 1

see commit 7f05ad1 in low-n-slow-totaltime

For every set of images we need to consider sizing and which images are used / included in the resources to prevent out of memory. Cleaning up this single image for now should go a long way as it the 43x43 version is 4k instead of the 10k size of the original

from barbecueboss.

hhdegen avatar hhdegen commented on September 26, 2024

Food for thought ...

From a user experience perspective, the user need looks like:

  • UN.1 Get the food correctly cooked.
    What you want to avoid is to overcook it. This cannot be undone.

Assumption: Food is not cooked
Goal: Get food correctly cooked
Steps:
User task 1 (UT.1): Set timer for one food item

  • Put food on grill
  • on bboss: User selects food type.
  • on bboss: User selects overall cooking time. bboss stores selected cooking time for next use for the selected food type.
  • on bboss: User selects flip frequency or flip time (not sure what is more convenient or known). bboss stores selected flip frequency or flip time for next use for the selected food type.
  • on bboss: timer count down starts. It would be good to display the total count down and the next flip count down. If in doubt, only show next flip count down (this is the next action).

UT.2: Flip food (according timer)
While the timer is running and flipping takes place as timed:

  • bboss sends alarm to user. User flips food. User does not interact with the bboss.

User task 3: Flip food (not according timer)
While the timer is running and flipping takes place beyond the set flip time:

  • User flips food. User informs bboss about new flip time (long press on control). bboss sets automatically new flip time. bboss stores new flip time for that food type.

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

@hhdegen thanks this is good.

  • UT.1 is currently on flip time only. In the future we will extend to total time.
  • UT.2 behaves as described. No user interaction with bboss except for the alarm.
  • UT.3 behaves as described. However, these devices may not have long-press. We are still investigation. For now we implemented it with a regular press.
  • UT.4: Stop. User wants to stop the timer. We made an explicit Stop option. The long-press would feel very natural for stopping something.

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

This is my proposal for the total time. The picture also relates to #60. Thoughts?

image

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

Something I didn't consider in the picture above is that the Tenergy has 6 probes. At least we need to map the probe number to the steak. This info should probably make it to the screen (e.g., at the top/down/sides). Other variants include:

  • More than one probe per steak (e.g., to monitor a brisket's flat and point)
  • Probes for the environment temperature (e.g., at the grill-level, at the top of the chamber)

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

I will start working on the total time + flips screens tomorrow.

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

@nilsbenson I created a new branch (low-n-slow-totaltime) with a half working demo. The total time for grilling:

  • more screens, more clicks.
  • when grilling, setting a total time is constraining yourself. Things go wrong all the time, too hot, not hot enough, etc. Having an unbounded timer/flip system like our current implementation is much better I feel. Also, it gets tricky to manage random "flips" from the user. But now that I think about it, it would make sense to recalculate the secondsPerFlip. Say, you select 8 minutes cook with 4 flips, 2:00 per flip. In the first flip at 1:00 (or 7:00 to go) you advance the flip. You would be in flip #2, but your new flipTimer would be (7:00 / 3 = 2:20 instead of 2:00).

The code in SteakEntry shows how to do operations with time. This will be useful for the smoking and restoring times. I moved everything in terms of the unix time, and introduced the ETA (when the steak will be ready).

Thoughts?

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

I added the ETA in the SteakMenu and the Total Time feature it is not so bad. The only thing would be to decide what to do with a random flip. Or we simply do not allow that and only allow to Stop as it is implemented right now.

from barbecueboss.

hhdegen avatar hhdegen commented on September 26, 2024

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

@hhdegen that makes sense. Thanks.

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

My goal for the weekend:

  • Implement the random flip functionality for total time
  • Integrate the two modes (searing, total time)
  • Fetch last setting for TotalTime, Flips per steak position
  • Adjust positions of ETA and timeout + icons on the main screens

I'll stay in the low-n-slow-totaltime branch because it is getting messy.

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

The Searing mode does not have an ETA; it is unbounded. I moved the ETA time to the top. It only shows on steaks being cooked in TOTAL_TIME mode.

Screen Shot 2020-07-11 at 11 23 37 PM

Screen Shot 2020-07-11 at 11 23 47 PM

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

TODO:

  • Perhaps an icon (bell) would be the best way to represent the ETA.
  • SteakMenu needs to pull the coordinates for the progress bar and the ETA from the layout. Need to introduce a progressbar_{x,y} and an ETA_{x,y} definitions for all the watch configurations.

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

Added a quickoption to the total time. Instead of spreading the selection over two screens, it shows the totaltime+flips configured last for that steak position.

Screen Shot 2020-07-13 at 9 09 06 PM

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024
  • The plain Menu puts the title way too high for some watches. Updated the menu titles to single short words to provide a bit of context.
  • The bell for the ETA would be distracting. I think the ETA+progressbar provides all the needed context.

I will finalize the tweaking of the progressbar layouts and we can discuss the merge of the low-n-slow-totaltime branch.

from barbecueboss.

arquicanedo avatar arquicanedo commented on September 26, 2024

Closing as everything is working.

from barbecueboss.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.