0d431cb019
pipistrello: make pmod extension header, cleanup
2016-03-08 17:07:44 +01:00
81bc99905c
missing parts of 59ac567
2016-03-08 16:49:23 +01:00
59ac567048
scanwidget: disable unmodified wheel on axis and slider
2016-03-08 16:43:04 +01:00
285979cab6
Merge branch 'master' into scanwidget
...
* master:
pipistrello: grow fifos a bit (may make ise happier)
gui: don't scroll experiment editor on modified wheel (closes #303 )
gui: ignore only unmodified wheelevents
pipistrello: shrink fifos a bit (may make ise happier)
pipistrello: use ttl_simple for pmod[4:8]
pipistrello: move the spi channel like kc705
doc: kc705.clock: add spi bus mappings (closes #321 )
doc: add pipistrello spi bus
doc: add pipistrello pmod ttl channels
pipistrello: make pmod[4:8] available as ttls
pipistrello: adhere to pmod interface type 2 layout
2016-03-08 16:18:50 +01:00
a8fe3f50c3
pipistrello: grow fifos a bit (may make ise happier)
2016-03-08 16:17:37 +01:00
c08881de5d
gui: don't scroll experiment editor on modified wheel ( closes #303 )
...
If you try to target e.g. spinbox with a ctrl- or shift-wheel to change the value
and you don't aim well, the tree widget will scroll. We already have tree
scroll on unmodified wheel. Let's have the modified wheel events exclusively
target the smaller widgets.
2016-03-08 16:12:38 +01:00
41ca223c45
gui: ignore only unmodified wheelevents
2016-03-08 15:53:27 +01:00
00d4775da5
pipistrello: shrink fifos a bit (may make ise happier)
2016-03-08 15:40:12 +01:00
9c11cda7dc
pipistrello: use ttl_simple for pmod[4:8]
2016-03-08 13:52:52 +01:00
104d641c59
pipistrello: move the spi channel like kc705
2016-03-08 13:30:05 +01:00
2180c5af7c
pipistrello: make pmod[4:8] available as ttls
2016-03-08 13:07:58 +01:00
e809e89571
pipistrello: adhere to pmod interface type 2 layout
2016-03-08 13:01:52 +01:00
7e99780891
scanwidget: wire up signals better, set values late, take scanwidget from 7aa6397
2016-03-08 12:35:13 +01:00
ef217f7fe2
Merge branch 'master' into scanwidget
...
* master: (125 commits)
rtio: when rtlink addresses are different, issue collision not replace (fixes #320 )
rtio: collision_error -> collision
test/coredevice/time_keeps_running: start new session to prevent now_mu save/restore
runtime: fix sloppy memory management in cache_put.
test_loopback: bump RTT limit to 60ns.
soc: use add_extra_software_packages, factor builder code
doc/PCA9548: clarify channel selection
doc: I2C/QC2
test: I2C/PCA9548 unittest
examples/device_db: add PCA9548
runtime/i2c_read: fix MSB
ad5360: add documentation and an example
ad5360: t16 is a max
ad5360: un-factor write_channels
ad5360: add busy and update timings
ad5360: style
ad5360: add batched zero-length multi-channel set()
spi/ad5360: refactor, small fixes
coredevice/i2c: fix exception message
coredevice/PCA9548: fix I2C address
...
2016-03-08 11:14:57 +01:00
2953b069dc
rtio: when rtlink addresses are different, issue collision not replace ( fixes #320 )
2016-03-08 15:58:25 +08:00
71105fd0d7
rtio: collision_error -> collision
2016-03-08 15:38:35 +08:00
59d7f5f1e3
test/coredevice/time_keeps_running: start new session to prevent now_mu save/restore
2016-03-08 14:04:51 +08:00
whitequark
739568fcb8
runtime: fix sloppy memory management in cache_put.
2016-03-07 21:12:03 +00:00
whitequark
9ffa8cbb11
test_loopback: bump RTT limit to 60ns.
...
Turns out a short jumper wire on a backplane leads to RTT of 50ns
exactly.
2016-03-07 20:27:22 +00:00
e8b59b00f6
soc: use add_extra_software_packages, factor builder code
2016-03-07 00:18:47 +08:00
c73b080019
doc/PCA9548: clarify channel selection
2016-03-07 00:17:45 +08:00
2770d9c729
doc: I2C/QC2
2016-03-05 19:02:03 +08:00
683716017b
test: I2C/PCA9548 unittest
2016-03-05 19:01:35 +08:00
125ab3e076
runtime/i2c_read: fix MSB
2016-03-05 19:00:14 +08:00
f2b4b975a3
ad5360: add documentation and an example
2016-03-04 23:36:17 +01:00
18ccac717b
ad5360: t16 is a max
2016-03-04 19:46:18 +01:00
eb2ec40b3a
ad5360: un-factor write_channels
2016-03-04 19:01:29 +01:00
725943fee2
ad5360: add busy and update timings
2016-03-04 18:53:05 +01:00
e834a88340
ad5360: style
2016-03-04 18:15:35 +01:00
710717ca9b
ad5360: add batched zero-length multi-channel set()
2016-03-04 18:14:31 +01:00
4ae3ca5f23
spi/ad5360: refactor, small fixes
2016-03-04 18:14:31 +01:00
200cddc346
coredevice/i2c: fix exception message
2016-03-05 00:51:13 +08:00
70f0a7447f
coredevice/PCA9548: fix I2C address
2016-03-05 00:47:24 +08:00
df71b82037
coredevice/i2c: fix imports
2016-03-05 00:43:13 +08:00
a8a74d7840
targets/kc705: enable I2C for all hardware adapters
2016-03-05 00:19:59 +08:00
6b8efd10fd
runtime/i2c: fix artiq_raise_from_c invokation
2016-03-05 00:19:08 +08:00
2f1a2782d2
coredevice: add I2C, PCA9548, TCA6424A drivers
2016-03-05 00:17:41 +08:00
790269eee7
master/worker_db: make arguments optional in DDB entries
2016-03-05 00:17:08 +08:00
ff4a46c278
runtime/i2c: make syscalls more ARTIQ-Python-friendly
2016-03-05 00:16:23 +08:00
3364827744
ttl/TTLClockGen: fix FTW computation with ref_multiplier != 1
2016-03-04 16:59:59 +08:00
4352d15016
coredevice/core: add ref_multiplier and coarse_ref_period attributes
2016-03-04 16:59:35 +08:00
354a62f5d0
Merge branch 'master' of github.com:m-labs/artiq
2016-03-04 16:51:48 +08:00
whitequark
6e44c5424d
coredevice.ttl: add missed int64 conversion.
2016-03-04 08:37:43 +00:00
7ff0c89d51
kc705.clock: add all spi buses
2016-03-04 00:03:48 +01:00
669fbaa4f1
ad53xx->ad5360 and refactor
2016-03-04 00:00:25 +01:00
dc6d116824
spi: have write() delay by transfer duration
2016-03-03 21:57:27 +01:00
c2fcefc31f
runtime/rtio: cleanup include
2016-03-03 19:48:06 +08:00
423ca03f3b
runtime: bit-banged i2c support (untested)
2016-03-03 17:46:42 +08:00
whitequark
73bfbe51db
compiler: reject lambdas used as kernel functions ( fixes #313 ).
2016-03-03 08:33:28 +00:00
cfe72c72a2
gateware/kc705: add I2C GPIO core for QC2
2016-03-03 15:32:10 +08:00
a901971e58
gateware/soc: factor code to connect CSR device to kernel CPU
2016-03-03 15:12:15 +08:00
b662a6fcbd
gateware/nist_{clock,qc2}: do not conflict with KC705 I2C
2016-03-03 15:10:50 +08:00
9af12230c8
soc: add timer to kernel CPU system
2016-03-03 13:19:17 +08:00
b83b113f3c
gui/moninj: make widgets look less like buttons
2016-03-03 10:48:17 +08:00
0c97043a20
gateware/nist_clock: pin assignment corrections from David Leibrandt
2016-03-03 10:03:49 +08:00
d3f36ce784
kc705: add false paths for ethernet phy
...
* vivado prefers rsys_clk over sys_clk (despite the assignment hierarchy)
(We need DONT_TOUCH and/or KEEP verilog annotations to fix this)
2016-03-02 19:56:24 +01:00
9969cd85de
ad53xx: ldac may be none
2016-03-02 15:50:02 +01:00
f5dee455f5
test/worker: test exception logging
2016-03-02 17:12:22 +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
946bd84b58
protocols/pc_rpc: support retrieving selected target
2016-03-02 11:45:31 +08:00
1e4bccae20
ad53xx: add
2016-03-02 00:12:01 +01:00
162ecdd574
spi: cleanup, add frequency_to_div()
2016-03-02 00:11:17 +01:00
d973eb879f
coredevice.spi: docstring fix
2016-03-01 22:42:00 +01:00
f754d2c117
Merge branch 'spimaster'
...
* spimaster: (52 commits)
runtime/rtio: rtio_process_exceptional_status() has only one user
coredevice.spi, doc/manual: add spi
kc705: move ttl channels together again, update doc
runtime: rt2wb_input -> rtio_input_data
examples/tdr: adapt to compiler changes
bridge: really fix O/OE
runtime: define constants for ttl addresses
coredevice.ttl: fix sensitivity
bridge: fix ttl o/oe addresses
runtime: refactor ttl*()
rtio: rm rtio_write_and_process_status
coredevice.spi: unused import
rt2wb, exceptions: remove RTIOTimeout
gateware.spi: delay only writes to data register, update doc
nist_clock: disable spi1/2
runtime/rt2wb: use input/output terminology and add (async) input
examples: update device_db for nist_clock spi
gateware.spi: rework wb bus sequence
nist_clock: rename spi*.ce to spi*.cs_n
nist_clock: add SPIMasters to spi buses
...
2016-03-01 22:08:08 +01:00
5ba753425d
runtime/rtio: rtio_process_exceptional_status() has only one user
2016-03-01 21:38:51 +01:00
0456169558
coredevice.spi, doc/manual: add spi
2016-03-01 21:29:09 +01:00
2cc1dfaee3
kc705: move ttl channels together again, update doc
2016-03-01 19:40:32 +01:00
f30dc4b39e
runtime: rt2wb_input -> rtio_input_data
2016-03-01 19:22:42 +01:00
81b35be574
bridge: really fix O/OE
2016-03-01 18:49:04 +01:00
135643e3a6
runtime: define constants for ttl addresses
2016-03-01 18:22:42 +01:00
3aebbbdb61
coredevice.ttl: fix sensitivity
2016-03-01 18:22:03 +01:00
6f9656dcbe
bridge: fix ttl o/oe addresses
2016-03-01 18:19:06 +01:00
8adef12781
runtime: refactor ttl*()
...
* remove rt2wb_output
* remove ttl_*() ttl.c ttl.h
* use rtio_output() and rtio_input_timestamp()
* adapt coredevice/compiler layer
* adapt bridge to not artiq_raise_from_c()
2016-03-01 16:36:59 +01:00
aa10791ddf
rtio: rm rtio_write_and_process_status
2016-03-01 15:40:35 +01:00
29776fae3f
coredevice.spi: unused import
2016-03-01 15:38:40 +01:00
324660ab40
rt2wb, exceptions: remove RTIOTimeout
...
Assume that rt2wb transactions either collide and are then
reported (https://github.com/m-labs/artiq/issues/308 ) or that
they complete and the delay with which they complete does not matter.
If a transaction is ack'ed with a delay because the WB core's downstream
logic is busy, that may lead to a later collision with another WB
transaction.
2016-03-01 14:44:07 +01:00
c2fe9a08ae
gateware.spi: delay only writes to data register, update doc
2016-03-01 14:14:38 +01:00
whitequark
7e16da4a77
transforms.llvm_ir_generator: ignore assignments of None ( fixes #309 ).
2016-03-01 12:26:42 +00:00
c7d48a1765
coredevice/TTLOut: add dummy output function
2016-03-01 19:03:10 +08:00
18efca0f0a
Merge branch 'master' of github.com:m-labs/artiq
2016-03-01 14:49:16 +08:00
b0526c3354
protocols/pipe_ipc: fix resource leak on Windows
2016-03-01 14:49:04 +08:00
whitequark
dc70029b91
transforms.asttyped_rewriter: set loc for ForT ( fixes #302 ).
2016-03-01 05:22:12 +00:00
f2ec8692c0
nist_clock: disable spi1/2
2016-03-01 01:52:46 +01:00
7d7a710a56
runtime/rt2wb: use input/output terminology and add (async) input
2016-03-01 00:35:56 +01:00
da22ec73df
gateware.spi: rework wb bus sequence
2016-02-29 22:22:08 +01:00
12252abc8f
nist_clock: rename spi*.ce to spi*.cs_n
2016-02-29 22:21:18 +01:00
7ef21f03b9
nist_clock: add SPIMasters to spi buses
2016-02-29 22:19:39 +01:00
7ab7f7d75d
Merge branch 'master' into spimaster
...
* master:
artiq_flash: use term 'gateware'
targets/kc705-nist_clock: add clock generator on LA32 for testing purposes
doc: insist that output() must be called on TTLInOut. Closes #297
doc: update install instructions
coredevice: do not give up on UTF-8 errors in log. Closes #300
use m-labs setup for defaults
fix indentation
2016-02-29 20:47:52 +01:00
6dd1eb2e92
artiq_flash: use term 'gateware'
2016-02-29 20:45:41 +01:00
6c899e6ba6
runtime/rtio: fix rtio_input_wait(), add RTIOTimeout
2016-02-29 19:49:15 +01:00
16537d347e
coredevice.spi: cleanup
2016-02-29 19:48:26 +01:00
ecedbbef4c
runtime/ttl: use rtio_output and rtio_input_wait
2016-02-29 19:20:07 +01:00
5dae9f8aa8
runtime: refactor rt2wb/dds
2016-02-29 19:16:29 +01:00
d3c94827eb
runtime/ttl: simplify ttl_get() a bit
2016-02-29 17:58:54 +01:00
e11366869d
coredevice/spi: clean up api
2016-02-29 17:54:42 +01:00
5fad570f5e
targets/kc705-nist_clock: add clock generator on LA32 for testing purposes
2016-03-01 00:35:26 +08:00
dd570720ac
gateware.spi: ack only in cycles
2016-02-29 17:29:37 +01:00
a1e1f2b387
doc: insist that output() must be called on TTLInOut. Closes #297
2016-03-01 00:28:40 +08:00
a0083f4501
Revert "gateware/rt2wb: only input when active"
...
This reverts commit 1b08e65fa1
.
2016-02-29 16:44:11 +01:00
cb8815cc65
Revert "gateware/rt2wb: support combinatorial ack"
...
This reverts commit f73228f248
.
2016-02-29 16:44:04 +01:00
f73228f248
gateware/rt2wb: support combinatorial ack
2016-02-29 15:40:55 +01:00
4467f91cbf
coredevice: do not give up on UTF-8 errors in log. Closes #300
2016-02-29 22:21:10 +08:00
1b08e65fa1
gateware/rt2wb: only input when active
2016-02-29 14:56:29 +01:00
6903a1d88a
runtime/rt2wb: accurate exception strings
2016-02-29 14:56:04 +01:00
c226aeb0d4
coredevice/spi: read_sync read bit
2016-02-29 14:55:29 +01:00
572c49f475
use m-labs setup for defaults
2016-02-29 21:35:23 +08:00
785691ab98
fix indentation
2016-02-29 21:32:48 +08:00
df7d15d1fe
runtime: refactor spi into rt2wb
2016-02-29 13:54:36 +01:00
eb01b0bfee
gateware.spi: cleanup doc
2016-02-29 12:41:30 +01:00
aeae565d35
runtime/spi: don't apply channel offset
2016-02-29 11:53:36 +01:00
948fefa69a
gateware.spi: style
2016-02-29 11:48:29 +01:00
ad34927b0a
spi: RTIO_SPI_CHANNEL -> RTIO_FIRST_SPI_CHANNEL
2016-02-29 11:35:49 +01:00
5480099f1b
gateware.spi: rewrite counter bias for timing
2016-02-29 02:28:19 +01:00
9a1d6a51a4
gateware.spi: shorten counters
2016-02-29 01:51:33 +01:00
a4504905bd
Merge remote-tracking branch 'm-labs/master' into spimaster
...
* m-labs/master:
Fix tests.
types.TypePrinter: don't waste screen space on empty attribute lists.
Revert wrong parts of 6bd16e44
.
examples/notebook: cleanup, and fix spelling
test/LoopbackCount: request correct devices
2016-02-29 00:49:13 +01:00
8b2b278457
spi: add coredevice support
2016-02-29 00:44:48 +01:00
d63a63531a
spi: add runtime support
2016-02-29 00:38:36 +01:00
8d7e92ebae
pipistrello: set RTIO_SPI_CHANNEL
2016-02-29 00:37:00 +01:00
9a881aa430
gateware.spi: simpler clk bias
2016-02-29 00:36:18 +01:00
d5893d15fb
gateware.kc705: make xadc/ams an extension header
2016-02-28 22:41:17 +01:00
312e09150e
kc705/clock: add spi bus for dac on ams101
2016-02-28 21:17:53 +01:00
f8732acece
rtio.spi: drop unused argument
2016-02-28 21:06:20 +01:00
3b6999ac06
gateware.spi: refactor, sim verified
2016-02-28 20:40:06 +01:00
bd9ceb4e12
gateware.spi: add complete spi master logic
2016-02-27 22:47:16 +01:00
whitequark
8bbffab8c8
Fix tests.
2016-02-27 13:40:37 +00:00
whitequark
e421b22953
types.TypePrinter: don't waste screen space on empty attribute lists.
2016-02-27 13:29:47 +00:00
whitequark
63e0c7c07c
Revert wrong parts of 6bd16e44
.
2016-02-27 13:15:49 +00:00
ade3eda19a
gateware.pipistrello: use pmod for spi
2016-02-27 11:29:40 +01:00
e7146cc999
gateware.spi: design sketch
2016-02-26 17:03:08 +01:00
fb929c8599
gateware/spi: stubs
2016-02-26 13:11:10 +01:00
a5bf502917
test/LoopbackCount: request correct devices
2016-02-26 14:29:51 +08:00
whitequark
82a8e819ac
transforms.llvm_ir_generator: use private linkage instead of internal.
...
This reduces the size of symbol tables (internal adds an STB_LOCAL
symbol, but private doesn't).
2016-02-25 20:15:40 +00:00
whitequark
6bd16e448e
Commit missing parts of 919a49b6
.
2016-02-25 20:02:31 +00:00
whitequark
f838b8be49
compiler.embedding: cache attribute types ( fixes #276 ).
2016-02-25 19:56:45 +00:00
whitequark
d899d7307e
compiler.types: TDelay is always unifiable with self.
2016-02-25 19:56:12 +00:00
whitequark
919a49b6bc
compiler: quell excessively detailed diagnostics.
2016-02-25 19:43:52 +00:00
485fc3bd27
gui: use scanwidget
2016-02-25 20:34:18 +01:00
3ed8288601
scanwidget: add from current git
2016-02-25 20:34:04 +01:00
whitequark
8e77e561cd
test: bring back test_loopback_count ( fixes #295 ).
2016-02-25 18:46:55 +00:00
whitequark
18274a09a1
Commit missing parts of 4426730
.
2016-02-25 02:05:44 +00:00
whitequark
a1dd909bc4
Take alignment into account during attribute writeback ( fixes #293 ).
2016-02-25 01:44:05 +00:00
whitequark
914bc9f360
artiq_run: allow running LLVM IR/bitcode files, even with trivial RPCs.
2016-02-24 22:50:45 +00:00
whitequark
da31d29897
compiler: fix ARTIQ_DUMP_*.
2016-02-24 21:43:46 +00:00
whitequark
652c2a185f
test: rewrite tests using ttl_inout to use loop_{in,out} ( #265 ).
2016-02-24 18:27:08 +00:00
whitequark
a829b8a6fc
Commit missing parts of cf41890
.
2016-02-24 17:53:13 +00:00
whitequark
cf41890255
Correctly display backtraces that contain inlined functions.
2016-02-24 17:44:19 +00:00
whitequark
442673076f
compiler: setting ARTIQ_DUMP_* dumps to a file instead of stderr.
2016-02-24 17:44:19 +00:00
6b28b8e36e
Merge branch 'master' of github.com:m-labs/artiq
2016-02-25 01:25:31 +08:00
dda0e0846c
worker: print core device tracebacks. Closes #292
2016-02-25 01:25:26 +08:00
c3cdce9d02
style
2016-02-25 01:22:43 +08:00
aa50c5b4d9
pdq2.mediator: minor tweaks
2016-02-24 18:11:05 +01:00
f2acf95f98
pdq2.mediator: err on short segments
2016-02-24 18:11:05 +01:00
251aed047f
worker: do not print redundant exception information
2016-02-25 01:10:31 +08:00
whitequark
950eaef08c
coredevice: re-export more exceptions.
2016-02-24 15:09:22 +00:00
whitequark
956448bd8d
test: skip RPC timing tests by default.
2016-02-24 15:09:22 +00:00
5599ec16ea
sim: align API closer to non-sim
...
* add Output
* also clear timeline after it has been printed (multiple kernel invocations)
The sim core device API has diverged quite a bit from the non-sim API.
More work is needed.
2016-02-23 21:01:03 +01:00
467268a06e
coefficients: fix constant zero
2016-02-23 17:56:38 +01:00
53d5a458a2
test/hardware_testbench: properly close devices
2016-02-23 16:00:53 +08:00
82f4fd1290
test/coredevice: convert to 'with parallel'
2016-02-23 15:48:12 +08:00
a8545fc1f7
targets/kc705: set up user_sma_gpio_n like other TTLs
2016-02-22 22:35:15 +08:00
94584bb8b1
wavesynth: handle short segments
2016-02-22 15:29:27 +01:00
269e9c600c
pdq2.mediator: use channel numbers from subdevices, track segment duration
2016-02-22 15:29:27 +01:00
b327c50f14
pdq2: do not emit frame-initial trigger line (segments are triggered)
2016-02-22 15:29:27 +01:00
d7f5904d16
wavesynth: duration sign
2016-02-22 15:29:27 +01:00
1b410abc2c
pdq2: move initialization and park/unpark to driver
2016-02-22 15:29:27 +01:00
whitequark
bc81be1345
Implement dumb 'with parallel' ( #265 ).
2016-02-22 13:51:08 +00:00
whitequark
51a5910002
Rename 'with parallel' to 'with interleave' ( #265 ).
2016-02-22 13:24:43 +00:00
whitequark
b0e7fddc32
lit: unbreak on non-conda.
2016-02-22 13:16:43 +00:00
whitequark
9db2be2b03
compiler: only use colors in diagnostics on POSIX ( fixes #272 ).
2016-02-22 11:27:45 +00:00
4946a53456
Revert "targets/kc705: pre-divide input RTIO clock to improve non-50% duty cycle tolerance"
...
This reverts commit 04b0db1a91
.
2016-02-22 17:52:40 +08:00
9a6354b959
protocols/pc_rpc: raise asyncio line length limit for client
2016-02-22 13:04:21 +08:00
25f6afd08a
protocols/asyncio_server: raise asyncio line length limit. Closes #285
2016-02-22 12:06:23 +08:00
8da455d5db
protocols/sync_struct: raise asyncio line length limit
2016-02-22 02:11:36 +08: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
7c246b3559
pdq2: redo program serialization, cleanup
2016-02-21 17:34:18 +01:00
294eac19fe
pdq2.mediator: cleanup/style
2016-02-21 17:33:45 +01:00
e3e42216a2
applets: workaround 'garbage on sides of embedded windows' bug on Windows
2016-02-21 21:32:21 +08:00
95dbafd662
gui: add logo to MDI area
2016-02-21 08:06:52 +08:00
804592a3f7
gui/log: fix dock close tracking
2016-02-21 05:33:24 +08:00
3b81dd5adc
gui: workaround for Qt failing to embed applets in hidden and detached QDockWidgets
2016-02-19 18:13:25 +01:00
5f5427f51f
protocols/pipe_ipc: work around race condition with loop.start_serving_pipe/close on Windows
2016-02-19 17:39:30 +01:00
28c4d8c2a7
applets: attempt at fixing embedding bugs on Windows
2016-02-19 14:48:25 +01:00
fef72506e4
ctlmgr/gui/master: start subprocesses in new pgroup
...
This only makes a difference on POSIX. It prevents subprocesses
from receiving the signals that the parent receives. For ctlmgr
and master is cuts down on spam on the console (KeyboardInterrupt
tracebacks from all controllers) and enforces that proper
termination is followed.
This does not help if the parent gets SIGKILL (subprocesses
may linger).
2016-02-18 23:51:12 +01:00
6830703ec6
artiq_master: directly log, explicit imports
2016-02-18 15:35:02 +01:00
1891725e12
wavesynth: cleanup
2016-02-18 14:13:40 +01:00
b4ea318e6d
coefficients: add comparison unittest
2016-02-18 14:13:40 +01:00
65824fc7f4
coefficients: cleanup
2016-02-18 14:13:40 +01:00
0edde9f4d3
master: inform when running
2016-02-18 14:13:40 +01:00
6973a9471b
gui/explorer: fix 'parent folder' on Windows
2016-02-18 13:47:03 +01:00
155c2ec2ef
ctlmgr,worker: set PYTHONUNBUFFERED for subprocesses
2016-02-18 12:41:08 +01:00
ca3cced0b4
test/ctlmgr: escape backslashes in sys.executable
2016-02-18 10:02:55 +01:00
4940e48d85
gui/log: scroll to bottom on startup
2016-02-18 01:09:51 +01:00
2ce3c08697
gui/applets: escape backslashes in {python} and {ipc_address}
2016-02-16 12:52:11 +01:00
6196aaf2f5
master/worker: increase timeouts. Windows VMs can be really slow.
2016-02-16 09:44:50 +01:00
f0e25991fe
gui/experiments: set icon of MDI subwindows
2016-02-16 00:28:51 +01:00
87574193d4
gui: autoscroll MDI area
2016-02-16 00:19:50 +01:00
53076615f8
gui: save/restore geometry of MDI subwindows
2016-02-16 00:19:38 +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
whitequark
a5977a5b62
Commit missing parts of 1465fe6f8
.
2016-02-15 21:42:51 +00:00
whitequark
1465fe6f81
Add channel name as the first argument to rtio_log ( #206 ).
2016-02-15 21:17:54 +00:00
whitequark
f28b259b5f
Commit missing parts of 74a75841
.
2016-02-15 19:36:19 +00:00
1fc51f32ed
test/scheduler: fix
2016-02-15 18:31:26 +01:00
72a993afe0
master: cache last RID. Closes #234
2016-02-15 18:20:50 +01:00
649f3b9094
Revert "Add workaround for analyzer core bug ( #206 )."
...
This reverts commit e94a9236aa
.
2016-02-15 09:57:23 +01:00
whitequark
e94a9236aa
Add workaround for analyzer core bug ( #206 ).
2016-02-15 03:56:56 +00:00
whitequark
74a75841f6
Add rtio_log() and make print() an RPC ( #206 ).
2016-02-15 03:56:56 +00:00
whitequark
b9448c069a
Make rtio_log() accept variable number of arguments.
2016-02-15 03:56:56 +00:00
whitequark
cd7f12e4b1
Remove lognonl(); rename log() to core_log() to avoid math.h conflict.
...
Also, make core_log() exactly equivalent to printf(), since the lack
of a drop-in universally usable printf() equivalent annoys me.
Note that this breaks compiled experiments. They'll be fixed in
the following commits.
2016-02-15 03:56:56 +00:00
c63afae875
gui/moninj: add scrollbars
2016-02-15 00:57:15 +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
e4918a6e19
Merge branch 'master' of github.com:m-labs/artiq
2016-02-14 23:29:24 +01:00
b24146e680
Merge branch 'qtdocks'
2016-02-14 23:28:44 +01:00
9797acc964
gui/applets: prevent size from shrinking to zero when docked
2016-02-14 23:27:59 +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
579e789ad7
tools/QDockWidgetCloseDetect: simplify
2016-02-14 22:42:25 +01:00
055573a4af
Merge branch 'subprocess-termination'
...
* subprocess-termination:
test_ctlmgr: fix
Client: add note about timeout sideeffects
hardware_testbench: full shutdown sequence for controllers
worker: flake8 style cleanup
ctlmgr: fix import
pc_rpc.Client: support socket timeouts
subprocesses: unify termination logic
2016-02-14 22:28:11 +01:00
489f69f991
gui: reliable detection of dock close
2016-02-14 22:22:07 +01:00
b97be9c08d
Merge branch 'newtesting'
2016-02-14 21:30:19 +01:00
ab1d85be53
gui: remove PyQt5 assertion (break mock modules)
2016-02-14 14:03:57 +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
e68d0d1ec7
gui: do not crash when deleting selected hierarchical dataset and its parents
2016-02-13 23:22:59 +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
4a03335850
protocols/pipe_ipc: fix read transport resource leak
...
This caused the "Exception ignored in:" message on exit.
2016-02-11 17:12:05 +01:00
29d4755567
gui/applets: prevent concurrent process start/stop
2016-02-11 16:25:44 +01:00
92c0ede689
applets: workaround for Qt window embedding initial size bug
2016-02-11 16:19:34 +01:00
cd9467a8df
gui/applets: properly destroy container widget when process is terminated
2016-02-11 16:02:10 +01:00
c9a9d19182
test/serialization: fix syntax
2016-02-11 09:37:27 +01:00
6434a9cd5f
Merge branch 'master' into subprocess-termination
...
* master: (44 commits)
Revert "conda: restrict binutils-or1k-linux dependency to linux."
manual/installing: refresh
use https for m-labs.hk
gui/log: top cell alignment
master/log: do not break lines
conda: fix pyqt package name
gui/applets: log warning if IPC address not in command
applets: make sure pyqtgraph imports qt5
applets: avoid argparse subparser mess
examples/histogram: artiq -> artiq.experiment
gui/applets: save dock UID in state
setup.py: give up trying to check for PyQt
setup.py: fix PyQt5 package name
Use Qt5
applets: fix error message text
applets: handle dataset mutations
applets: properly name docks to support state save/restore
applets: clean shutdown
protocols/pyon: set support
protocols/pyon: remove FlatFileDB
...
2016-02-11 09:24:45 +01:00
97ba77f4b5
gui/log: top cell alignment
2016-02-10 06:34:11 +01:00
2ce1e6a1e9
master/log: do not break lines
2016-02-10 06:33:41 +01:00
d1e54c86b1
gui/applets: log warning if IPC address not in command
2016-02-08 22:39:47 +01:00
338e5fe3fc
Merge branch 'applets_pipeipc'
2016-02-08 22:25:36 +01:00
44a1efa601
applets: make sure pyqtgraph imports qt5
2016-02-08 22:25:20 +01:00
67327b1e61
applets: avoid argparse subparser mess
2016-02-08 22:25:02 +01:00
4733c4ba1e
gui/applets: save dock UID in state
2016-02-08 21:57:07 +01:00
d873c25b8b
Use Qt5
2016-02-08 19:32:40 +01:00
7584b02d66
applets: fix error message text
2016-02-08 19:23:50 +01:00
de99e7f830
applets: handle dataset mutations
2016-02-08 19:20:07 +01:00
f25b5442e7
applets: properly name docks to support state save/restore
2016-02-08 16:26:02 +01:00
dc955d46c9
Merge branch 'applets'
2016-02-08 14:55:53 +01:00
8844fba4c9
applets: clean shutdown
2016-02-08 14:35:37 +01:00
8be0696b39
protocols/pyon: set support
2016-02-08 14:08:14 +01:00
8a912105cb
protocols/pyon: remove FlatFileDB
2016-02-08 14:05:00 +01:00
741b11c26d
applets: basic embedding OK
2016-02-08 09:59:15 +01:00
912274c6af
test_ctlmgr: fix
2016-02-05 15:08:49 -07:00
70a67a0e38
Merge branch 'applets' into applets_pipeipc
2016-02-05 13:29:20 +01:00
c52081ca0d
Merge remote-tracking branch 'm-labs/newtesting' into subprocess-termination
...
* m-labs/newtesting:
style
assume 'import artiq' works before running tests
test/ctlmgr: use sys.executable, use default localhost binding
2016-02-03 15:00:00 -07:00
ab81dbbd19
Merge remote-tracking branch 'm-labs/master' into subprocess-termination
...
* m-labs/master:
remove pxi6733 support (now lives at https://github.com/m-labs/aq_ni6733
setup.py: remove stale import
remove stale dependency on pyelftools
2016-02-02 23:34:37 -07:00
c28b938471
Client: add note about timeout sideeffects
2016-02-02 15:42:47 -07:00
f7df393248
hardware_testbench: full shutdown sequence for controllers
2016-02-02 15:32:40 -07:00
53e5d0a7bb
worker: flake8 style cleanup
2016-02-02 15:32:40 -07:00
7636952496
ctlmgr: fix import
2016-02-02 15:32:39 -07:00
c105949155
pc_rpc.Client: support socket timeouts
...
... and fix two flake8 errors.
2016-02-02 15:32:39 -07:00
55006119c8
subprocesses: unify termination logic
2016-02-02 15:32:36 -07:00
89f68f3470
style
2016-02-02 21:57:25 +01:00
9ca8b48bf9
assume 'import artiq' works before running tests
2016-02-02 21:52:33 +01:00
ca8a075f46
test/ctlmgr: use sys.executable, use default localhost binding
2016-02-02 21:08:51 +01:00
b7de92e96c
remove pxi6733 support (now lives at https://github.com/m-labs/aq_ni6733
2016-02-02 18:41:57 +01:00
cf465dae0c
tools/file_import: make sure sys.path is always restored
2016-01-31 20:33:17 +01:00
0d18942869
hardware_testbench: request controller termination
2016-01-30 20:04:32 -07:00
9fb5ef4d86
Merge branch 'increase-runtime-size'
...
closes #250
* increase-runtime-size:
flash: grow runtime limit to 512 kB
RELEASE_NOTES: update
flash storage: move to flash + 0x70000
2016-01-30 18:58:32 -07:00
10d78a5d0b
flash: grow runtime limit to 512 kB
2016-01-30 14:50:15 -07:00
68891493a3
analyzer: move common to artiq.protocols
...
migen was still pulled in through rtio.__init__.py
2016-01-29 20:26:48 -07:00
17ac64a65e
ctlmgr: fix the fix ( 107e2fe
)
2016-01-29 17:52:12 -07:00
d05d720b19
tests: misc fixes, cleanup
2016-01-29 17:32:59 -07:00
107e2fedf4
ctlmgr: reinstate lost changes
2016-01-29 17:20:07 -07:00
1d92c0874e
gui/log: use QFontDatabase for fixed font
2016-01-29 23:21:22 +01: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
4a29f0702f
test.ctlmgr: drop a redundant lambda
2016-01-28 16:59:59 -07:00
bb1db7d7fd
test.ctlmgr: add basic test tooling
2016-01-28 16:54:14 -07:00
ab5e8fd8da
hardware_testbench: fix timeout handling
2016-01-28 15:41:38 -07:00
982fbb0670
hardware_testbench: use plain subprocess to start controllers
2016-01-28 15:31:01 -07:00
1b7020dff3
hardware_testbench: run Crontrollers loop in thread, not the test
2016-01-27 18:45:08 -07:00
99f788965e
Merge branch 'master' into testbench-controllers
...
* master:
gui/experiments: float/bring into focus already open docks when opening experiments
gui: reduce size of console dock
protocols/logging,pc_rpc: do not print errors on Windows when clients disconnect
gui: reduce size of schedule dock
worker: Windows VMs are slow, increase send_timeout
protocol/sync_struct: Windows also raises ConnectionAbortedError on disconnection
gui: reduce size of log dock
gui: reduce size of experiment dock
protocols/logging/LogParser: handle Windows CRLF
pyon: handle \r
test/pipe_ipc: re-enable
protocols/asyncio_server: minor cleanup
protocols/pipe_ipc: Windows support
Revert "Revert "test/pipe_ipc: temporarily skip test""
Revert "try debugging weird unittest failure"
try debugging weird unittest failure
conda: restrict binutils-or1k-linux dependency to linux.
transforms.iodelay_estimator: make diagnostics much more clear.
Fix typo.
2016-01-27 14:26:35 -07:00
f78eecb81b
hardware_testbench: run controllers
2016-01-27 14:24:32 -07:00
022a1ffd09
gui/experiments: float/bring into focus already open docks when opening experiments
2016-01-27 21:58:27 +01:00
ebb959cd50
gui: reduce size of console dock
2016-01-27 21:25:42 +01:00
27c12a5bf4
protocols/logging,pc_rpc: do not print errors on Windows when clients disconnect
2016-01-27 21:23:27 +01:00
7aaeb636e4
gui: reduce size of schedule dock
2016-01-27 21:18:47 +01:00
5076c85ed6
worker: Windows VMs are slow, increase send_timeout
2016-01-27 21:15:22 +01:00
a4fb8f3e53
protocol/sync_struct: Windows also raises ConnectionAbortedError on disconnection
2016-01-27 21:12:22 +01:00
cfa4f791e8
gui: reduce size of log dock
2016-01-27 20:51:34 +01:00
dca44ef501
gui: reduce size of experiment dock
2016-01-27 20:46:25 +01:00
170b438b98
protocols/logging/LogParser: handle Windows CRLF
2016-01-27 20:45:04 +01:00
590354dbc8
pyon: handle \r
2016-01-27 20:43:42 +01:00
b753306f12
Merge branch 'worker_pipeipc'
2016-01-27 19:37:06 +01:00
3d9fc7a51f
test/pipe_ipc: re-enable
2016-01-27 19:20:04 +01:00
79c0488ff1
protocols/asyncio_server: minor cleanup
2016-01-27 19:19:47 +01:00
dce2aac475
protocols/pipe_ipc: Windows support
2016-01-27 19:18:03 +01:00
83fd160614
Revert "Revert "test/pipe_ipc: temporarily skip test""
...
This reverts commit 7a9864b260
.
2016-01-27 10:26:53 +01:00
whitequark
0acc86b3b3
transforms.iodelay_estimator: make diagnostics much more clear.
2016-01-27 02:10:15 +00:00
whitequark
7f9a180946
Fix typo.
2016-01-26 23:23:35 +00:00
ccac8525d2
lda: test tweaks
2016-01-26 15:24:29 -07:00
cda4a0765d
artiq_ctlmgr: refactor into artiq.devices.ctlmgr
2016-01-26 15:24:29 -07:00
be5162d60f
worker: restore short exception info in first line of log
2016-01-26 22:07:54 +01:00
3cf67afeb1
generalize multiline logging to remote logs and controllers
2016-01-26 21:59:37 +01:00
1fed38a8dc
worker: use MultilineFormatter
2016-01-26 21:30:28 +01:00
ded1e31567
protocols/logging: add MultilineFormatter
2016-01-26 21:30:09 +01:00
19c5e89b4d
protocols/logging: support parsing multiline log messages
2016-01-26 21:06:44 +01:00
5aa4de8e89
refactor logging and implement in worker
2016-01-26 20:31:42 +01:00
a583a923d8
worker: use pipe_ipc (no log)
2016-01-26 14:59:36 +01:00
6383253e03
protocols/pipe_ipc: autoclose pipe fds on process exit in AsyncioParentComm
2016-01-26 14:55:52 +01:00
7a9864b260
Revert "test/pipe_ipc: temporarily skip test"
...
This reverts commit 3a73673e71
.
2016-01-26 09:42:59 +01:00
3a73673e71
test/pipe_ipc: temporarily skip test
2016-01-25 19:21:03 -07:00
d1119d7747
artiq_dir: move out of tools to unlink dependencies
2016-01-25 18:15:50 -07:00
cbb60337ae
refactor Analyzer constants to unlink dependencies
2016-01-25 18:03:48 -07:00
f4c7f02127
CoreException: store at 'py_exn.artiq_core_exception'
...
... and fix a few imports
2016-01-25 17:24:00 -07:00
e0f2d94191
coredevice: remove some print()s
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
765001054d
artiq.experiment: merge language and coredevice namespaces
...
perl -i -pe 's/^from artiq import \*$/from artiq.experiment import */' your_experiments/*.py
(assuming you skipped the changes form the previous commit)
2016-01-25 17:24:00 -07:00
fbe4d96572
artiq: move namespace artiq.* -> artiq.language.*
...
perl -i -pe 's/^from artiq import \*$/from artiq.language import */' your_experiments/*.py
2016-01-25 17:24:00 -07:00
dcea6780c6
protocols/pipe_ipc: implement AsyncioChildComm for Unix (affected by python/asyncio#314 )
2016-01-26 00:48:12 +01:00
8befc6a8fc
protocols: add pipe_ipc (incomplete)
2016-01-25 22:49:32 +01:00
0079aa4037
runtime/main: style, wording, 1s ppp holdoff
2016-01-25 13:38:58 -07:00
2832d200f2
Merge remote-tracking branch 'm-labs/master' into ppp2
...
* m-labs/master:
test/worker: update
gui/log: display level and date information in tooltips
master: add filename in worker log entries. Closes #226
master: finer control of worker exception reporting. Closes #233
conda: add artiq-kc705-nist_clock
gateware: add QC1 docstring
gateware: add clock target from David
gateware: clean up and integrate QC2 modifications from Daniel
add information about CLOCK hardware
2016-01-25 12:17:04 -07:00
a4dffaac26
test/worker: update
2016-01-24 15:32:37 +01:00
56cbf261b0
gui/log: display level and date information in tooltips
2016-01-23 22:17:08 -05:00
ae19f1c75d
master: add filename in worker log entries. Closes #226
2016-01-23 21:43:24 -05:00
cc6b808bf8
master: finer control of worker exception reporting. Closes #233
2016-01-23 21:23:02 -05:00
8cbb60b370
Merge branch 'master' into ppp2
...
* master:
add release notes/process
targets/kc705: fix e664fe3
targets/kc705: fix DDS_RTIO_CLK_RATIO for AD9914. Closes #238
transforms.inferencer: give a suggestion on "raise Exception".
pdq2/mediator: raise instances, not classes
pdq2: wire up more of the pipeline
doc: use actual version
Fix formatting.
doc: add artiq_flash
versioneer: remote tag_prefix = v
2016-01-20 19:29:00 -07:00
18f0ee814d
gateware: add QC1 docstring
2016-01-20 21:27:22 -05:00
db8ba8d6c1
gateware: add clock target from David
2016-01-20 21:23:49 -05:00
b3ba97e431
gateware: clean up and integrate QC2 modifications from Daniel
2016-01-20 21:17:19 -05:00
fa1afb7dd8
add information about CLOCK hardware
2016-01-20 21:06:02 -05:00
cb5fd08713
targets/kc705: fix e664fe3
2016-01-20 09:38:44 -05:00
e664fe38b0
targets/kc705: fix DDS_RTIO_CLK_RATIO for AD9914. Closes #238
2016-01-20 09:18:50 -05:00
whitequark
3573a8750a
transforms.inferencer: give a suggestion on "raise Exception".
2016-01-20 03:20:25 +00:00
641ef57458
pdq2/mediator: raise instances, not classes
2016-01-19 20:16:27 -07:00
f0860beffd
pdq2: wire up more of the pipeline
2016-01-19 20:09:10 -07:00
whitequark
1d7858c7bc
Fix formatting.
2016-01-19 18:52:43 +00:00
cf17be92e3
doc: add artiq_flash
2016-01-18 21:41:42 -07:00
8674875007
versioneer: remote tag_prefix = v
...
does not seem to be stripped correctly
2016-01-18 21:28:09 -07:00
2bc2cd0064
ppp: remove unneeded objects
2016-01-18 21:26:36 -07:00
7e3610c545
Merge branch 'pipistrello-analyzer' into ppp
...
* pipistrello-analyzer:
pipistrello: add rtio.Analyzer()
2016-01-18 21:05:02 -07:00
1adeeabbed
ppp: wait for connection
2016-01-18 21:04:51 -07:00
dc709a77b8
PPP support (TCP broken)
2016-01-18 20:09:10 -07:00
57ce78c54d
pipistrello: add rtio.Analyzer()
2016-01-18 19:17:44 -07:00
063e88d75a
artiq/_version.py: update
2016-01-18 19:12:42 -07:00
whitequark
e2910fba99
runtime: define NDEBUG to disable debug mode of __artiq_personality.
...
There shouldn't be any bugs left and all the printing it does slows
exception handling considerably.
2016-01-19 01:52:57 +00:00
whitequark
5c6b1517d0
Rigorously treat builtin core device exceptions.
2016-01-19 01:45:25 +00:00