#milkymist IRC log for Sunday, 2012-04-01

kristianpaulM1 retro i now days computers anyway isnt? ;)00:03
kristianpaulso.. :)00:04
wpwrakkristianpaul: maybe progressive retro. or how about avantgarde retro ? ;-)01:24
kristianpaulprogressive, indeed01:30
Action: kristianpaul still diguesting avantgarde01:33
wpwrakdigesting ? disgusting ? dis-guesting ? :)01:40
kristianpaulfirst one sorry01:45
qi-botThe milkyminer firmware build was successful, see images here: http://fidelio.qi-hardware.com/~xiangfu/build-milkymist/milkyminer-firmware-20120401-0837/07:06
AlarmHow one do I use DMX Flickernoise? This is not documented on the wiki12:00
wpwrakAlarm: hmm, see if you can catch xiangfu. he's done some DXM work. you can also look at the patches that have DMX in their name. maybe that'll help you get started: https://github.com/milkymist/flickernoise/tree/master/patches/12:21
Alarmwpwrak: thank you**12:24
wolfspraulactually xiangfu is mostly offline the next 2 days, I think :-)12:32
wolfspraulAlarm: so unless someone else beats him, stay around a little but yeah, xiangfu has dmx equipment and has used it with m112:33
Alarmwpwrak: I will stay online and wait, thank you :)12:37
xiangfuAlarm, Hi12:43
Alarmxiangfu: Hi,do you know how to use DMX Flickernoise?12:45
xiangfuAlarm, if you using latest firmware. by default Flickernoise is working as Fixture mode.12:46
xiangfuAlarm, which mean the DMX port is by-pass mode and DMX patch can react on idmx* variables.12:47
xiangfuidmx == input dmx values.12:47
xiangfuAlarm, do you have a DMX controller? or you want use Milkymist one as Controller?12:49
Alarmxiangfu: I have a projector set to DMX address 1. I want the projector controller with M112:50
lekernel_ah. so make sure you disable "chain" mode in the DMX settings.12:53
wolfspraulthere u go, not offline yet :-)12:56
xiangfuAlarm, yes. 1. disable the 'Chain' under 'DMX settings'12:56
Alarmxiangfu: ok. idmx = adress ?12:57
xiangfuAlarm, wait you may lose this setting. when you restart M1. after click 'ok' the title changed from 'Control panel' to 'Control panel *'12:58
wolfspraulwe should never loose any setting12:59
xiangfuyou can save the settings by click the 'Save' under 'Control panel' that is for future using.12:59
xiangfuwolfspraul, yes. but you mean have different setting.12:59
xiangfuthat have to be same as a performance configure file.12:59
wolfspraulsounds scary :-)13:00
xiangfuAlarm,  if you using Milkymist one as Controller. we use the 'dmx*' variables. not 'idmx*'13:00
xiangfuAlarm, since your projector is set to 1. you can use the 'dmx1' in patches for control your projector.13:01
xiangfuwolfspraul, agree. complicate.13:02
Alarmxiangfu: the table DMX use for ?13:03
wolfspraulI'm not that worried, since exactly 0 real-life users will make it through those difficulties. that means we can change/simplify without breaking any user habits.13:04
wolfspraulthat's a good thing13:04
xiangfuAlarm, it's used for manually control DMX fixture.13:04
wolfspraulfeel free to simplify that stuff13:04
xiangfuAlarm, you can connect to projector to M1 now. and controller that my slip the 'DMX desk' --> '1-8' --> '1'13:05
xiangfus/connect to/connect13:05
Action: xiangfu sorry. so many typo recently. 13:06
AlarmXiangfu if I vary the values of potentiometer 1 to 3 (RGB) I would have to vary the colors of the projector ?13:08
xiangfuAlarm, sorry. what you mean? you projector have only one address right?13:11
xiangfuAlarm,  what is the value means of that address?  usually it's should be like 0: off,   1~50: red ,51~100: green. ...13:12
Alarmxiangfu: set the DMX address by switches on my projector (here 1). In the manual, they say there are 6 channels. The first 3 channels regulate the RGB colors.13:20
xiangfu(if I vary the values of potentiometer 1 to 3 (RGB) )  the projector will change color. yes. you right.13:22
AlarmHum, On the projector I have two IN and OUT connectors. Should I add a line termination resistor?13:27
AlarmM1 TX -> projector IN-> ? OUT13:30
lekernelif your cable is short enough, there shouldn't be a need for termination resistors13:31
xiangfuAlarm, here is an example patch: https://github.com/milkymist/flickernoise/blob/master/patches/Rovastar%20&%20Idiot24-7%20-%20Balk%20Acid%20%28DMX%20madness%29.fnp13:40
wolfspraulas soon as m1 supports any kind of video format, even animated gifs, we should really convert that 30 second indian milkymist commercial and ship it on each m1 :-)13:57
wolfspraulmaybe we find another way to use it too, since it's already out there and promoting milkymist... :-)13:58
wolfspraulmaybe a series of frameshots from the clip, on a poster13:59
wolfspraulbut with the correct milkymist.org url, of course13:59
GitHub120[migen] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/migen/commit/f3ae22f488119aa273882adcd6537bc6b54dc66a14:47
GitHub120[migen/master] fhdl/verilog: initialize internal read-only signals with their reset values - Sebastien Bourdeauducq14:47
GitHub56[migen] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/migen/commit/d3c6b8d16f3a6f09bb7ea19c322cb9913c13fc6015:27
GitHub56[migen/master] sim/proxy: support lists - Sebastien Bourdeauducq15:27
GitHub194[migen] sbourdeauducq pushed 1 new commit to master: https://github.com/milkymist/migen/commit/6e3b25ebb6512a9f03ad3bab1d3df0eabe0b132a15:51
GitHub194[migen/master] bus/dfi: reset active low signals to 1 - Sebastien Bourdeauducq15:51
lekernelroh: is the Raumfahrtagentur DMZ on Mondays or Sundays?16:35
rohlekernel: ?19:13
rohlekernel: you mean.. nobody there?19:13
lekernelI'm not there. but you're saying "Der Sonntag der Kosmonauten - Immer Montags im Stattcafe". that's confusing :)19:24
rohlekernel: yeah. thats intent. also... its not happening atm , since the cafe next door isnt open on mondays *sigh*19:58
GitHub169[milkymist-ng] sbourdeauducq pushed 2 new commits to master: http://git.io/r1t3_Q21:32
GitHub169[milkymist-ng/master] tb/asmicon: global test bench - Sebastien Bourdeauducq21:32
GitHub169[milkymist-ng/master] asmicon: various fixes. Now produces convincing refresh/read sequences. - Sebastien Bourdeauducq21:32
mwallelekernel: i'm trying to understand the usb core, one thing i noticed is why there are blocking assignments in a sequential block? (softusb_rx.v:152)21:34
mwalleand another thing, maybe wpwrak can answer this, too: why do you have to wait for RX_ACTIVE (eg. WAIT_ACTIVE()), isnt that already included in rx_valid and therefore in RX_PENDING (WAIT_RX())?21:38
wpwraka reception could also fail to produce valid data21:48
wpwraknot sure if we have such a case at the moment. perhaps if the bit stuffing goes wrong21:49
mwallewpwrak: that is for the case where SIE_RX_ERROR is 1 and RX_PENDING is 0 ?21:51
wpwrakah yes, that's in rx_error21:51
wpwrakindeed, seems that we could get rid of WAIT_ACTIVE21:56
mwallewpwrak: ahh but if WAIT_ACTIVE is omitted, you jump out of WAIT_RX because RX_ACTIVE may not be 122:08
lekernelmwalle: seems you could use the non-blocking ones there as well22:22
lekernelI don't remember why I used the blocking ones there. maybe some older code made use of them.22:24
mwallelekernel: seems? isnt the rule of thumb: combinatorial -> blocking, sequential -> non-blocking?22:24
lekernelyou can use non blocking assignments in combinatorial always blocks as well22:25
lekernelyour block will simply be run again after one delta cycle, until it has stabilized22:26
lekerneland in sequential code, blocking assignments can work like VHDL variables22:26
lekernelhere's an example: https://github.com/milkymist/milkymist/blob/master/cores/tmu2/rtl/tmu2_geninterp18.v#L5622:27
mwallelekernel: but that only applies to simulation, right?22:29
lekernelthe only problem is (in simulation) verilog doesn't guarantee the order of execution when an always block communicates through blocking assignments (in VHDL variables are local to a process, so this problem cannot exist)22:29
wpwrakmwalle: i mean that one could wait either for data, error, or timeout. that should cover roughly the same cases. but ... would need some testing. so that's an idea for the future great USB low-level test :)22:29
lekernelfor synthesis it doesn't matter whether you use blocking or non blocking in combinatorial blocks22:30
lekernelbut there is a difference in sequential blocks22:30
mwalleoh, that i didnt know :)22:30
lekernelif you look at the geninterp18 code22:31
lekernell57 reads the value of err set from l56 in the same cycle22:31
lekernelif I used non blocking assignment on err, it would have been the value from the previous cycle22:32
mwalleyeah, and i thought that in hardware l57 still holds the old value22:32
lekernelno, the synthesizer will do the right thing when you use the blocking assignment22:32
lekernelsimulators, however, may not22:33
lekernelyou should communicate between blocks using non-blocking assignments only (which my code doesn't do, but should)22:33
lekernelotherwise there is non-determinism coming from the order the different always blocks are run, which can lead to funny intermittent simulation problems (pipelines becoming pass-throughs, etc.)22:35
lekerneland, of course, simulation vs. synthesis mismatches22:36
mwalleso the synthesizer just infer temporary signals for you?22:36
mwallehave to go, gn8 together22:41
--- Mon Apr 2 201200:00

Generated by irclog2html.py 2.9.2 by Marius Gedminas - find it at mg.pov.lt!