Skip to content
Snippets Groups Projects

WIP: Use button_gestures module in ECG app

Open xiretza requested to merge xiretza/firmware:ecg-button-gestures into master
1 unresolved thread

This MR is mostly for tracking purposes right now - it definitely depends on !304, and I'm happy to wait for !296 (merged) to go through as well before rebasing.

Merge request reports

Merge request pipeline #3918 failed

Merge request pipeline failed for 58a15f38

Approval is optional
Ready to merge by members who can write to the target branch.

Merge details

  • The source branch is 880 commits behind the target branch.
  • 1 commit and 1 merge commit will be added to master (squashes 3 commits).
  • Source branch will not be deleted.

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • Sorry, it looks like this Merge Request has some code quality issues!

    The pipeline lint has failed - look at its failure output to understand what sort of diffs we'd like you to apply.

    You can also use tools/code-style.sh to fix files that have issues.

    Good luck! I will update this comment when I detect you have applied your fixes.

    • While running this I got a

      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      ...
      [       39944] lifecycle: Payload returned with 255.

      Later:

      TypeError: 'float' object isn't callable
      TypeError: 'float' object isn't callable
      ...
      [      351106] lifecycle: Payload returned with 255.
      TypeError: 'list' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      TypeError: 'tuple' object isn't callable
      [      500250] max30001: queue full
      [      500301] max30001: queue full
      [      500352] max30001: queue full

      Not sure where or why or if that has even been introduced by this PR. I was simply playing around with the buttons, trying to crash the app.

    • Author Contributor

      Damn, I came across this as well during testing, but thought I had worked around it by stripping down the ECG callback to a bare minimum. I doubt these objects are being called from python code directly - for one because there's no stack trace, and secondly because the types of the objects vary wildly, I can't think of any place in the code that would cause such behaviour. The symptoms smell more like (python) stack corruption or something similarly gnarly to me. My first suspicion falls on the asynchronous interrupt callback business, the only other thing I can think of that the new module does differently is that it uses a bunch of generators and yields.

      Could someone with a core 1 debugger try trapping on objtype.c:871 and runtime.c:631? The backtrace from there might shine some light on the matter.

    • Please register or sign in to reply
  • [       39944] lifecycle: Payload returned with 255.

    Ouch, that is a Pycardium Hardfault.

  • Blocked on !296 (merged) and !304 atm.

  • added 9-Blocked label

Please register or sign in to reply
Loading