Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Document and optionally move train-envelope timing into Doric hardware sequencing

Ouverte
#1 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
5/5
Temps estimé
Plus d'une semaine
Accessibilité débutants
35/100
Type d'issue
Fonctionnalité
Clarté
À clarifier
Activité
À l'abandon
Stack technique
python
Domaine
embedded-iot

Piste de recherche

Commencez par valider le comportement des séquences dans Doric Neuroscience Studio à l’aide de l’aperçu du signal de la GUI, puis lisez stim_controller.py et la documentation existante sur le timing. Le travail est terminé lorsque la décision concernant l’enveloppe du train gérée par le logiciel ou le matériel est documentée, que le contrat de configuration exact est défini et que stim_controller.py est mis à jour si la séquenciation matérielle est retenue.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

As of 2026-03-19, stimulation timing semantics need a clearer documented recommendation and a follow-up implementation decision.

Context

  • The app currently uses Doric hardware for pulse shape (period_ms, time_on_ms) but still enforces the train envelope (train.on_seconds, train.off_seconds) in Python timers.
  • Doric support clarified that the hardware-native mapping for a 20 Hz, 10 ms ON / 40 ms OFF pulse train with a 1 s ON / 3 s OFF envelope is:
    • period_ms = 50
    • time_on_ms = 10
    • nb_of_pulses_per_seq = 20
    • delay_between_seq_ms = 3000
    • nb_of_seq = 65535
  • Doric also recommended validating sequence behavior in Doric Neuroscience Studio first, using the GUI signal preview before transferring settings into code via ttlModulation and related DLL/API parameters.

Why this matters

  • Sequence semantics are not obvious, especially for nb_of_pulses_per_seq, delay_between_seq_ms, nb_of_seq, and Gated + Restart.
  • Misunderstanding those fields can produce materially different stimulation behavior.
  • If we want train envelopes to be hardware-timed, the controller should intentionally derive or honor those Doric sequence fields instead of relying on Python timers.

Current status

  • Docs were updated locally to explain the timing split and to add a strong recommendation to validate waveform design in Doric Studio first.
  • No runtime behavior was changed yet.

Follow-up questions

  • Should stimulus.train.* remain an app-level abstraction only, with explicit stimulus.square.* overrides for hardware-native sequencing?
  • Or should the controller derive Doric sequence parameters automatically from stimulus.pulse.* + stimulus.train.* when the pattern is representable in hardware?
  • For closed-loop use, do we want hardware-native train envelopes by default, or only when a dedicated mode/flag is enabled?

Acceptance criteria

  • Decide whether train OFF remains software-timed or moves to Doric-native sequencing.
  • If moving to hardware, define the exact config contract and update stim_controller.py accordingly.
  • Keep Doric Studio validation called out prominently in docs and operator workflow.
Langage dominant
Python
Étoiles
0
Forks
1
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Ce projet ne fournit ni conteneur de développement, ni Dockerfile, ni guide de contribution : l'installation est à votre charge. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de matiasandina/uid_python_api

Toutes les issues de matiasandina/uid_python_api

Issues similaires

Plus d'issues Python

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.