Title: pstim.py has hard dependency on NI-DAQmx hardware driver with no graceful fallback · Issue #291 · ControlCore-Project/concore · GitHub
Open Graph Title: pstim.py has hard dependency on NI-DAQmx hardware driver with no graceful fallback · Issue #291 · ControlCore-Project/concore
X Title: pstim.py has hard dependency on NI-DAQmx hardware driver with no graceful fallback · Issue #291 · ControlCore-Project/concore
Description: @pradeeban nintan/pstim.py imports nidaqmx at module level and immediately creates a hardware task: import nidaqmx from nidaqmx.constants import AcquisitionType from nidaqmx.stream_writers import DigitalSingleChannelWriter ... task = nid...
Open Graph Description: @pradeeban nintan/pstim.py imports nidaqmx at module level and immediately creates a hardware task: import nidaqmx from nidaqmx.constants import AcquisitionType from nidaqmx.stream_writers import D...
X Description: @pradeeban nintan/pstim.py imports nidaqmx at module level and immediately creates a hardware task: import nidaqmx from nidaqmx.constants import AcquisitionType from nidaqmx.stream_writers import D...
Opengraph URL: https://github.com/ControlCore-Project/concore/issues/291
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"pstim.py has hard dependency on NI-DAQmx hardware driver with no graceful fallback","articleBody":"@pradeeban \nnintan/pstim.py imports [nidaqmx](vscode-file://vscode-app/c:/Users/HP/AppData/Local/Programs/Microsoft%20VS%20Code/591199df40/resources/app/out/vs/code/electron-browser/workbench/workbench.html) at module level and immediately creates a hardware task:\n\n```\nimport nidaqmx\nfrom nidaqmx.constants import AcquisitionType\nfrom nidaqmx.stream_writers import DigitalSingleChannelWriter\n...\ntask = nidaqmx.Task()\ntask.do_channels.add_do_chan(\"Dev1/port0/line0\")\n```\n\n**Issues:**\n\n- The [nidaqmx](vscode-file://vscode-app/c:/Users/HP/AppData/Local/Programs/Microsoft%20VS%20Code/591199df40/resources/app/out/vs/code/electron-browser/workbench/workbench.html) package is not in [requirements.txt](vscode-file://vscode-app/c:/Users/HP/AppData/Local/Programs/Microsoft%20VS%20Code/591199df40/resources/app/out/vs/code/electron-browser/workbench/workbench.html)\n\n- It crashes on any machine without National Instruments hardware/drivers\n\n- The global [uglobal](vscode-file://vscode-app/c:/Users/HP/AppData/Local/Programs/Microsoft%20VS%20Code/591199df40/resources/app/out/vs/code/electron-browser/workbench/workbench.html) variable is modified by the main thread and read by [pwm()](vscode-file://vscode-app/c:/Users/HP/AppData/Local/Programs/Microsoft%20VS%20Code/591199df40/resources/app/out/vs/code/electron-browser/workbench/workbench.html) thread without any thread synchronization (race condition)\n\n- The [pwm()](vscode-file://vscode-app/c:/Users/HP/AppData/Local/Programs/Microsoft%20VS%20Code/591199df40/resources/app/out/vs/code/electron-browser/workbench/workbench.html) thread runs an infinite while True loop with no way to stop it cleanly\n\n- Device name \"Dev1/port0/line0\" is hardcoded — should be configurable via [concore.params](vscode-file://vscode-app/c:/Users/HP/AppData/Local/Programs/Microsoft%20VS%20Code/591199df40/resources/app/out/vs/code/electron-browser/workbench/workbench.html)","author":{"url":"https://github.com/GaneshPatil7517","@type":"Person","name":"GaneshPatil7517"},"datePublished":"2026-02-12T11:49:20.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/291/concore/issues/291"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:21d21810-cef4-f942-50c6-d5c289239fc7 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | DBCE:1230D0:262CB8:341DDD:698E1C94 |
| html-safe-nonce | a7f89991efedb1fc66f7517e2d99127edfc815ef0e55a3d31b8f2ed4a24fc00f |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJEQkNFOjEyMzBEMDoyNjJDQjg6MzQxREREOjY5OEUxQzk0IiwidmlzaXRvcl9pZCI6IjIyODY4OTk4MzQzODczMDc2NjgiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 367f64d26f8390073aeeb51f61eab50c12f459b28e439dbe479f321dd8fdd7e5 |
| hovercard-subject-tag | issue:3931421334 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/ControlCore-Project/concore/291/issue_layout |
| twitter:image | https://opengraph.githubassets.com/2a658bf5c873d904fa28244cd4305b15ff21f5dd7ba5d9f600746edc9fb2284a/ControlCore-Project/concore/issues/291 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/2a658bf5c873d904fa28244cd4305b15ff21f5dd7ba5d9f600746edc9fb2284a/ControlCore-Project/concore/issues/291 |
| og:image:alt | @pradeeban nintan/pstim.py imports nidaqmx at module level and immediately creates a hardware task: import nidaqmx from nidaqmx.constants import AcquisitionType from nidaqmx.stream_writers import D... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | GaneshPatil7517 |
| hostname | github.com |
| expected-hostname | github.com |
| None | 52130a026bd9a3f98228b6aa6af91acdab5d18de411e2c1e67e6253493561296 |
| turbo-cache-control | no-preview |
| go-import | github.com/ControlCore-Project/concore git https://github.com/ControlCore-Project/concore.git |
| octolytics-dimension-user_id | 79023615 |
| octolytics-dimension-user_login | ControlCore-Project |
| octolytics-dimension-repository_id | 444936447 |
| octolytics-dimension-repository_nwo | ControlCore-Project/concore |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 444936447 |
| octolytics-dimension-repository_network_root_nwo | ControlCore-Project/concore |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 301a1d7743177dcb7528b1322117cdafeda8ff08 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width