matiasandina / matiasandina/uid_python_api

Investigate regression: TTL output on channel 4 may no longer toggle during runtime

Open
#13 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
0
Forks
1
PR merge metrics
No merged PRs in 30d

Description

Summary

As of 2026-04-15, there is a suspected regression where TTL output on channel 4 no longer behaves correctly during app-driven runs, despite the downstream electronics appearing healthy when tested directly through Doric.

Observed report:

  • it was believed to be working on 2026-04-13
  • it was not behaving correctly on 2026-04-14
  • direct Doric-side testing on 2026-04-15 suggests the electronics path is fine

This points to either a recent software/config regression or a mismatch between intended runtime settings and what is actually being written to the device.

Why this matters

This is exactly the class of issue where we need better confidence that the app wrote the intended Doric settings, especially around TTL-related configuration.

Candidate investigation path

  • compare recent commits touching stimulation / square / TTL-related code and config behavior
  • verify the effective runtime config for stimulus.square.ttl_output and any relevant channel selection for the failing protocol
  • check whether channel indexing or channel-resolution behavior changed around ch4
  • inspect the exact LightSourceSettings fields written in doric_light_source.py, especially isTTLOutput, channelIdx, and ttlModulation.*
  • compare known-good vs suspected-bad protocol overlays and session metadata
  • reproduce with a minimal config targeting only ch4 if possible

Important context

Direct hardware/electronics verification through Doric appears fine, so this should be treated first as an app/runtime regression until disproven.

Follow-up data to attach later

  • session metadata or CSV/TTL artifacts from a known-good run
  • session metadata or CSV/TTL artifacts from a failing run
  • exact overlay/config used in each case
  • commit range between the last known-good and first known-bad behavior

Acceptance criteria

  • identify whether this is a software regression, config mismatch, or false alarm
  • if real, isolate the responsible change or code path
  • add a focused regression test or validation step so channel-targeted TTL behavior does not silently drift again

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by comparing recent stimulation, square, and TTL-related commits with the effective runtime config for stimulus.square.ttl_output and channel selection. Inspect doric_light_source.py, especially LightSourceSettings fields isTTLOutput, channelIdx, and ttlModulation.*, then reproduce with a minimal ch4 configuration if possible. Done means distinguishing regression, config mismatch, or false alarm and adding a focused regression test or validation step.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
embedded-iot, testing-qa
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.