Robert Jördens
c9daa50591
browser: PATH metavar
2016-04-20 16:23:47 +02:00
Robert Jördens
3d393e4654
browser: add root dir option, load only one file on restore
2016-04-20 13:46:03 +02:00
Robert Jördens
686f670a3c
browser: redo tree/list models
2016-04-20 13:20:57 +02:00
Robert Jördens
1f92e034da
Revert "browser: various fixes, handle startup path, connect activated"
...
This reverts commit c80510287b
.
2016-04-20 13:20:33 +02:00
Sebastien Bourdeauducq
c80510287b
browser: various fixes, handle startup path, connect activated
2016-04-20 18:25:43 +08:00
Sebastien Bourdeauducq
caf774579a
environment: refactor
2016-04-16 19:31:07 +08:00
Sebastien Bourdeauducq
d4ba525c9d
gui,browser: save state in home folder
2016-04-15 19:05:12 +08:00
Robert Jördens
4a297f0c42
browser: s/results/files/
2016-04-14 17:55:44 +08:00
Sebastien Bourdeauducq
0cca2bbef6
artiq_run: style
2016-04-12 15:16:48 +08:00
Sebastien Bourdeauducq
d9e918be49
dashboard/moninj: use thread instead of asyncio UDP ( #39 )
2016-04-11 18:09:41 +08:00
Robert Jördens
5e5f94a0f8
browser: WIP for experiment replay
2016-04-10 20:07:46 +08:00
Robert Jördens
6c200b1418
browser: make results a dock again
2016-04-10 16:29:29 +08:00
Robert Jördens
3472e1abd3
browser: rm mdi area
2016-04-07 20:22:06 +08:00
Sebastien Bourdeauducq
7e2e182315
put dashboard-specific files in separate directory
2016-04-06 15:45:02 +08:00
Robert Jördens
1f152bceb2
browser: own package, own datasets dock
2016-04-05 18:50:29 +08:00
Robert Jördens
aaa81a63d1
browser: use LocalModelManager, make the 'explorer' the central widget
2016-04-05 17:22:16 +08:00
Robert Jördens
670e8907a5
artiq_browser: load from hdf5
2016-04-05 17:22:16 +08:00
Robert Jördens
fa63637a2e
gui/browser: local model manager
2016-04-05 17:22:16 +08:00
Robert Jördens
91a362c898
add artiq_browser
2016-04-05 17:22:16 +08:00
Sebastien Bourdeauducq
1ff01a43ff
artiq_flash: clear error message when bin directory is absent
2016-04-05 16:09:41 +08:00
Sebastien Bourdeauducq
ed1c368e73
gateware: name targets consistently. Closes #290
2016-04-05 16:07:29 +08:00
Sebastien Bourdeauducq
3efb841557
client: add --async option to scan-repository, recommend usage in git post-receive
2016-04-04 22:17:39 +08:00
Sebastien Bourdeauducq
7453d85d5e
GUI -> dashboard
2016-04-04 22:12:45 +08:00
Sebastien Bourdeauducq
aa61c29efb
transfer Python builtin exceptions over pc_rpc and master/worker
2016-04-04 22:02:42 +08:00
Sebastien Bourdeauducq
a53d32c24e
master: always expose full set of worker handlers ( #368 )
2016-04-02 23:05:16 +08:00
Sebastien Bourdeauducq
29a76bb02d
influxdb: simplify and document pattern matching. Closes #166
2016-03-31 00:28:28 +08:00
Sebastien Bourdeauducq
b6232aea86
gui: better default layout
2016-03-29 16:59:43 +08:00
Sebastien Bourdeauducq
bebd89c959
gui: redesign table/trees to avoid slow and buggy qt/pyqt autosize. Closes #182 . Closes #187 .
2016-03-25 18:33:22 +08:00
Sebastien Bourdeauducq
b5441fd107
devices/novatech409b: convert to asyncserial
2016-03-22 21:55:58 +08:00
Sebastien Bourdeauducq
2cbe47e26f
protocols/pc_rpc: document coroutine methods, support locking
2016-03-22 21:55:06 +08:00
Sebastien Bourdeauducq
2859382e11
gui: display repository scanning status and revision. Closes #274
2016-03-18 00:40:54 +08:00
Sebastien Bourdeauducq
4bf0db32be
master: publish repository status
2016-03-18 00:40:17 +08:00
Sebastien Bourdeauducq
a142d403ea
gui: handle better changing MDI area background colors
2016-03-15 18:36:34 +08:00
Sebastien Bourdeauducq
ea523c765b
frontend/coreanalyzer: do not attempt to print obsolete decoded_dump attribute. Closes #324
2016-03-10 11:33:21 +08:00
Sebastien Bourdeauducq
763a4d3011
rpctool: use pprint in interactive mode
2016-03-02 11:47:34 +08:00
Sebastien Bourdeauducq
d0d50d74eb
rpctool: interactive mode
2016-03-02 11:45:51 +08:00
Robert Jördens
6dd1eb2e92
artiq_flash: use term 'gateware'
2016-02-29 20:45:41 +01:00
Sebastien Bourdeauducq
572c49f475
use m-labs setup for defaults
2016-02-29 21:35:23 +08:00
whitequark
914bc9f360
artiq_run: allow running LLVM IR/bitcode files, even with trivial RPCs.
2016-02-24 22:50:45 +00:00
Sebastien Bourdeauducq
c3cdce9d02
style
2016-02-25 01:22:43 +08:00
Robert Jördens
1b410abc2c
pdq2: move initialization and park/unpark to driver
2016-02-22 15:29:27 +01:00
Sebastien Bourdeauducq
e177bbd480
frontend/client: fix screen clear on Windows
2016-02-22 01:25:48 +08:00
Sebastien Bourdeauducq
ac6e31d655
frontend/rpctool: fix -t/--target. Closes #283
2016-02-22 00:55:45 +08:00
Robert Jördens
d713c62b50
pdq2 frontends: adapt to new program, cleanup
2016-02-21 17:35:10 +01:00
Sebastien Bourdeauducq
95dbafd662
gui: add logo to MDI area
2016-02-21 08:06:52 +08:00
Sebastien Bourdeauducq
3b81dd5adc
gui: workaround for Qt failing to embed applets in hidden and detached QDockWidgets
2016-02-19 18:13:25 +01:00
Robert Jördens
6830703ec6
artiq_master: directly log, explicit imports
2016-02-18 15:35:02 +01:00
Robert Jördens
0edde9f4d3
master: inform when running
2016-02-18 14:13:40 +01:00
Sebastien Bourdeauducq
87574193d4
gui: autoscroll MDI area
2016-02-16 00:19:50 +01:00
Sebastien Bourdeauducq
aa5f6a5aba
gui: basic MDI area
2016-02-15 23:58:44 +01:00
Sebastien Bourdeauducq
b9bce92bbb
Revert "gui: Qt wants a central widget in the main window, use explorer"
...
This reverts commit d81ce15869
.
2016-02-15 23:20:06 +01:00
Sebastien Bourdeauducq
72a993afe0
master: cache last RID. Closes #234
2016-02-15 18:20:50 +01:00
Sebastien Bourdeauducq
d30fe60edd
gui: remove pyqtgraph
2016-02-15 00:23:47 +01:00
Sebastien Bourdeauducq
3ab35f7f8d
gui: get rid of pyqtgraph.LayoutWidget
2016-02-15 00:05:30 +01:00
Sebastien Bourdeauducq
df16a1da73
gui: remove PyQt5 assertion (break mock modules)
2016-02-14 23:30:39 +01:00
Sebastien Bourdeauducq
15515f33ef
gui: better default placement of docks
2016-02-14 23:15:18 +01:00
Sebastien Bourdeauducq
cd732718ad
gui: save/restore main window geometry
2016-02-14 23:08:14 +01:00
Sebastien Bourdeauducq
d81ce15869
gui: Qt wants a central widget in the main window, use explorer
2016-02-14 23:04:14 +01:00
Sebastien Bourdeauducq
3c12c13a67
gui: dock state save/restore
2016-02-14 13:46:15 +01:00
Sebastien Bourdeauducq
daf49efa04
gui: rough conversion to the Qt docking system
2016-02-14 12:15:57 +01:00
Sebastien Bourdeauducq
6b6393ff56
gui: remove console
2016-02-13 22:48:38 +01:00
Sebastien Bourdeauducq
fb2f53ea9b
gui/datasets: support deleting datasets without console
2016-02-13 22:46:29 +01:00
Sebastien Bourdeauducq
338e5fe3fc
Merge branch 'applets_pipeipc'
2016-02-08 22:25:36 +01:00
Sebastien Bourdeauducq
d873c25b8b
Use Qt5
2016-02-08 19:32:40 +01:00
Sebastien Bourdeauducq
de99e7f830
applets: handle dataset mutations
2016-02-08 19:20:07 +01:00
Sebastien Bourdeauducq
dc955d46c9
Merge branch 'applets'
2016-02-08 14:55:53 +01:00
Sebastien Bourdeauducq
741b11c26d
applets: basic embedding OK
2016-02-08 09:59:15 +01:00
Sebastien Bourdeauducq
70a67a0e38
Merge branch 'applets' into applets_pipeipc
2016-02-05 13:29:20 +01:00
Sebastien Bourdeauducq
b7de92e96c
remove pxi6733 support (now lives at https://github.com/m-labs/aq_ni6733
2016-02-02 18:41:57 +01:00
Robert Jördens
10d78a5d0b
flash: grow runtime limit to 512 kB
2016-01-30 14:50:15 -07:00
Robert Jördens
e92d52314b
flash storage: move to flash + 0x70000
...
This requires recompiling and flashing the runtime and the entire
storage area file system (ip address and idle kernel).
* with ppp the runtime is larger than 0x40000 now
* 0x60000 for the runtime should give enough space for a while,
even including a fatter scheduler or runtime components
in other languages
* for both pipistrello and kc705 this leaves the unused space
starting at a nice round number
* the relevant flashes nowadays are 0x1000000 large
2016-01-28 18:08:30 -07:00
Robert Jördens
cda4a0765d
artiq_ctlmgr: refactor into artiq.devices.ctlmgr
2016-01-26 15:24:29 -07:00
Sebastien Bourdeauducq
5aa4de8e89
refactor logging and implement in worker
2016-01-26 20:31:42 +01:00
Robert Jördens
d1119d7747
artiq_dir: move out of tools to unlink dependencies
2016-01-25 18:15:50 -07:00
Robert Jördens
f4c7f02127
CoreException: store at 'py_exn.artiq_core_exception'
...
... and fix a few imports
2016-01-25 17:24:00 -07:00
Robert Jördens
2beaf23e6c
language...ARTIQException -> coredevice...CoreException
...
gets rid of a cross import
is only used there
2016-01-25 17:24:00 -07:00
Robert Jördens
cf17be92e3
doc: add artiq_flash
2016-01-18 21:41:42 -07:00
whitequark
e0d5b77e27
Commit missing parts of 127b117
.
2016-01-15 17:11:26 +00:00
whitequark
127b117113
Add @host_only function decorator ( #172 ).
2016-01-15 16:42:08 +00:00
Sebastien Bourdeauducq
e6e6b27ba9
gui: remove displays (use applets instead)
2016-01-10 18:32:46 +08:00
Sebastien Bourdeauducq
597c2e4b17
gui/applets: startup and embedding working
2016-01-08 13:04:36 +08:00
Sebastien Bourdeauducq
e106ee3f90
gui: basic applet dock editing
2016-01-07 20:23:17 +08:00
Robert Jördens
358ad2e927
artiq_flash: drop redundant instruction, tweak doc
2016-01-06 11:24:05 -07:00
Robert Jördens
9aff99568d
artiq_flash: use openocd, python
2016-01-05 10:20:41 +08:00
Robert Jördens
b10da212ab
bit2bin: add small bitstream conversion tool
2016-01-05 10:20:24 +08:00
whitequark
03dd1c3a43
Refactor the logic of printing diagnostics to solely rely on Engine.
2016-01-04 22:11:54 +08:00
Sebastien Bourdeauducq
e41b9db787
gui: minor cleanup
2016-01-03 00:47:43 +08:00
whitequark
8aa34ee952
compiler: don't require exceptions to inherit ARTIQException.
2015-12-31 21:54:54 +08:00
Sebastien Bourdeauducq
c9da5f4ecb
frontend: bind v4 and v6 localhost addresses by default, support multiple bind
2015-12-27 18:03:13 +08:00
Sebastien Bourdeauducq
5f3b69dd19
frontend/coreconfig: simplify action names
2015-12-24 18:54:23 +08:00
Sebastien Bourdeauducq
179c50480f
frontend: split coretool into coreconfig, corelog and coreanalyzer
2015-12-24 18:51:11 +08:00
Sebastien Bourdeauducq
e41e2c088d
analyzer: encapsulate decoded dump, get onehot sel from header
2015-12-24 00:31:21 +08:00
Sebastien Bourdeauducq
4be5df9802
coredevice/analyzer: DDS decoding
2015-12-23 18:57:53 +08:00
whitequark
ac5c86bfdc
artiq_compile: add missing import.
2015-12-21 21:15:18 +08:00
Sebastien Bourdeauducq
2ae63570dd
frontend/coretool: verbosity control
2015-12-20 23:17:31 +08:00
Sebastien Bourdeauducq
cdcb57effe
coredevice/analyzer: basic VCD writing
2015-12-20 19:32:52 +08:00
Sebastien Bourdeauducq
46f59b673f
coredevice: analyzer message decoding
2015-12-20 14:34:16 +08:00
Sebastien Bourdeauducq
10d4bfba38
frontend/coretool: basic analyzer dump
2015-12-18 18:23:16 +08:00
Sebastien Bourdeauducq
80172f9548
frontend/coretool: minor cleanup
2015-12-18 00:18:39 +08:00
Sebastien Bourdeauducq
93317d48c9
gui/explorer: file selector for experiments outside repos
2015-12-09 19:13:57 +08:00
Sebastien Bourdeauducq
7b2580583a
master: allow remote listing of directories
2015-12-08 19:24:04 +08:00
Sebastien Bourdeauducq
5e14afde3e
scheduler: use current (last scanned) repo revision instead of HEAD
2015-12-06 19:00:41 +08:00
Sebastien Bourdeauducq
f99c53d179
client: block until end of repository scan
2015-12-06 18:41:20 +08:00
Sebastien Bourdeauducq
ea6dcb2743
master: repository -> experiment_db
2015-12-06 18:39:27 +08:00
Sebastien Bourdeauducq
8467013160
master,gui: support recomputation+reset of arguments
2015-12-06 17:27:15 +08:00
Sebastien Bourdeauducq
f73c967b3e
gui/shortcuts: fix status bar usage
2015-12-01 18:22:12 +08:00
Sebastien Bourdeauducq
ff4c03014c
gui/shortcuts: integrate with experiment manager
2015-12-01 17:10:44 +08:00
Sebastien Bourdeauducq
afa8148b2b
gui/experiments: save/restore state
2015-11-30 11:40:50 +08:00
Sebastien Bourdeauducq
c382fac8f2
gui: experiment docks (WIP)
2015-11-27 19:30:05 +08:00
whitequark
c14299dca8
Merge branch 'new-py2llvm'
2015-11-24 03:01:54 +08:00
whitequark
af43c66149
artiq_compile: set file_import prefix, like in artiq_run.
2015-11-21 17:37:14 +08:00
whitequark
28fa68730a
Merge branch 'master' into new-py2llvm
2015-11-20 15:55:29 +08:00
Sebastien Bourdeauducq
3cbd7c4c13
gui: support multiple log docks
2015-11-12 01:13:57 +08:00
Sebastien Bourdeauducq
62c0eb85b1
gui/console: use network clients directly
2015-11-11 17:02:51 +08:00
Sebastien Bourdeauducq
4166f4e928
frontend: use atexit_register_coroutine in other tools
2015-11-11 16:22:12 +08:00
Sebastien Bourdeauducq
c3f99eda8f
gui: centralize subscribers
2015-11-11 12:13:19 +08:00
whitequark
51f04f6311
Explicitly use the python3.5 binary everywhere.
2015-11-07 13:39:39 +03:00
whitequark
0b5e1d174c
Unbreak artiq_flash.sh.
2015-11-07 13:26:14 +03:00
whitequark
d6d0a3e3e9
Merge branch 'master' into new-py2llvm
2015-11-07 12:57:18 +03:00
whitequark
da622937f6
Merge commit 'd0b5c3ba7fb' into new-py2llvm
2015-11-07 09:41:34 +03:00
Sebastien Bourdeauducq
a7c9c95085
gui/explorer: support requesting termination of all instances
2015-11-05 19:04:10 +08:00
Sebastien Bourdeauducq
3404a6565b
frontend/artiq_flash: reorganize device binaries
2015-11-04 10:40:46 +08:00
Sebastien Bourdeauducq
e26147b2ac
gateware,runtime: use new migen/misoc
2015-11-04 00:35:03 +08:00
Sebastien Bourdeauducq
644a410c90
thorlabs_tcube: fix -P case handling
2015-11-03 17:55:00 +08:00
Sebastien Bourdeauducq
a2c074cc33
gui: fix RPC client teardown
2015-11-01 00:03:46 +08:00
Sebastien Bourdeauducq
f57145c4f3
gui: support triggering repository rescan
2015-10-31 23:58:39 +08:00
Sebastien Bourdeauducq
58f55fc630
artiq_flash: check that xc3sprog is found. closes #162
2015-10-30 15:52:03 +08:00
Sebastien Bourdeauducq
2c77c80b4f
master: expose more scheduler APIs to the experiments
2015-10-30 13:41:18 +08:00
whitequark
f70f7fb89b
Merge branch 'master' into new-py2llvm
2015-10-30 04:29:35 +03:00
Sebastien Bourdeauducq
0d53f7ab0d
ignore ProcessLookupError when killing subprocesses. Closes #167
2015-10-28 20:57:28 +08:00
Sebastien Bourdeauducq
4e35a247d1
pdq2_client: remove unnecessary calls
2015-10-28 09:48:14 +08:00
Sebastien Bourdeauducq
3789273e29
pdq2_client: remove init call
2015-10-28 09:47:01 +08:00
whitequark
30842a7174
conda: include udev rules and artiq_flash.sh in artiq package.
2015-10-22 17:18:59 +03:00
Sebastien Bourdeauducq
ec02bea054
controllers/thorlabs_tcube: accept any case for -P. Closes #150
2015-10-21 09:17:39 +08:00
Sebastien Bourdeauducq
d13b368a65
build logging into worker
2015-10-20 18:11:50 +08:00
Sebastien Bourdeauducq
5947f54855
pc_rpc: autotarget support
2015-10-18 14:34:30 +08:00
Sebastien Bourdeauducq
7f5e264971
ctlmgr: add hostname to log source
2015-10-17 10:58:15 +08:00
Sebastien Bourdeauducq
f332c1d3cc
ctlmgr: forward controller logs
2015-10-16 20:08:11 +08:00
Sebastien Bourdeauducq
9e96a687e2
ctlmgr: forward log to master
2015-10-16 18:35:58 +08:00
Sebastien Bourdeauducq
cbda753f44
master: TCP server for remote logging
2015-10-16 00:53:35 +08:00
Sebastien Bourdeauducq
f3b3bf3036
gui: log filtering
2015-10-14 21:21:19 +08:00
whitequark
e9adfd639e
Merge branch 'master' into new-py2llvm
2015-10-14 16:09:57 +03:00
Sebastien Bourdeauducq
c00bce3967
master,client,gui: logging sources, timestamps, levels
2015-10-14 01:06:57 +08:00
whitequark
bd5b324fc2
Merge branch 'master' into new-py2llvm
2015-10-13 19:24:45 +03:00
Sebastien Bourdeauducq
3cec176318
get_ddb -> get_device_db
2015-10-12 19:46:31 +08:00
Sebastien Bourdeauducq
b51910fa42
compile,coretool: use new dataset API
2015-10-12 19:32:16 +08:00
Sebastien Bourdeauducq
a83ffb3dce
protocols: move FlatFileDB into pyon
2015-10-12 18:19:28 +08:00
Sebastien Bourdeauducq
22bffa98b5
client: use short_format in dataset display
2015-10-12 18:10:58 +08:00
Sebastien Bourdeauducq
97accd2540
merge parameters and results into datasets
2015-10-12 17:18:23 +08:00
Sebastien Bourdeauducq
139072d402
Graceful experiment termination. Closes #76
2015-10-06 13:50:00 +08:00
Sebastien Bourdeauducq
b3584bc190
language,master,run: support raw access to DDB from experiments. Closes #123
2015-10-04 18:29:39 +08:00
Sebastien Bourdeauducq
0e3927b01a
master: support DDB rescan
2015-10-04 17:38:07 +08:00
Sebastien Bourdeauducq
50a5a3baf0
environment: attr_* -> setattr_*
2015-10-04 00:18:21 +08:00
Sebastien Bourdeauducq
f552d62b69
use Python 3.5 coroutines
2015-10-03 19:28:57 +08:00
Sebastien Bourdeauducq
b117b9320d
asyncio.async -> asyncio.ensure_future
2015-10-03 14:37:02 +08:00
Sebastien Bourdeauducq
125503139e
remove workaround for Python bug in asyncio process.wait(). Requires Python 3.5. Closes #58
2015-10-03 14:33:18 +08:00
whitequark
3e1348a084
Merge branch 'master' of github.com:m-labs/artiq into new-py2llvm
2015-09-27 18:22:28 +03:00
Robert Jördens
01416bb0be
copyright: claim contributions
...
These are contributions of >= 30% or >= 20 lines (half-automated).
I hereby resubmit all my previous contributions to the ARTIQ project
under the following terms:
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/ >.
Closes #130
Signed-off-by: Robert Jordens <jordens@gmail.com>
2015-09-06 16:08:57 -06:00
whitequark
2df8b946f9
Factor out the code to pretty-print diagnostics.
2015-08-31 22:52:39 -06:00
whitequark
98bb570aec
log.c: fix off-by-one error.
2015-08-28 03:06:40 -05:00
whitequark
6b8ef8c490
artiq_run: use "artiq_run_" as user code module prefix, not "file_import_".
2015-08-28 02:22:59 -05:00
whitequark
ed236eb7f2
artiq_run: pretty-print diagnostics.
2015-08-28 01:54:51 -05:00
whitequark
d473d58b41
artiq_{compile,run}: adapt to new compiler.
2015-08-28 01:43:46 -05:00
Yann Sionneau
7db0498a9a
artiq_flash: dont prepend the runtime file with mezzanine board directory if using -d
2015-08-27 11:02:06 +02:00
Sebastien Bourdeauducq
1c96f258b1
gui: show server in window title
2015-08-25 00:37:49 +08:00
Sebastien Bourdeauducq
84b07607ad
gui: do not attempt moninj on windows
2015-08-24 20:20:33 +08:00
Yann Sionneau
34771ade67
artiq_flash.sh: fix runtime programming and allow usage of -d . -r
2015-08-22 15:28:55 +02:00
Yann Sionneau
5fc5d0b672
artiq_flash: replace wrong wording 'carrier' with 'mezzanine'
2015-08-21 09:38:15 +02:00
Yann Sionneau
646721d3e9
artiq_flash: add missing semicolons
2015-08-20 18:28:00 +02:00
Yann Sionneau
df7489ff61
travis/conda: add automated builds for kc705 nist_qc2 subtarget
2015-08-20 16:31:48 +02:00
Sebastien Bourdeauducq
600e8335f2
influxdb: tag-based schema, better type support
2015-08-18 14:49:23 +08:00
Sebastien Bourdeauducq
ed00ca1485
influxdb: do not crash on parameter deletion
2015-08-18 13:35:05 +08:00
Sebastien Bourdeauducq
2ac8c53bbe
influxdb: use types
2015-08-18 13:34:42 +08:00
Sebastien Bourdeauducq
2275017651
influxdb: better error reporting
2015-08-18 13:34:15 +08:00
Sebastien Bourdeauducq
66b5ca99d8
influxdb: better filtering
2015-08-18 09:59:48 +08:00
Sebastien Bourdeauducq
324cafae3d
rpctool: use pprint
2015-08-17 15:45:08 +08:00
Sebastien Bourdeauducq
abbf5eb059
gui: minor cleanup
2015-08-17 15:44:54 +08:00
Sebastien Bourdeauducq
fd3fefec52
add InfluxDB bridge
2015-08-17 15:44:40 +08:00
Sebastien Bourdeauducq
34a9c8c12d
artiq_run: add dummy pause method ( closes #100 )
2015-08-15 09:16:00 +08:00
Sebastien Bourdeauducq
998db5121b
pc_rpc: id_parameters -> description
2015-08-11 23:29:52 +08:00
Sebastien Bourdeauducq
a6ab066c87
ctlmgr: support immediate controller retry
2015-08-11 23:22:36 +08:00
Sebastien Bourdeauducq
54b11a392a
ctlmgr: graceful controller termination
2015-08-09 20:41:11 +08:00
Sebastien Bourdeauducq
a21049d779
ctlmgr: exponential backoff
2015-08-09 18:28:56 +08:00
Sebastien Bourdeauducq
3f68d0ba8f
ctlmgr: ping controllers
2015-08-09 17:30:46 +08:00
Sebastien Bourdeauducq
400b414885
master,client: support scanning specific repo revisions
2015-08-08 23:23:25 +08:00
whitequark
4efae2b67d
Formatting.
2015-08-08 13:48:25 +03:00
whitequark
ecdebc0b8a
session.c: refactor.
2015-08-08 13:21:43 +03:00
Sebastien Bourdeauducq
1818e8173b
client: log display support
2015-08-08 18:02:42 +08:00
Sebastien Bourdeauducq
c80f0fa07a
master: delete head repository checkout on exit
2015-08-08 11:44:19 +08:00
Sebastien Bourdeauducq
585bb236f8
master: add ddb/pdb args
2015-08-08 11:13:36 +08:00
Sebastien Bourdeauducq
7ed8fe57fa
Git support
2015-08-07 15:51:56 +08:00
Sebastien Bourdeauducq
968760d48f
gui: save geometry of main window
2015-08-06 22:27:46 +08:00
Sebastien Bourdeauducq
cddb5b9ae4
gui: save explorer state
2015-08-05 13:35:28 +08:00
Sebastien Bourdeauducq
c8db83b11f
gui: add verbosity args for debugging
2015-08-05 11:41:43 +08:00
whitequark
ad7cbc4394
Rename artiq_coreconfig → artiq_coretool; add log subcommand.
2015-08-02 16:40:58 +03:00
whitequark
8d0222c297
Rename artiq_coreconfig → artiq_coretool; add log subcommand.
2015-08-02 16:40:43 +03:00
Sebastien Bourdeauducq
8ad88438c7
gui: save display state
2015-08-01 19:37:16 +08:00
Sebastien Bourdeauducq
00cae1c23a
gui: save dock area state
2015-08-01 16:48:44 +08:00
Sebastien Bourdeauducq
d14a31f443
artiq_run: fix ELF running
2015-07-25 15:52:38 +08:00
Sebastien Bourdeauducq
696bceb406
gui: feedback on run deletion
2015-07-25 15:08:27 +08:00
Sebastien Bourdeauducq
ef8b09d9bc
gui: add console
2015-07-25 00:36:16 +08:00
Sebastien Bourdeauducq
3a06e22b67
master: handle logging while scanning repository
2015-07-23 23:06:15 +08:00
Sebastien Bourdeauducq
bd2bd68a54
gui,client: do now show arguments
2015-07-22 05:47:14 +08:00
Sebastien Bourdeauducq
8402f1cdcd
master,gui: basic log support
2015-07-22 05:13:50 +08:00
Sebastien Bourdeauducq
179ca36d09
gui: basic scan support
2015-07-21 21:24:24 +02:00
Sebastien Bourdeauducq
1a0dc499dd
gui: exit when main window is closed
2015-07-19 18:27:41 +02:00
Sebastien Bourdeauducq
dd7920f0c3
gui: basic argument support
2015-07-17 21:28:46 +02:00
Sebastien Bourdeauducq
6b36d93cc2
master,client: support repository rescan
2015-07-17 18:55:48 +02:00
Sebastien Bourdeauducq
39c6bc940c
coreconfig: use new database API ( closes #75 )
2015-07-17 10:49:55 +02:00
Sebastien Bourdeauducq
9649e1837a
gui: basic plotting
2015-07-16 20:52:53 +02:00
Sebastien Bourdeauducq
84de2fb28b
expid: experiment -> class_name
2015-07-15 11:08:12 +02:00
Sebastien Bourdeauducq
9ed4dcd7d1
repository: load experiments in worker, list arguments
2015-07-15 10:54:44 +02:00
Sebastien Bourdeauducq
21e8596d8c
gui: RT results overview
2015-07-14 17:31:18 +02:00
Sebastien Bourdeauducq
32d141f5ac
refactor ddb/pdb/rdb
2015-07-13 22:21:32 +02:00
Sebastien Bourdeauducq
0e92cfe053
artiq_run: remove support for stale watchdog API
2015-07-11 22:26:37 +02:00
Sebastien Bourdeauducq
9d4073ef36
master: remove simple parameter history
2015-07-09 13:54:38 +02:00
Yann Sionneau
d7ef885d9e
controllers: print+exit instead of raising exception for argparse error, better doc for --simulation
...
As long as you use --simulation, the driver will be in simulation mode.
Even if you specify a --device or --channels.
That can allow you to just switch to simulation mode by adding
--simulation in the device database without having to
remove the serial number or device path/name.
2015-07-01 11:54:28 +02:00
Yann Sionneau
652f3359a2
lda_controller: fix typo
2015-07-01 11:41:01 +02:00
Yann Sionneau
ffe1355b1a
lda_controller: improve help message for --device argument
2015-06-29 19:24:55 +02:00
Yann Sionneau
a73776bd72
controllers: enforce the usage of either --simulation or --device
2015-06-29 19:21:32 +02:00
Yann Sionneau
515aa96819
controllers: use --simulation for simulation
2015-06-29 13:04:01 +02:00
Robert Jördens
07ceed9512
artiq_flash.sh: back down on verbosity
2015-06-26 11:09:26 -06:00
Robert Jördens
48e0a2ad37
artiq_flash: echo commands for a bit more verbosity
2015-06-25 13:28:05 -06:00
Sebastien Bourdeauducq
4ba8951ae1
rpc: fix indentation of class docstring
2015-06-23 19:31:52 +00:00
Yann Sionneau
71721a152e
artiq_rpctool: list-methods also prints class docstring
2015-06-23 18:35:32 +02:00
Yann Sionneau
b8bb3d8ca7
manual: explain how to select TCube device from serial number
2015-06-19 17:06:50 +02:00
Yann Sionneau
4cdf1c4b81
manual: serial number explanations + udev rule for LDA
2015-06-19 16:41:44 +02:00
Yann Sionneau
77ca8bbf0f
artiq_coreconfig: better arg parsing
2015-06-18 17:07:20 +02:00
Yann Sionneau
afc70926d7
artiq_coreconfig: use subparsers for arg parsing
2015-06-17 16:40:27 +02:00
Yann Sionneau
95ff21d829
gui: add ARTIQ icon
2015-06-16 17:01:53 +02:00
Yann Sionneau
4c8917afbd
artiq_flash: use BIT files instead of BIN files
2015-06-16 01:39:41 +02:00
Sebastien Bourdeauducq
86fbe38371
gui: DDS monitor/injection (WIP)
2015-06-12 17:41:04 +08:00
Yann Sionneau
c251601204
pxi6733: refactor, allow multiple channels in one task, cancel any previous task
2015-06-05 20:12:46 +02:00
Sebastien Bourdeauducq
9f9079589e
gui: send monitor requests to core device
2015-06-05 14:52:41 +08:00
Sebastien Bourdeauducq
aa242f7c66
scheduler: simplify priority policy
...
Remove overdueness. User must submit calibration experiments with higher priority values for them to take precedence.
2015-05-28 18:24:45 +08:00
Sebastien Bourdeauducq
4a7c6954c3
artiq_run: implement mockups of new scheduler API
2015-05-28 17:24:47 +08:00
Sebastien Bourdeauducq
737f6d4485
scheduler: support pipeline flush
2015-05-28 17:20:58 +08:00
Yann Sionneau
4bf7875b87
flash_storage: refactor + unit tests + artiq_coreconfig.py CLI + doc
2015-05-27 18:06:12 +08:00
Sebastien Bourdeauducq
5fb86af3a4
gui: support experiment cancellation
2015-05-24 23:20:52 +08:00
Sebastien Bourdeauducq
e611e17eeb
gui: experiment submission
2015-05-24 20:24:07 +08:00
Sebastien Bourdeauducq
d6ced1c780
scheduler: support priorities
2015-05-24 01:09:22 +08:00
Sebastien Bourdeauducq
2f910921f5
gui: console -> log
2015-05-24 00:38:30 +08:00
Sebastien Bourdeauducq
d9c25130e3
gui: add explorer widgets
2015-05-23 01:25:33 +08:00
Sebastien Bourdeauducq
2570444941
gui: add empty explorer and console docks
2015-05-22 23:30:46 +08:00
Sebastien Bourdeauducq
ea53ed1af7
gui: switch to Qt
2015-05-22 17:06:31 +08:00
Sebastien Bourdeauducq
d8917fd94f
Merge branch 'master' of github.com:m-labs/artiq
2015-05-17 16:11:16 +08:00
Sebastien Bourdeauducq
b74b8d5826
Scheduling TNG
2015-05-17 16:11:00 +08:00
Yann Sionneau
e9b166b199
artiq_flash.sh: some cleanup
2015-05-14 11:12:03 +02:00
Sebastien Bourdeauducq
4048568d8e
support kernel handover with coherent time
2015-05-02 23:41:49 +08:00
Sebastien Bourdeauducq
62669f9ff2
soc: factor timer, kernel CPU and mailbox
2015-05-01 18:51:24 +08:00
Sebastien Bourdeauducq
109dfab76c
frontend: add artiq_mkfs
2015-04-30 20:03:11 +08:00
Sebastien Bourdeauducq
8a796a6818
artiq_run/ELFRunner: create a core device object (necessary for runtime exception processing)
2015-04-30 10:16:24 +08:00
Zach Smith
5df446ec4b
artiq_flash.sh: fix Pipistrello flash proxy filename
2015-04-30 09:24:13 +08:00
Sebastien Bourdeauducq
86c012924e
targets: rename AMP->Top, merge peripherals
2015-04-28 00:18:54 +08:00
Sebastien Bourdeauducq
938e1c2842
Remove UP support.
...
The only advantage of UP is to support the Papilio Pro, but that port is also very limited in other ways and the Pipistrello provides a more reasonable platform that also supports AMP.
On the other hand, RPCs on UP are difficult to implement with the session.c protocol system (without an operating system or coroutines), along with many other minor difficulties and maintainance issues. Planned features such as watchdogs in the core device are also difficult on UP.
2015-04-27 20:43:45 +08:00
Yann Sionneau
69388ccc1a
pxi6733: add driver and controller
2015-04-21 16:09:55 +08:00
Yann Sionneau
e19f8896f0
artiq_rpctool: document numpy availability in RPC call cmd line arguments
2015-04-21 15:57:29 +08:00
Sebastien Bourdeauducq
301a0e6447
rpctool: import numpy
2015-04-21 15:57:25 +08:00
Yann Sionneau
52fe66ee4d
artiq_flash.sh: improve detection of flash proxy location
...
Flash proxy is now searched in ~/.migen /usr/local/share/migen
/usr/share/migen and in the directory specified by "-d" argument
or in artiq/binaries/<board_name>/ if "-d" is not specified.
2015-04-17 00:57:16 +08:00
Robert Jördens
c0213c9f69
artiq_flash.sh: add pipistrello
2015-04-14 22:37:08 -06:00
Sebastien Bourdeauducq
07b8e1292f
artiq_flash: fix stderr redirections
2015-04-11 23:43:33 +08:00
Sebastien Bourdeauducq
8a2b8fc634
artiq_flash: do not always assume permission problems
2015-04-11 22:54:17 +08:00
Yann Sionneau
8a3be4eca0
artiq_flash: add support for kc705
2015-04-11 22:38:11 +08:00
Sebastien Bourdeauducq
efd1c24ed7
frontend: add artiq_compile tool to build default experiment
2015-04-07 15:41:32 +08:00
Sebastien Bourdeauducq
5e046dc5ce
artiq_run: move parse_arguments and get_experiment to tools
2015-04-07 13:04:47 +08:00
Sebastien Bourdeauducq
9b46bc623a
dbhub: do not use as context manager, turn close exceptions into warnings, do not close devices early in worker
2015-04-05 17:49:41 +08:00
Robert Jördens
0ec7e9a98c
artiq_run: fix get_argparser()
2015-04-04 21:17:24 -06:00
Robert Jördens
1a1afd5410
artiq_run: refactor, support use from within experiments
...
You can always (under posix) use #!/usr/bin/env artiq_run as
shebang for experiments and make them executable.
Now, you can also do this (portable):
if __name__ == "__main__":
from artiq.frontend.artiq_run import run
run()
to make an experiment executable. The CLI options are all inherited.
Also:
* removed --elf: can be inferred from filename
* did some refactoring and cleanup
* use logging for all messages, except the result printing (use -v to get
parameter changes and dummy scheduler actions)
2015-04-04 20:51:48 -06:00
Yann Sionneau
e7be00baa8
Add support for automatic build and upload of dev conda artiq packages to binstar by travis-ci
...
- SoC+BIOS are also built and integrated in the conda package
- artiq_flash.sh script is embedded to allow flashing ppro board
2015-03-30 19:51:52 +08:00
Sebastien Bourdeauducq
bd2f6ea9f9
thorlabs_tcube_controller: use simple_network_args
2015-03-25 16:20:08 +01:00
Yann Sionneau
5ca5a3602e
novatech409b: cleanup
2015-03-25 16:11:11 +01:00
Sebastien Bourdeauducq
768fa21488
lda_controller: show default product type
2015-03-23 20:02:36 +01:00
Sebastien Bourdeauducq
bd145bbabc
use %(default) in argparse
2015-03-23 20:02:14 +01:00
Yann Sionneau
91336f974d
lda_controller: replace serial argument with device one
2015-03-23 17:02:39 +01:00
Yann Sionneau
2651050c83
Controller cleanups
2015-03-23 17:02:39 +01:00
Sebastien Bourdeauducq
1b7f71bda9
controllers: consistent device/simulation specification
2015-03-22 00:48:15 +01:00
Robert Jördens
8cb77b0336
pdq2: rename url parameter to device and require it
2015-03-21 00:33:50 -06:00
Sebastien Bourdeauducq
200e20fb39
worker: close devices immediately after run and before analyze
2015-03-20 12:01:34 +01:00
Robert Jördens
577754c38f
pdq2: fix argparser
2015-03-19 22:26:12 -06:00
Robert Jördens
222d0a9d37
pdq2_controller: add dump option
2015-03-19 21:38:46 -06:00
Robert Jördens
5ab3290ed4
pdq2: add refactored client code
2015-03-19 20:34:29 -06:00
Sebastien Bourdeauducq
2b3641ac0a
db,worker: fix realtime result initialization
2015-03-13 15:12:55 +01:00
Sebastien Bourdeauducq
5ca4821a29
ctlmgr: use workaround for asyncio.wait_for(process.wait()... Python bug
2015-03-11 16:48:16 +01:00
Sebastien Bourdeauducq
d5795fd619
master: watchdog support
...
Introduces a watchdog context manager to use in the experiment code that
terminates the process with an error if it times out. The syntax is:
with self.scheduler.watchdog(20*s):
...
Watchdogs timers are implemented by the master process (and the worker
communicates the necessary information about them) so that they can be
enforced even if the worker crashes. They can be nested arbitrarily.
During yields, all watchdog timers for the yielding worker are
suspended [TODO]. Setting up watchdogs is not supported in kernels,
however, a kernel can be called within watchdog contexts (and terminating
the worker will terminate the kernel [TODO]).
It is possible to implement a heartbeat mechanism using a watchdog, e.g.:
for i in range(...):
with self.scheduler.watchdog(...):
....
Crashes/freezes within the iterator or the loop management would not be
detected, but they should be rare enough.
2015-03-11 16:43:14 +01:00
Sebastien Bourdeauducq
4c280d5fcc
master: use a new worker process for each experiment
2015-03-09 16:22:41 +01:00
Sebastien Bourdeauducq
ec1d082730
remove timeout from run_params (to be replaced by a better mechanism)
2015-03-09 10:51:32 +01:00
Sebastien Bourdeauducq
d95a9cac9a
move realtime result registration into dbh, simplify syntax
2015-03-08 17:27:27 +01:00
Sebastien Bourdeauducq
f2e3dfb848
Experiment base class, replace __artiq_unit__ with docstring
2015-03-08 15:55:30 +01:00
Sebastien Bourdeauducq
0f007cb1a7
language/db: remove implicit_core
2015-03-08 11:37:53 +01:00
Yann Sionneau
14c759ff89
add Thorlabs T-Cube NDSP
2015-03-04 14:30:49 +00:00
Sebastien Bourdeauducq
0abd41a04a
pc_rpc: trace support in server
2015-02-27 00:17:11 -07:00
Sebastien Bourdeauducq
651ed71b79
master: basic automatic experiment list
2015-02-21 20:34:31 -07:00
Sebastien Bourdeauducq
4267e0deab
master,artiq_run: simplify unit autodetection
2015-02-21 20:26:58 -07:00
Sebastien Bourdeauducq
387de11e56
artiq_run: fix import
2015-02-21 20:09:46 -07:00
Sebastien Bourdeauducq
6601bebcfe
master: make RIDs unique across restarts
2015-02-21 18:41:07 -07:00
Sebastien Bourdeauducq
965dd89b61
master: reorganize result output code
2015-02-21 14:28:18 -07:00
Sebastien Bourdeauducq
65555a3a09
artiq_run,master: introduce __artiq_unit__ attribute to mark and name experiments
2015-02-20 14:01:34 -07:00
Sebastien Bourdeauducq
0dd5692c32
master,run: pass run_params to experiment
2015-02-19 20:05:12 -07:00
Sebastien Bourdeauducq
4d21b78314
master,client,gui: factor timeout into run_params
2015-02-19 20:03:55 -07:00
Sebastien Bourdeauducq
d01ba8e644
artiq_run: provide dummy scheduler API
2015-02-19 12:09:37 -07:00
Sebastien Bourdeauducq
c69c4d5ce9
master: expose scheduler API to experiments
2015-02-19 12:09:11 -07:00
Sebastien Bourdeauducq
9ffc370416
master,run: automatically call analyze function
2015-02-19 09:40:15 -07:00
Sebastien Bourdeauducq
656099a331
artiq_run: sort result output alphabetically
2015-02-17 16:12:21 -07:00
Sebastien Bourdeauducq
8c4fb2d534
novatech409b: add sim mode help
2015-02-16 04:39:41 -07:00
Sebastien Bourdeauducq
17611e9899
lda_controller: add description
2015-02-15 17:32:08 -07:00
Joe Britton
a3494c57cc
add Novatech 409B controller
2015-02-15 17:31:37 -07:00
Sebastien Bourdeauducq
e196ef9c48
lda_controller: style
2015-02-15 15:00:55 -07:00
Sebastien Bourdeauducq
17596f4ad8
tools,frontend: print default ports
2015-02-15 14:58:57 -07:00
Sebastien Bourdeauducq
79a5d8a12a
tools,frontend: common network arguments
2015-02-15 14:55:43 -07:00
Sebastien Bourdeauducq
6d4b9e5fca
frontend: remove lda_client (use artiq_rpctool instead)
2015-02-12 09:34:17 +08:00
Yann Sionneau
af4be9a2e2
rpctool: change call syntax
2015-02-12 09:31:04 +08:00
Yann Sionneau
b396f5dd43
pc_rpc: support for method listing, frontend: artiq_rpctool, +fixes by SB
2015-02-12 00:38:30 +08:00
Sebastien Bourdeauducq
c91705c5d1
ctlmgr: support hostnames in DDB
2015-02-09 20:03:34 +08:00
Sebastien Bourdeauducq
542e047f5a
ctlmgr: clean shutdown
2015-02-08 21:44:49 +08:00
Sebastien Bourdeauducq
a50c74523f
ctlmgr: split command arguments properly
2015-02-08 12:18:57 +08:00
Sebastien Bourdeauducq
abb7d9f911
ctlmgr: catch create_subprocess_exec errors and retry
2015-02-08 12:15:22 +08:00
Sebastien Bourdeauducq
96a01efc48
ctlmgr: wait for processes to terminate before starting new ones
2015-02-08 00:59:08 +08:00
Sebastien Bourdeauducq
e7d85c5b87
ctlmgr: basic working implementation
2015-02-07 23:52:05 +08:00
Sebastien Bourdeauducq
aba749093b
ctlmgr: get local bind address, format commands
2015-02-07 01:14:27 +08:00
Sebastien Bourdeauducq
f9d3bd107e
ctlmgr: retry connection to master, print received ddb
2015-02-06 18:58:54 +08:00
Sebastien Bourdeauducq
17685d1e98
controller manager skeleton
2015-02-06 12:17:51 +08:00
Sebastien Bourdeauducq
8df1b03f0f
artiq_run: add verbosity config
2015-02-04 19:09:54 +08:00
Sebastien Bourdeauducq
0e65f71705
artiq_run: HDF5 output support
2015-02-04 18:46:55 +08:00
Sebastien Bourdeauducq
2f4a83b97a
gui: access to parameter DB from GUI files
2015-02-04 16:13:56 +08:00
Sebastien Bourdeauducq
1b122dd887
sync_struct,gui: refactor Subscriber data distribution to support access to parameter DB from GUI file
2015-02-04 15:06:25 +08:00
Sebastien Bourdeauducq
186aa7fdb7
style
2015-02-04 14:44:39 +08:00
Yann Sionneau
fc92a66e51
asyncio: Use ProactorEventLoop on Windows
2015-02-03 22:29:03 +08:00
Sebastien Bourdeauducq
2fbe22e15e
master,client: support changing real-time results group
2015-01-30 20:36:54 +08:00
Yann Sionneau
526887140d
Set WARNING as default log level + update documentation
2015-01-30 19:04:04 +08:00
Sebastien Bourdeauducq
9aa7155502
gui: use experiment registry
2015-01-29 19:59:44 +08:00
Sebastien Bourdeauducq
e7dac4ab43
master: experiment registry
2015-01-29 19:59:16 +08:00
Yann Sionneau
5ba7218cc1
Factorize argparser for debug level
2015-01-29 10:07:12 +08:00
Sebastien Bourdeauducq
71c5115c11
gui: handle exit in explorer
2015-01-27 23:51:23 +08:00
Sebastien Bourdeauducq
db3114f79b
serve GUI and Glade file from master
2015-01-26 23:37:33 +08:00
Sebastien Bourdeauducq
8904d963d2
gui: add explorer window + rough prototype of control widgets defined with glade
2015-01-26 19:56:15 +08:00
Sebastien Bourdeauducq
82330b3c2a
gui: save layout
2015-01-23 19:00:09 +08:00
Sebastien Bourdeauducq
9fb42e4952
doc: use sphinx-argparse
2015-01-23 00:52:13 +08:00
Sebastien Bourdeauducq
47aa634ab5
replace periodic schedule with timed schedule
2015-01-23 00:23:00 +08:00
Sebastien Bourdeauducq
569600b607
frontend/pdq2_client: fix entry point
2015-01-22 10:38:47 +08:00
Sebastien Bourdeauducq
0c2e960c85
frontend: restore artiq_ prefix
2015-01-17 19:41:00 +08:00
Sebastien Bourdeauducq
3e22fe86b5
reorganize files as per discussion with Robert
2015-01-17 19:38:20 +08:00
Robert Jördens
6cc3a9d973
frontend/*: move to artiq.frontend, make entry_points
...
* solves the trouble of having to setup PATH and PYTHONPATH in a project
specific way and keep them changing
* works well with virtualenvs
* works under windows where the shebang is meaningless
* works if your python is not named "python3"
* can use "pip3 install --user --editable ."
* creates an egg-link in ~/.local/share/... pointing to $PWD
* generates the scripts and copies them to ~/.local/bin which is likely
already in your $PATH
* analogously under windows
* or call scripts as "python3 -m artiq.frontend.master"
2015-01-17 16:02:43 +08:00