Code Monkey home page Code Monkey logo

otp22_oscale's Introduction

Card

OTP22_oScale

tag release issues bugs Status

Open Source Scale for Brewing Espresso.

More information can be found in the beautiful wiki.

๐Ÿšง The schematic and PCB are designed with CircuitMaker. The project can be found here.

Software Framework

GitHub Build Status GitHub Test Status IDE2 GitHub top language GitHub code size in bytes GitHub

Branches

Name Status Description
main active Main branch for developing with VSCode
unittest stale Branch to test unit test framework and github actions.

Technical Data

otp22_oscale's People

Contributors

sebastianoberschwendtner avatar

Stargazers

 avatar

Watchers

 avatar

otp22_oscale's Issues

Shutdown not reliable

๐Ÿ› Bug

When pressing the shutdown button not long enough the scale locks up. You have to press it longer than a short moment, though. ๐Ÿคท
When the button is pressed long enough the shutdown works.

Activate the Backlight

Current Behavior:

The backlight cannot be enabled by the user.

Expected Behavior:

The backlight should be enabled by pressing KEY0 for more than 2s.

Add Online Calibration

Current Behavior:

The calibration coefficients are hard coded and compile time.

Expected Behavior:

Add a calibration menu and procedure to perform the calibration by the user.

Finish Initial Documentation

The documentation for the following topics has to be done:

  • Hardware:
    • Schematic
    • BOM
    • Building the PCB
    • Assembling the Case
  • Software
    • Activity Diagrams
    • State Machine
    • Timing
  • README:
    • Technical Information

Improve the Filter for the ADC Data

Current Behavior:

The current filter is simple PT1 filter with a time constant of 0.5s.

Expected Behavior:

The filter should be improved to settle faster and also give the derivative of the weight measurement to get the flow rate.
Use the same filter as used in OTP-15 oVaro.

Timer too slow

Current Behavior

The timer of the scale counts too slow.

Expected Behavior

The timer should count in 1s intervall.

Fix

The system task has to wait one systick less to increment the counter value.

Implement a Task for Timing

Current Behavior:

The timing is included in the system task.

Expected Behavior:

Add a separate task for timing with a schedule of 1Hz.
โ‡’ Change the structure of the task groups and use the variable TickPassed for the fast tasks.

Add a Menu Screen

Expected Behavor

The scale should have a GUI screen for changing the settings and performing the calibration. This requires the state machine to be extended as shown in the state diagram.

Add Advanced Calibration

Current Behavior:

No calibration is applied, because with the current offset of the trimmer poti the scale reaches a accuracy of ยฑ1g. Which is fine for now.

Expected Behavior:

Since a linear calibration does not seem accurate enough, implement a advanced calibration with either a bilinear curve or a quadratic curve.

โ‡’ Further investigation on this topic will be necessary... ๐Ÿค”

Add a Welcome Screen

Expected Behavior:

Add a welcome screen from where the user can decide what to do next as defined in the state diagram.

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.