1. 24 Sep, 2019 4 commits
  2. 22 Sep, 2019 7 commits
    • Rahix's avatar
      Merge 'ECG App update' · ee45bbd8
      Rahix authored
      See merge request !296
      ee45bbd8
    • Daniel Hoffend's avatar
      feat(ecg-app): Refactor ECG App · d7edf7e5
      Daniel Hoffend authored and Rahix's avatar Rahix committed
      New Button-Layout
      =================
      
                /-----------------------\
                |   xxxxxxxxxxxxxxxxx   |
                |                       |
                |                      <> * Pause screen
                |         card10        |
       +------- <>                     <> * During pause: Scroll right.
       |        |                       | * Short press: Toggle between Finger
       |        \-----------------------/    and USB.
      * During pause: Scroll left.        * Long press: Toggle bias on/off.
      * Short press: Toggle LED mode.
      * Long press: Start/stop logging.
      
      Other Changes
      =============
      - Split the bar into negativ [10:5] and positive [5:0] scale and update
        them seperate to have a better visualization.
      - Blink red with backside LEDs on detected pulse.
      - Allow toggling the LED modes on and off (see new button layout).
      - Lock mode & bias during logging.
      d7edf7e5
    • Rahix's avatar
      docs(utime): Document monotonic clock API · d3935ffd
      Rahix authored
      
      Signed-off-by: Rahix's avatarRahix <rahix@rahix.de>
      d3935ffd
    • Rahix's avatar
      chore: Update CHANGELOG and docs · db0ff2f6
      Rahix authored
      db0ff2f6
    • Rahix's avatar
      Merge 'Refactor BHI160 App' · 50839184
      Rahix authored
      See merge request !316
      50839184
    • Rahix's avatar
      refactor(preload/bhi): Make app more pythonic · 003aa2a0
      Rahix authored
      
      
      This patch makes the BHI160 app more pythonic and fixes a few
      bugs/issues:
      
      - An exception (including KeyboardInterrupt) will trigger the sensor to
        be closed again.  Otherwise you'd get strange behavior trying to
        reopen then afterwards.
      - Use simple_menu.button_events() instead of home-cooked solution.  This
        should hopefully make the code more future-proof.
      - Fix overlapping text caused by the font-rendering changes.
      Signed-off-by: Rahix's avatarRahix <rahix@rahix.de>
      003aa2a0
    • Rahix's avatar
      hack(streams): Discard overflowing samples · d974cd2f
      Rahix authored
      As discussed in !316, this commit prevents I2C lockup by
      discarding overflowing samples instead of blocking until they have been
      read.  This is not ideal as the samples read will not be the most recent
      ones.  A deeper refactor of the sensor-stream internal API can fix this
      in the future.
      
      Cc: @flo_h
      
      Signed-off-by: Rahix's avatarRahix <rahix@rahix.de>
      d974cd2f
  3. 21 Sep, 2019 6 commits
    • Rahix's avatar
      Merge 'Add monotonic clock' · c3ca9d22
      Rahix authored
      See merge request !285 and #146
      c3ca9d22
    • Ferdinand Bachmann's avatar
      feat(rtc): Add monotonic clock · f1251d66
      Ferdinand Bachmann authored and Rahix's avatar Rahix committed
      Squashed commits:
      
      e94f7bf9 epicardium/rtc: add monotonic time
      e0691c6d pycardium/modules/utime.c: add bindings for monotonic time
      756c13df epicardium/rtc: fix numerically unstable subsecond decoding
      
               the subsecond encoding function from epic_rtc_set_milliseconds
               and the corresponding decoding function from
               epic_rtc_get_milliseconds are not numerically stable.
      
               i.e., encoding 5 milliseconds to 20 subsecs and immediately
               afterwards decoding that yields 4 milliseconds.
      
               Adding a bias of 999 (0.24 milliseconds) to the decoding
               function makes it numerically stable, while never decoding any
               subsecond value to more than 999 milliseconds.
      
      e99e278b epicardium/rtc: only poll time once for calculating monotonic_offset
      18936b7e pycardium/modules/utime.c: run clang-format
      869ac617 epicardium/rtc: add explanation comment for numerically stable subsecond decode
      f1251d66
    • Rahix's avatar
      Merge 'Python API for ESB' · 5773e2e1
      Rahix authored
      See merge request !126
      5773e2e1
    • swym's avatar
      docs(pycardium): Document os.usbconfig · 23ab69df
      swym authored and Rahix's avatar Rahix committed
      23ab69df
    • swym's avatar
      feat(pycardium): Add ESB API · 4e4962d1
      swym authored and Rahix's avatar Rahix committed
      4e4962d1
    • Rahix's avatar
      docs(epicardium): Update task list · 1798ca80
      Rahix authored
      
      Signed-off-by: Rahix's avatarRahix <rahix@rahix.de>
      1798ca80
  4. 19 Sep, 2019 2 commits
  5. 16 Sep, 2019 8 commits
  6. 15 Sep, 2019 5 commits
    • Rahix's avatar
      Merge 'Add task_backtrace command' · ba451339
      Rahix authored
      See merge request !315
      ba451339
    • Rahix's avatar
      feat(gdb): Add task_backtrace command · 84dfdfd9
      Rahix authored
      
      
      The task_backtrace (aliased as tbt) command allows viewing the backtrace
      of a task which is currently not running.
      Signed-off-by: Rahix's avatarRahix <rahix@rahix.de>
      84dfdfd9
    • schneider's avatar
      Merge branch 'rahix/flush' into 'master' · 8c9eca95
      schneider authored
      Add serial_flush function
      
      Closes #164
      
      See merge request !314
      8c9eca95
    • Rahix's avatar
      feat(serial): Add serial_flush function · 86c8339e
      Rahix authored
      
      
      serial_flush() allows flushing the serial buffer from anywhere in
      Epicardium.
      
      - When run from thread mode it will flush to UART, CDC-ACM and BLE.
        This is similar to what the serial task would do once it is
        rescheduled.
      - When run inside an exception handler, it will only flush to UART
        because CDC-ACM and BLE cannot be flushed from an ISR.  Note that
        characters flushed this way will never appear on the other outputs,
        even if the serial task is scheduled at some point afterwards.
      
      The main use of this function is to ensure output of messages even in
      cases of critical failures.
      Signed-off-by: Rahix's avatarRahix <rahix@rahix.de>
      86c8339e
    • schneider's avatar
      fix(ble): Increase BLE task priority · 3a0b7452
      schneider authored
      Also decrease the time needed to update the LEDs
      3a0b7452
  7. 14 Sep, 2019 8 commits