<feed xmlns='http://www.w3.org/2005/Atom'>
<title>labUI.git/ui/add_device_dialog.py, branch main</title>
<subtitle>Data acquisition program written in Python for use with serial communication devices.
</subtitle>
<id>https://git.kolset.xyz/labUI.git/atom?h=main</id>
<link rel='self' href='https://git.kolset.xyz/labUI.git/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/'/>
<updated>2026-07-29T19:41:29Z</updated>
<entry>
<title>Merge branch 'feat/device-naming'</title>
<updated>2026-07-29T19:41:29Z</updated>
<author>
<name>Christian Kolset</name>
<email>ckolset@colostate.edu</email>
</author>
<published>2026-07-29T19:41:29Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=934d3fc18bc4fc0e05d26a12d635915b00bd8c8d'/>
<id>urn:sha1:934d3fc18bc4fc0e05d26a12d635915b00bd8c8d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Add Developer Mode setting, Debug window, and gate simulate behind it</title>
<updated>2026-07-29T19:28:24Z</updated>
<author>
<name>Christian Kolset</name>
<email>ckolset@colostate.edu</email>
</author>
<published>2026-07-29T19:28:24Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=cf33095f77e6ff902fb69932fa704eb6192b3418'/>
<id>urn:sha1:cf33095f77e6ff902fb69932fa704eb6192b3418</id>
<content type='text'>
New Settings &gt; General &gt; "Developer mode" checkbox (default on, so
this repo's simulate-by-default workflow is unaffected out of the box)
persisted through the existing core/app_settings.py load/save
functions. Exposed to code that can't easily receive the settings dict
via core.app_settings.is_developer_mode()/set_developer_mode(), a
small in-memory cache MainWindow keeps in sync whenever settings are
loaded or applied.

Debug window (ui/windows/debug_window.py): minimal first pass per the
plan — a live console. core/debug_log.py tees stdout/stderr into a
ring buffer + Qt signal (installed once in main.py, before anything
prints), so the window shows everything printed since app start,
including from background poll threads, not just what's printed while
it happens to be open. Its toolbar button is hidden unless developer
mode is on.

Simulate gating: every device's Simulation Mode checkbox/dropdown is
now hidden when developer mode is off — ui/add_device_dialog.py (also
covers the motion_capture camera panel, which shares this same
checkbox rather than having its own), and the per-device config
widgets in analog_input.py, arduino_device.py, digital_io.py,
nidaqmx_device.py, serial_device.py. Hiding rather than force-clearing
an already-simulating device's state — an existing simulated device
keeps working if developer mode is turned off later; the option is
just not offered again until it's back on.

Co-Authored-By: Claude Sonnet 5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Add editable device display name, persist it across profile save/load</title>
<updated>2026-07-29T19:03:24Z</updated>
<author>
<name>Christian Kolset</name>
<email>ckolset@colostate.edu</email>
</author>
<published>2026-07-29T19:03:24Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=d9ca58e48cf92438087ac24ee261c2c4911316b1'/>
<id>urn:sha1:d9ca58e48cf92438087ac24ee261c2c4911316b1</id>
<content type='text'>
DeviceInfo.name existed but was hardcoded per device type and never
operator-editable. Adds a Display Name field to Add Device and makes
the Info-tab Name field in the device config dialog editable, and
threads the name through get_save_config()/ProfileManager.apply() so
a custom name survives a .labdaq save/reload instead of reverting to
the type default. Name is applied post-construction rather than as a
constructor kwarg, since no device factory declares a "name" param.

Co-Authored-By: Claude Sonnet 5 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>UI: streamline Add Device dialog and serial config widget</title>
<updated>2026-06-10T02:14:54Z</updated>
<author>
<name>Christian Kolset</name>
<email>christian.kolset@gmail.com</email>
</author>
<published>2026-06-10T02:14:54Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=0fa0568c06fd770ad104b464197b3bb03123f38e'/>
<id>urn:sha1:0fa0568c06fd770ad104b464197b3bb03123f38e</id>
<content type='text'>
Add Device dialog:
- Replace Available Devices QGroupBox with plain devWindowTitle label
  to match Configuration section style — no box/border
- Auto-scan on open via QTimer.singleShot(0)
- Rename Scan All → Refresh

Serial config widget:
- Fix gap between protocol panel and Available Serial Ports: introduce
  _AdaptiveStack (QStackedWidget subclass) that reports only the current
  panel's sizeHint; set Fixed vertical size policy so the stack never
  expands beyond its content regardless of window size
- Stretch added between Available Serial Ports and Apply &amp; Reconnect so
  the button stays pinned to the bottom
- Rename Channels → Signals in _GenericPanel and _SCPIPanel (Signal Queries)

Config dialog (device info tab):
- Rename Channels → Signals

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Redesign Add Device dialog with streamlined two-section layout</title>
<updated>2026-06-09T21:40:35Z</updated>
<author>
<name>Christian Kolset</name>
<email>christian.kolset@gmail.com</email>
</author>
<published>2026-06-09T21:40:35Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=a35b9b121218625445bda40729a8222243199c77'/>
<id>urn:sha1:a35b9b121218625445bda40729a8222243199c77</id>
<content type='text'>
- Unified device scanner at top (serial ports, NI devices, cameras)
  replaces per-panel scan groups; clicking pre-fills port/type
- Port, baud rate, NI Device, and simulation toggle moved into
  Available Devices section; shown/hidden by device type
- Device type, ID, and Protocol/Format grouped under Configuration
- Panel order: Serial/UART → Arduino → NI-DAQ (Serial first)
- Add button always enabled; validation on press shows error popup
  with focus jump to the offending field
- CameraPanel loses sim_chk (sim state set by dialog via set_simulate)

Co-Authored-By: Claude Sonnet 4.6 &lt;noreply@anthropic.com&gt;
</content>
</entry>
<entry>
<title>Improved arduino interface. Now allowing the user to configure pins on the fly.</title>
<updated>2026-04-27T22:53:14Z</updated>
<author>
<name>Christian Kolset</name>
<email>christian.kolset@gmail.com</email>
</author>
<published>2026-04-27T22:53:14Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=2b9943ba0d28449a590acfa8a41555b174b6ba84'/>
<id>urn:sha1:2b9943ba0d28449a590acfa8a41555b174b6ba84</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Added difference serial protocols</title>
<updated>2026-04-24T17:51:26Z</updated>
<author>
<name>Christian Kolset</name>
<email>christian.kolset@gmail.com</email>
</author>
<published>2026-04-24T17:51:26Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=67cfa0a514c7de4605ed7360e15a81aa781e510e'/>
<id>urn:sha1:67cfa0a514c7de4605ed7360e15a81aa781e510e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fixed saving profile to include devices and their configuration</title>
<updated>2026-04-22T18:21:28Z</updated>
<author>
<name>Christian Kolset</name>
<email>christian.kolset@gmail.com</email>
</author>
<published>2026-04-22T18:21:28Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=91101126e9d044adb8afa635cca1ab5d5a4c51a6'/>
<id>urn:sha1:91101126e9d044adb8afa635cca1ab5d5a4c51a6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Added port scanning for new devices and only shows related backend config lines</title>
<updated>2026-04-22T17:06:45Z</updated>
<author>
<name>Christian Kolset</name>
<email>christian.kolset@gmail.com</email>
</author>
<published>2026-04-22T17:06:45Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=38ba9706e43c24a9d882b9d0d627812e01a30744'/>
<id>urn:sha1:38ba9706e43c24a9d882b9d0d627812e01a30744</id>
<content type='text'>
</content>
</entry>
<entry>
<title>V8</title>
<updated>2026-04-20T22:55:57Z</updated>
<author>
<name>Christian Kolset</name>
<email>christian.kolset@gmail.com</email>
</author>
<published>2026-04-20T22:55:57Z</published>
<link rel='alternate' type='text/html' href='https://git.kolset.xyz/labUI.git/commit/?id=d5acb04b88373d33b038bb59945fb5ab8b4f543b'/>
<id>urn:sha1:d5acb04b88373d33b038bb59945fb5ab8b4f543b</id>
<content type='text'>
</content>
</entry>
</feed>
