whitequark
e0297039c9
artiq_run: fix bitrot in .ll/.bc runners.
2016-11-08 12:08:20 +00:00
1908339d4e
scheduler: default submission arguments, closes #577
2016-10-18 17:11:06 +08:00
deb51eaaa1
gui: update version number in logo
2016-09-05 23:04:44 +08:00
524ba803e1
artiq_client: add show ccb
2016-09-05 19:07:35 +08:00
71eb65c527
artiq_client: fix 'show log', closes #552
2016-09-05 15:37:35 +08:00
e45c089428
master, dashboard: support applet requests from experiments
2016-09-05 00:53:44 +08:00
whitequark
f26f446724
artiq_run: unbreak
2016-08-17 10:20:04 +00:00
84f4725015
cache source on import of modules that may contain kernels. Closes #416
2016-08-06 12:01:49 +08:00
e7d6ad2595
browser: cleanup dir/file restore, closes #527
2016-07-31 22:56:45 +02:00
5fc3a52189
artiq_flash: expose scripts_path
2016-07-25 10:05:10 +08:00
0590021790
artiq_flash: support using alternative OpenOCD config files
2016-07-19 15:35:50 +08:00
1877329fd1
dashboard: style
2016-07-18 16:51:17 +02:00
bb706c1fe2
browser/dashboard: use appdirs, closes #438
2016-07-18 16:50:27 +02:00
a7e101af8d
artiq_flash: fix openocd scripts path ( #513 )
2016-07-15 15:31:33 +02:00
7ce9fc714a
browser: permanently show results' metadata, closes #471
2016-07-09 18:29:01 +02:00
b7cca38f72
browser: let the state manager handle the subcomponents
2016-07-07 16:16:32 +02:00
77f60a3e63
browser: support uploading datasets to master. Closes #480
2016-07-03 12:21:36 +08:00
cc9edc1555
frontend/client: support keeping persist flag
2016-07-03 12:19:46 +08:00
6ee0f65b12
browser: ditto 11930228fd
2016-07-01 18:47:04 +08:00
11930228fd
dashboard: kill the Qt built-in main window closing mechanism
...
When the main window is closed, Qt makes QApplication.exec() return, which conflicts with Quamash's implementation of loop.run_until_complete(). The conflict causes Quamash's run_forever() to return earlier than it should, and cause "RuntimeError('Event loop stopped before Future completed.')".
Closes #475
2016-07-01 18:39:26 +08:00
03a69ec5b7
scheduler: add check_pause function
2016-06-27 14:37:29 +08:00
88d6d0db06
browser: also support loading arguments by button and activation, closes #479
2016-06-21 13:14:33 +02:00
490bb6ef2d
gui: save/restore last folder outside repository. Closes #476
2016-06-12 13:18:22 +08:00
whitequark
57be065c15
artiq_flash: explicitly pass path within conda env to openocd datarootdir.
...
By default, openocd searches for scripts in DATAROOTDIR/openocd/scripts.
This of course makes it not relocatable. Conda has a flag to try to
detect and fix such hardcoded paths, but it does not work on openocd
(likely because the .rodata contains an already concatenated path,
which cannot be padded with zeroes from the right).
So, we pass the path explicitly instead.
2016-06-06 19:01:39 +00:00
7851391666
artiq_compile: adapt to code changes
2016-05-28 12:57:04 -05:00
ab749560c2
dashboard: forward local log messages to docks, replace status bar ( #411 )
2016-05-28 11:10:25 -05:00
10267f39c9
log: use broadcast instead of sync_struct, filter on new messages only ( #411 )
2016-05-27 23:43:29 -05:00
8c1f1d8f2a
rpctool: make readline optional, add to conda dependencies. Closes #442
2016-05-25 11:11:59 -05:00
ec34a552b0
browser: add cascade and tile
2016-05-25 17:34:01 +02:00
78de2a7d5c
browser: MainWindow -> Browser and refactor
2016-05-25 17:34:01 +02:00
26e98a13d0
browser: refactor log
2016-05-25 15:14:04 +02:00
b8e7ea8443
browser: cleanup
2016-05-23 11:19:30 +02:00
a46d3ff366
browser: remove unnecessary loop.call_soon
2016-05-22 10:22:29 -07:00
852ddb7796
bit2bin: close input file explicitly
2016-05-21 21:50:08 +08:00
65c835e991
Revert "flash: close tempfile before deleting ( #256 )"
...
This reverts commit 5f11dbf319
.
2016-05-21 00:19:54 +08:00
5f11dbf319
flash: close tempfile before deleting ( #256 )
2016-05-21 00:09:31 +08:00
5f7f4ed398
browser: wire up log dock
2016-05-20 16:12:11 +02:00
3db1a7cf01
browser: log stub
2016-05-20 16:12:11 +02:00
7a71939201
dashboard.log -> gui.log
2016-05-20 16:12:11 +02:00
8ab6011ddb
browser: move 'open experiment' to menu
2016-05-20 16:12:11 +02:00
109ddf919e
flash: tcl-quote paths (c.f. #256 )
2016-05-16 23:15:12 +02:00
18878ba050
flash: use the handle
2016-05-16 22:02:11 +02:00
3ae44e762f
flash: close files (c.f. #256 )
2016-05-16 21:30:53 +02:00
whitequark
640022122b
embedding: refactor some more.
2016-05-16 14:38:09 +00:00
633c36336c
browser: rm status bar
2016-05-13 15:28:36 +02:00
260390b75f
browser: set objectName for toolbar
2016-05-12 19:20:52 +02:00
5e094528c1
browser: toolbar, rm mdiarea tooltip ( closes #433 )
2016-05-12 19:06:33 +02:00
1480bb5630
browser: style
2016-05-12 18:43:05 +02:00
4016e5adaa
browser: support opening experiments
2016-05-07 23:22:39 +02:00
ee8160863a
browser: experiment dock stubs
2016-05-07 12:53:37 +02:00
77b84a7979
browser: move exp mgmt to mdi area
2016-05-07 12:53:37 +02:00
9ef282636a
browser: don't open experiments from data list view
2016-05-07 12:53:37 +02:00
9f1bef1c81
browser: open experiments from mdiarea
2016-05-07 12:53:37 +02:00
d99d19dd3a
browser: stubs for experiment editors
2016-05-07 12:53:37 +02:00
bcfb01bc7e
gui: set application name in Gnome task switcher
...
Non-hacky suggestions welcome.
2016-05-06 17:23:44 +08:00
fc4effb91d
update logo
2016-04-30 00:30:24 +08:00
aee4859982
influxdb: fix numpy scalar bool, uints, str
...
* use types from the numpy hierarchy because e.g. np.issubtype(np.uint64, int) == False
* streamline influxdb formatting
* tested with influxdb 0.12
2016-04-24 15:15:16 +02:00
86681dccff
influxdb: use queue insertion time
2016-04-24 13:11:46 +02:00
aadcf0fe98
influxdb: consistency is gone
2016-04-24 12:38:47 +02:00
6c5382d43f
influxdb: ms precision
...
* better compression
* we don't timestamp the change any better (network, queue, http)
2016-04-24 12:36:00 +02:00
06b8666a53
influxdb: just strip() response
2016-04-24 12:35:30 +02:00
3cfef4264b
frontend: upper-case positional arguments in help messages
2016-04-22 16:33:44 +08:00
9a01d38439
browser: cleanup late select, align options with variables
2016-04-20 19:16:19 +02:00
c9daa50591
browser: PATH metavar
2016-04-20 16:23:47 +02:00
3d393e4654
browser: add root dir option, load only one file on restore
2016-04-20 13:46:03 +02:00
686f670a3c
browser: redo tree/list models
2016-04-20 13:20:57 +02:00
1f92e034da
Revert "browser: various fixes, handle startup path, connect activated"
...
This reverts commit c80510287b
.
2016-04-20 13:20:33 +02:00
c80510287b
browser: various fixes, handle startup path, connect activated
2016-04-20 18:25:43 +08:00
caf774579a
environment: refactor
2016-04-16 19:31:07 +08:00
d4ba525c9d
gui,browser: save state in home folder
2016-04-15 19:05:12 +08:00
4a297f0c42
browser: s/results/files/
2016-04-14 17:55:44 +08:00
0cca2bbef6
artiq_run: style
2016-04-12 15:16:48 +08:00
d9e918be49
dashboard/moninj: use thread instead of asyncio UDP ( #39 )
2016-04-11 18:09:41 +08:00
5e5f94a0f8
browser: WIP for experiment replay
2016-04-10 20:07:46 +08:00
6c200b1418
browser: make results a dock again
2016-04-10 16:29:29 +08:00
3472e1abd3
browser: rm mdi area
2016-04-07 20:22:06 +08:00
7e2e182315
put dashboard-specific files in separate directory
2016-04-06 15:45:02 +08:00
1f152bceb2
browser: own package, own datasets dock
2016-04-05 18:50:29 +08:00
aaa81a63d1
browser: use LocalModelManager, make the 'explorer' the central widget
2016-04-05 17:22:16 +08:00
670e8907a5
artiq_browser: load from hdf5
2016-04-05 17:22:16 +08:00
fa63637a2e
gui/browser: local model manager
2016-04-05 17:22:16 +08:00
91a362c898
add artiq_browser
2016-04-05 17:22:16 +08:00
1ff01a43ff
artiq_flash: clear error message when bin directory is absent
2016-04-05 16:09:41 +08:00
ed1c368e73
gateware: name targets consistently. Closes #290
2016-04-05 16:07:29 +08:00
3efb841557
client: add --async option to scan-repository, recommend usage in git post-receive
2016-04-04 22:17:39 +08:00
7453d85d5e
GUI -> dashboard
2016-04-04 22:12:45 +08:00
aa61c29efb
transfer Python builtin exceptions over pc_rpc and master/worker
2016-04-04 22:02:42 +08:00
a53d32c24e
master: always expose full set of worker handlers ( #368 )
2016-04-02 23:05:16 +08:00
29a76bb02d
influxdb: simplify and document pattern matching. Closes #166
2016-03-31 00:28:28 +08:00
b6232aea86
gui: better default layout
2016-03-29 16:59:43 +08:00
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
b5441fd107
devices/novatech409b: convert to asyncserial
2016-03-22 21:55:58 +08:00
2cbe47e26f
protocols/pc_rpc: document coroutine methods, support locking
2016-03-22 21:55:06 +08:00
2859382e11
gui: display repository scanning status and revision. Closes #274
2016-03-18 00:40:54 +08:00
4bf0db32be
master: publish repository status
2016-03-18 00:40:17 +08:00
a142d403ea
gui: handle better changing MDI area background colors
2016-03-15 18:36:34 +08:00
ea523c765b
frontend/coreanalyzer: do not attempt to print obsolete decoded_dump attribute. Closes #324
2016-03-10 11:33:21 +08:00
763a4d3011
rpctool: use pprint in interactive mode
2016-03-02 11:47:34 +08:00
d0d50d74eb
rpctool: interactive mode
2016-03-02 11:45:51 +08:00
6dd1eb2e92
artiq_flash: use term 'gateware'
2016-02-29 20:45:41 +01:00
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
c3cdce9d02
style
2016-02-25 01:22:43 +08:00
1b410abc2c
pdq2: move initialization and park/unpark to driver
2016-02-22 15:29:27 +01:00
e177bbd480
frontend/client: fix screen clear on Windows
2016-02-22 01:25:48 +08:00
ac6e31d655
frontend/rpctool: fix -t/--target. Closes #283
2016-02-22 00:55:45 +08:00
d713c62b50
pdq2 frontends: adapt to new program, cleanup
2016-02-21 17:35:10 +01:00
95dbafd662
gui: add logo to MDI area
2016-02-21 08:06:52 +08:00
3b81dd5adc
gui: workaround for Qt failing to embed applets in hidden and detached QDockWidgets
2016-02-19 18:13:25 +01:00
6830703ec6
artiq_master: directly log, explicit imports
2016-02-18 15:35:02 +01:00
0edde9f4d3
master: inform when running
2016-02-18 14:13:40 +01:00
87574193d4
gui: autoscroll MDI area
2016-02-16 00:19:50 +01:00
aa5f6a5aba
gui: basic MDI area
2016-02-15 23:58:44 +01:00
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
72a993afe0
master: cache last RID. Closes #234
2016-02-15 18:20:50 +01:00
d30fe60edd
gui: remove pyqtgraph
2016-02-15 00:23:47 +01:00
3ab35f7f8d
gui: get rid of pyqtgraph.LayoutWidget
2016-02-15 00:05:30 +01:00
df16a1da73
gui: remove PyQt5 assertion (break mock modules)
2016-02-14 23:30:39 +01:00
15515f33ef
gui: better default placement of docks
2016-02-14 23:15:18 +01:00
cd732718ad
gui: save/restore main window geometry
2016-02-14 23:08:14 +01:00
d81ce15869
gui: Qt wants a central widget in the main window, use explorer
2016-02-14 23:04:14 +01:00
3c12c13a67
gui: dock state save/restore
2016-02-14 13:46:15 +01:00
daf49efa04
gui: rough conversion to the Qt docking system
2016-02-14 12:15:57 +01:00
6b6393ff56
gui: remove console
2016-02-13 22:48:38 +01:00
fb2f53ea9b
gui/datasets: support deleting datasets without console
2016-02-13 22:46:29 +01:00
338e5fe3fc
Merge branch 'applets_pipeipc'
2016-02-08 22:25:36 +01:00
d873c25b8b
Use Qt5
2016-02-08 19:32:40 +01:00
de99e7f830
applets: handle dataset mutations
2016-02-08 19:20:07 +01:00
dc955d46c9
Merge branch 'applets'
2016-02-08 14:55:53 +01:00
741b11c26d
applets: basic embedding OK
2016-02-08 09:59:15 +01:00
70a67a0e38
Merge branch 'applets' into applets_pipeipc
2016-02-05 13:29:20 +01:00
b7de92e96c
remove pxi6733 support (now lives at https://github.com/m-labs/aq_ni6733
2016-02-02 18:41:57 +01:00
10d78a5d0b
flash: grow runtime limit to 512 kB
2016-01-30 14:50:15 -07:00
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
cda4a0765d
artiq_ctlmgr: refactor into artiq.devices.ctlmgr
2016-01-26 15:24:29 -07:00
5aa4de8e89
refactor logging and implement in worker
2016-01-26 20:31:42 +01:00
d1119d7747
artiq_dir: move out of tools to unlink dependencies
2016-01-25 18:15:50 -07:00
f4c7f02127
CoreException: store at 'py_exn.artiq_core_exception'
...
... and fix a few imports
2016-01-25 17:24:00 -07:00
2beaf23e6c
language...ARTIQException -> coredevice...CoreException
...
gets rid of a cross import
is only used there
2016-01-25 17:24:00 -07:00
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
e6e6b27ba9
gui: remove displays (use applets instead)
2016-01-10 18:32:46 +08:00
597c2e4b17
gui/applets: startup and embedding working
2016-01-08 13:04:36 +08:00
e106ee3f90
gui: basic applet dock editing
2016-01-07 20:23:17 +08:00
358ad2e927
artiq_flash: drop redundant instruction, tweak doc
2016-01-06 11:24:05 -07:00
9aff99568d
artiq_flash: use openocd, python
2016-01-05 10:20:41 +08:00
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
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
c9da5f4ecb
frontend: bind v4 and v6 localhost addresses by default, support multiple bind
2015-12-27 18:03:13 +08:00
5f3b69dd19
frontend/coreconfig: simplify action names
2015-12-24 18:54:23 +08:00
179c50480f
frontend: split coretool into coreconfig, corelog and coreanalyzer
2015-12-24 18:51:11 +08:00
e41e2c088d
analyzer: encapsulate decoded dump, get onehot sel from header
2015-12-24 00:31:21 +08:00
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
2ae63570dd
frontend/coretool: verbosity control
2015-12-20 23:17:31 +08:00
cdcb57effe
coredevice/analyzer: basic VCD writing
2015-12-20 19:32:52 +08:00
46f59b673f
coredevice: analyzer message decoding
2015-12-20 14:34:16 +08:00
10d4bfba38
frontend/coretool: basic analyzer dump
2015-12-18 18:23:16 +08:00
80172f9548
frontend/coretool: minor cleanup
2015-12-18 00:18:39 +08:00
93317d48c9
gui/explorer: file selector for experiments outside repos
2015-12-09 19:13:57 +08:00
7b2580583a
master: allow remote listing of directories
2015-12-08 19:24:04 +08:00
5e14afde3e
scheduler: use current (last scanned) repo revision instead of HEAD
2015-12-06 19:00:41 +08:00
f99c53d179
client: block until end of repository scan
2015-12-06 18:41:20 +08:00
ea6dcb2743
master: repository -> experiment_db
2015-12-06 18:39:27 +08:00
8467013160
master,gui: support recomputation+reset of arguments
2015-12-06 17:27:15 +08:00
f73c967b3e
gui/shortcuts: fix status bar usage
2015-12-01 18:22:12 +08:00
ff4c03014c
gui/shortcuts: integrate with experiment manager
2015-12-01 17:10:44 +08:00
afa8148b2b
gui/experiments: save/restore state
2015-11-30 11:40:50 +08:00
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
3cbd7c4c13
gui: support multiple log docks
2015-11-12 01:13:57 +08:00
62c0eb85b1
gui/console: use network clients directly
2015-11-11 17:02:51 +08:00
4166f4e928
frontend: use atexit_register_coroutine in other tools
2015-11-11 16:22:12 +08:00
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
a7c9c95085
gui/explorer: support requesting termination of all instances
2015-11-05 19:04:10 +08:00
3404a6565b
frontend/artiq_flash: reorganize device binaries
2015-11-04 10:40:46 +08:00
e26147b2ac
gateware,runtime: use new migen/misoc
2015-11-04 00:35:03 +08:00
644a410c90
thorlabs_tcube: fix -P case handling
2015-11-03 17:55:00 +08:00
a2c074cc33
gui: fix RPC client teardown
2015-11-01 00:03:46 +08:00
f57145c4f3
gui: support triggering repository rescan
2015-10-31 23:58:39 +08:00
58f55fc630
artiq_flash: check that xc3sprog is found. closes #162
2015-10-30 15:52:03 +08:00
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
0d53f7ab0d
ignore ProcessLookupError when killing subprocesses. Closes #167
2015-10-28 20:57:28 +08:00
4e35a247d1
pdq2_client: remove unnecessary calls
2015-10-28 09:48:14 +08:00
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
ec02bea054
controllers/thorlabs_tcube: accept any case for -P. Closes #150
2015-10-21 09:17:39 +08:00
d13b368a65
build logging into worker
2015-10-20 18:11:50 +08:00
5947f54855
pc_rpc: autotarget support
2015-10-18 14:34:30 +08:00
7f5e264971
ctlmgr: add hostname to log source
2015-10-17 10:58:15 +08:00
f332c1d3cc
ctlmgr: forward controller logs
2015-10-16 20:08:11 +08:00
9e96a687e2
ctlmgr: forward log to master
2015-10-16 18:35:58 +08:00
cbda753f44
master: TCP server for remote logging
2015-10-16 00:53:35 +08:00
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
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
3cec176318
get_ddb -> get_device_db
2015-10-12 19:46:31 +08:00
b51910fa42
compile,coretool: use new dataset API
2015-10-12 19:32:16 +08:00
a83ffb3dce
protocols: move FlatFileDB into pyon
2015-10-12 18:19:28 +08:00
22bffa98b5
client: use short_format in dataset display
2015-10-12 18:10:58 +08:00
97accd2540
merge parameters and results into datasets
2015-10-12 17:18:23 +08:00
139072d402
Graceful experiment termination. Closes #76
2015-10-06 13:50:00 +08:00
b3584bc190
language,master,run: support raw access to DDB from experiments. Closes #123
2015-10-04 18:29:39 +08:00
0e3927b01a
master: support DDB rescan
2015-10-04 17:38:07 +08:00
50a5a3baf0
environment: attr_* -> setattr_*
2015-10-04 00:18:21 +08:00
f552d62b69
use Python 3.5 coroutines
2015-10-03 19:28:57 +08:00
b117b9320d
asyncio.async -> asyncio.ensure_future
2015-10-03 14:37:02 +08:00
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
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
1c96f258b1
gui: show server in window title
2015-08-25 00:37:49 +08:00
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
600e8335f2
influxdb: tag-based schema, better type support
2015-08-18 14:49:23 +08:00
ed00ca1485
influxdb: do not crash on parameter deletion
2015-08-18 13:35:05 +08:00
2ac8c53bbe
influxdb: use types
2015-08-18 13:34:42 +08:00
2275017651
influxdb: better error reporting
2015-08-18 13:34:15 +08:00
66b5ca99d8
influxdb: better filtering
2015-08-18 09:59:48 +08:00
324cafae3d
rpctool: use pprint
2015-08-17 15:45:08 +08:00
abbf5eb059
gui: minor cleanup
2015-08-17 15:44:54 +08:00
fd3fefec52
add InfluxDB bridge
2015-08-17 15:44:40 +08:00
34a9c8c12d
artiq_run: add dummy pause method ( closes #100 )
2015-08-15 09:16:00 +08:00
998db5121b
pc_rpc: id_parameters -> description
2015-08-11 23:29:52 +08:00
a6ab066c87
ctlmgr: support immediate controller retry
2015-08-11 23:22:36 +08:00
54b11a392a
ctlmgr: graceful controller termination
2015-08-09 20:41:11 +08:00
a21049d779
ctlmgr: exponential backoff
2015-08-09 18:28:56 +08:00
3f68d0ba8f
ctlmgr: ping controllers
2015-08-09 17:30:46 +08:00
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
1818e8173b
client: log display support
2015-08-08 18:02:42 +08:00
c80f0fa07a
master: delete head repository checkout on exit
2015-08-08 11:44:19 +08:00
585bb236f8
master: add ddb/pdb args
2015-08-08 11:13:36 +08:00
7ed8fe57fa
Git support
2015-08-07 15:51:56 +08:00
968760d48f
gui: save geometry of main window
2015-08-06 22:27:46 +08:00
cddb5b9ae4
gui: save explorer state
2015-08-05 13:35:28 +08:00
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
8ad88438c7
gui: save display state
2015-08-01 19:37:16 +08:00
00cae1c23a
gui: save dock area state
2015-08-01 16:48:44 +08:00
d14a31f443
artiq_run: fix ELF running
2015-07-25 15:52:38 +08:00
696bceb406
gui: feedback on run deletion
2015-07-25 15:08:27 +08:00
ef8b09d9bc
gui: add console
2015-07-25 00:36:16 +08:00
3a06e22b67
master: handle logging while scanning repository
2015-07-23 23:06:15 +08:00
bd2bd68a54
gui,client: do now show arguments
2015-07-22 05:47:14 +08:00
8402f1cdcd
master,gui: basic log support
2015-07-22 05:13:50 +08:00
179ca36d09
gui: basic scan support
2015-07-21 21:24:24 +02:00
1a0dc499dd
gui: exit when main window is closed
2015-07-19 18:27:41 +02:00
dd7920f0c3
gui: basic argument support
2015-07-17 21:28:46 +02:00
6b36d93cc2
master,client: support repository rescan
2015-07-17 18:55:48 +02:00
39c6bc940c
coreconfig: use new database API ( closes #75 )
2015-07-17 10:49:55 +02:00
9649e1837a
gui: basic plotting
2015-07-16 20:52:53 +02:00
84de2fb28b
expid: experiment -> class_name
2015-07-15 11:08:12 +02:00
9ed4dcd7d1
repository: load experiments in worker, list arguments
2015-07-15 10:54:44 +02:00
21e8596d8c
gui: RT results overview
2015-07-14 17:31:18 +02:00
32d141f5ac
refactor ddb/pdb/rdb
2015-07-13 22:21:32 +02:00
0e92cfe053
artiq_run: remove support for stale watchdog API
2015-07-11 22:26:37 +02:00
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
07ceed9512
artiq_flash.sh: back down on verbosity
2015-06-26 11:09:26 -06:00
48e0a2ad37
artiq_flash: echo commands for a bit more verbosity
2015-06-25 13:28:05 -06:00
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
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
9f9079589e
gui: send monitor requests to core device
2015-06-05 14:52:41 +08:00
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
4a7c6954c3
artiq_run: implement mockups of new scheduler API
2015-05-28 17:24:47 +08:00
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
5fb86af3a4
gui: support experiment cancellation
2015-05-24 23:20:52 +08:00
e611e17eeb
gui: experiment submission
2015-05-24 20:24:07 +08:00
d6ced1c780
scheduler: support priorities
2015-05-24 01:09:22 +08:00
2f910921f5
gui: console -> log
2015-05-24 00:38:30 +08:00
d9c25130e3
gui: add explorer widgets
2015-05-23 01:25:33 +08:00
2570444941
gui: add empty explorer and console docks
2015-05-22 23:30:46 +08:00
ea53ed1af7
gui: switch to Qt
2015-05-22 17:06:31 +08:00
d8917fd94f
Merge branch 'master' of github.com:m-labs/artiq
2015-05-17 16:11:16 +08:00
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
4048568d8e
support kernel handover with coherent time
2015-05-02 23:41:49 +08:00
62669f9ff2
soc: factor timer, kernel CPU and mailbox
2015-05-01 18:51:24 +08:00
109dfab76c
frontend: add artiq_mkfs
2015-04-30 20:03:11 +08:00
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
86c012924e
targets: rename AMP->Top, merge peripherals
2015-04-28 00:18:54 +08:00
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
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
c0213c9f69
artiq_flash.sh: add pipistrello
2015-04-14 22:37:08 -06:00
07b8e1292f
artiq_flash: fix stderr redirections
2015-04-11 23:43:33 +08:00
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
efd1c24ed7
frontend: add artiq_compile tool to build default experiment
2015-04-07 15:41:32 +08:00
5e046dc5ce
artiq_run: move parse_arguments and get_experiment to tools
2015-04-07 13:04:47 +08:00
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
0ec7e9a98c
artiq_run: fix get_argparser()
2015-04-04 21:17:24 -06:00
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
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
768fa21488
lda_controller: show default product type
2015-03-23 20:02:36 +01:00
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
1b7f71bda9
controllers: consistent device/simulation specification
2015-03-22 00:48:15 +01:00
8cb77b0336
pdq2: rename url parameter to device and require it
2015-03-21 00:33:50 -06:00
200e20fb39
worker: close devices immediately after run and before analyze
2015-03-20 12:01:34 +01:00
577754c38f
pdq2: fix argparser
2015-03-19 22:26:12 -06:00
222d0a9d37
pdq2_controller: add dump option
2015-03-19 21:38:46 -06:00
5ab3290ed4
pdq2: add refactored client code
2015-03-19 20:34:29 -06:00
2b3641ac0a
db,worker: fix realtime result initialization
2015-03-13 15:12:55 +01:00
5ca4821a29
ctlmgr: use workaround for asyncio.wait_for(process.wait()... Python bug
2015-03-11 16:48:16 +01:00
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
4c280d5fcc
master: use a new worker process for each experiment
2015-03-09 16:22:41 +01:00
ec1d082730
remove timeout from run_params (to be replaced by a better mechanism)
2015-03-09 10:51:32 +01:00
d95a9cac9a
move realtime result registration into dbh, simplify syntax
2015-03-08 17:27:27 +01:00