#qi-hardware IRC log for Sunday, 2012-03-18

vanoHas anyone ever manager to use a USB mouse with the nanonote?00:37
vano?00:37
kristianpaulnot yet i remenber00:37
vanoanother thing& any fix for the hwclock not working ? Result: "select() to /dev/rtc0 to wait for clock tick timed out"00:40
kristianpaulah, mouse i tought you meant nanononote as HID !00:51
kristianpaulvano: you cant use nanonote with a usb mouse, the usb port is not host type00:52
vanoyep.00:53
wpwrakyou could of course try implementing a usb host via bit-banging ...00:53
wpwrakzrafa: how's that project going ? ;-)00:53
vanoserial mouse? :P00:54
wpwrakvano: that would be even easier :)00:54
kristianpaulah bit-bang nanonote most used feature yes :-)00:54
vanowas thinking that 00:54
vanoWhere can I find a boot image which doesn't have the fb screen (so I can see the console errors?)01:00
mthvano: there were some proposed patches on the mailinglist for that issue01:23
mthI don't really understand though why the error occurs on the NanoNote and not on the Dingoo01:24
mth(the RTC issue)01:24
vanoyeah saw it there...01:24
vanoany good links on compiling the kernel?01:25
mthget qi-kernel jz-3.2 branch from git01:27
mthmake ARCH=mips qi_lb60_defconfig01:27
mthmake ARCH=mips <image-type>01:27
mthnot sure what the image type is that the NanoNote needs01:28
mthfor Dingoo, it's vmlinuz.bin, but afaik the NN boot loader wants a different type01:28
qi-bot[commit] Werner Almesberger: postscript.c (ps_for_all_pkg): "pages" was never initialized (master) http://qi-hw.com/p/fped/513070702:18
qi-bot[commit] Werner Almesberger: purge unused measurement instances (master) http://qi-hw.com/p/fped/43928db02:18
rohwpwrak: tried dxf2gcode yet?02:42
rohwpwrak: its on google projects... make sure to try the tkinter version from 201002:42
rohdxf2gcode-read-only/tags/2010-05-04-b02_tkinter253/02:42
rohthat one makes working gcode for me at least02:43
wpwraklooks interesting, thanks ! trying ...03:00
wpwrakhmm, can it also visualize the toolpath ?03:15
wpwrakall i get are outlines but not the areas themselves03:17
wpwrake.g., for this sort of piece: http://downloads.qi-hardware.com/people/werner/tmp/t2.ps03:21
wpwrakkeep or remove the hatched area03:22
wpwrakthe outlines are a good start. but that's something i already have :)03:22
qi-bot[commit] Xiangfu: use kanoi repo. include the api changed (master) http://qi-hw.com/p/openwrt-packages/0a035ec06:51
qi-bot[commit] Xiangfu: remove other u-boot include SDK and toolchain (master) http://qi-hw.com/p/openwrt-packages/0f7277306:51
qi-bot[commit] Xiangfu: nanonote-files: compile script file: collect all failed package in minial build (master) http://qi-hw.com/p/openwrt-packages/97b9b8406:51
rohwpwrak: ah. i see what you mean. not something like the 'profile' but something like the 'pocket' in heeks, right?06:56
wpwrakyup06:56
rohcheck out the opencamlib stuff heeks uses, maybe thats something for you06:56
rohhttp://opencamlib.googlecode.com/06:57
wpwraki think i'm already halfway there :) NIH rules !06:57
rohah. its on github now06:57
rohwell.. what i worry about on the current state of free cad and cam are the 'un-completeness' and buggy-isms06:58
rohwould be good to have some of the features for '2.5d cam' which we have as half-way decent libs now in some working tool06:59
rohsomething between heekscam and dxf2gcode06:59
rohcurrently we are at a point where using commercial stuff like cambam on win32 solves problems more easy than my quite big opensource tool collection07:00
wpwrakphew. the top-level latest commits sound scary. "   I got the Windows build to work again", "all the ocode scripts are deprecated", ...07:01
rohyeah, one can choose code from good coders or code from people who have a clue about milling07:02
wpwraki think one problem is that it07:02
rohi havent seen something combined07:02
wpwrak's hard to combine user-friendly and efficient07:02
wpwrake.g., user-friendly often means some GUI that kinda guides you07:02
rohtrue.07:02
wpwrakefficient means scripting of all the parameters involved07:02
rohe.g. on heeks the ui was crappy due to mad multiplatform madness07:03
rohmeant choosing wxwindows which made all platforms unbearable due to missing default dialogs and keybindings07:03
rohor tkinter07:04
wpwrakyeah, better to code for proper unix only07:05
wpwrakwho cares about windows anyway ?07:05
rohack. also if it works there properly, porting to others is easy. gtk on win32 and osx is available native now afaik.07:06
wpwrak(scripting) e.g., here's the script i used for the labsw front panel: http://projects.qi-hardware.com/index.php/p/wernermisc/source/tree/master/labsw/mech/doit07:06
rohand yes, win32 and osx are really neccessary.. you would wonder how many 'users' there are, who still could give good advice07:06
rohhave you seen the script heeks generates?07:07
wpwrakit does: 1) setting of the machine coordinate system. 2) positioning in a array (in case we want multiple parts from the same workpiece). 3) translation from 2D to 2.5D (that task has two different depths, one for engraving, the other for cutting). 4) at the end, conversion to RML07:08
rohall the toolpath is first converted to a python script with the individual function calls and comments, which is then executed to generate the gcode which is then parsed back and displayed into the gl-view with your model07:08
wpwraki just use gnuplot as my interchange format :)07:09
rohand one can render out into different gcode dialects and formats07:09
wpwrakoverengineering ;-)07:09
rohgnuplot isnt mighty enough i think07:09
wpwrakwell, if you want arcs and such, then things get messy07:10
rohatleast not for complex 2.5d stuff (making surfaces by zigzag or waterlining)07:10
wpwraki just turn everything into polygons07:10
rohdxf is nice for 2d stuff and easy to read and write (using dxflib, which seems to be the industry standard)07:10
rohwpwrak: doesnt work in reality (i need arcs for example)07:11
rohalso the machine natively does arcs in the end07:11
wpwrakyeah, i convert arcs to polygons07:11
rohthats too simplified for what we need in reality... e.g. i currently work on milling pcb dummies for a customer07:12
wpwraknot super-efficient but it doesn't see to create any bottlenecks07:12
wpwrakwell, in the end the mill does polygons too :)07:12
wpwrakit's just a question of the resolution07:12
rohi get dxf from the customer, remove the unneeded markings, and layers, and get lines and arcs as well as circle elements in the end07:12
rohthat i need to preprocess to emc gcode in my case (iso gcode that means) and mill07:13
rohthere is a gcode for the resolution, you know?07:13
wpwrakthere's a gcode for pretty much everything :)07:14
rohbecause its also affecting the breaking and accelerating behaviour in curves and on corners. if you set it lower than the default (0.001mm) the machine gets _really_ slow since it wants to be really exact on positioning07:14
rohgcode for tool offsets are nice. basically you only need to tell it  if it should be on line, left or right of it, and what tool, and it does the rest for you. no nasty math. somebody else made sure it does work and debugged it.07:16
wpwrakwell, it's not all that bad ...07:16
wpwrakhttp://projects.qi-hardware.com/index.php/p/cae-tools/source/tree/master/cameo/path.c function path_offset (and the stuff it calls)07:17
wpwrakalso does dog bones if asked nicely07:17
rohi actually like it, since its a grown up intermediate for the problem, which is still flexible enough, while so simple that one can parse/modify/write it by hand.07:18
rohwhere does rml come from? does anything besides roland mills/plotters use it?07:21
wpwrakis some bastardized HPGL07:22
rohjust asking since the mit fablab cam.py is also supporting it07:22
wpwrakand no, i don't know of anything else using it07:22
rohehehe. well.. thus it really makes sense to have pluggable output renderers07:22
wpwraki think the mdx-15/20 are reasonably popular07:22
wpwraki wonder why people don't make mills that understand gcode directly. the whole external machine control integration (via PC) is messy.07:24
rohwpwrak: hm? you need a strong cpu anyhow for the ui07:24
rohactually i havent seen a better ui that axis from emc207:25
wpwrakwhat kind of heavy lifting does the ui of emc2 do ?07:25
roheven has a gl-preview which commercial products are not havinh07:25
rohwpwrak: it does all the realtime-controlling07:25
wpwrakthe UI ??07:25
rohaxis is only the ui (well.. one of the possible ones)07:25
rohthe core is realtime since the control loop runs over it (motion planning etc). the mills are completely stupid. they do nothing intelligent.07:26
wpwrakwhat i mean is just gcode -> machine control. no fancy gui at that point07:26
rohdoesnt help anybody07:26
rohwithout that ui i couldnt use the machine more than a really sucky to use 30 year old machine with a floppy for file input. people hate that. thats why they use mach3 or axis07:27
rohyou need to home to your workpiece, you want to see if its moving over your clamps properly etc.07:27
rohit helps a lot seeing what it wants to do and where it wants to move BEFORE it actually does it.07:28
wpwrakhttp://projects.qi-hardware.com/index.php/p/cae-tools/source/tree/master/cngt/07:28
wpwrakhmm, how can you till if it will bump into your clamps before it starts moving ? do you scan the clamps and model them ?07:29
rohalso you need to understand that besides our 'childs toy mills' which only have a spindle, and 3 stepper motors and 3 homing switches, there are actually proper big machines.07:29
wpwrakcngt reads the model and then positions to selected points there (heavily 2.5D, of course. so it's the corners of the projection and the pen up / z = 0 positions)07:30
rohe.g. emc can be used to controll stuff which has dc motors and encoders on their axis (servos), or even hydraulic servos and more axes, rotating heads, complex toolchangers etc.07:30
wpwrakoh sure. but ... wouldn't it be nice of those low-cost china mills had their own controller that understands something like gcode ?07:31
rohpeople even used it to build robot controls by using a different motion planning code and different control interface. you do not always need to use gcode as input (one can also move it manually)07:31
rohno. you cannot even home properly without ui07:32
wpwrakadd a pair of encoders :)07:32
rohbecause you wouldnt know what way around your part is facing etc. thats why milling engineers are quite well paid.07:32
rohthe point is that it makes it more difficult by not having a proper computer there. also its 'no cost' compared to the mill07:33
wpwrakyou're talking about fancy mills again07:33
wpwraki mean the low-cost china stuff07:33
rohcomplete computers with enough power are 5 years old. even for fancy mills07:33
rohwe HAVE a low cost china mill.07:33
wpwraksigh. you know what i mean :)07:34
rohand it came with mach3. a parport is better and cheaper than anything else which can do controlling07:34
rohjust mach3 sucked for us. so we used emc2, and its great.07:34
rohone of the few things in opensource cad/cam which is 'featurecomplete' from my pov.07:35
wpwrakis the parport assignment standardized ? or did you first have to reverse-engineer it ?07:35
rohalso havent run into any real bugs or problems which werent my fault (not reading the documentation)07:35
rohits a parport, not much to document besides the pinout. we reversed it from mach3 configs and some cheap measurements (e.g. learning the chargepump-freq)07:36
rohthe chargepump is a pin you wiggle constantly. if you stop the hardware disables all motors immediately. its like a software-dead-man-switch07:37
wpwraksounds like a very reasonable safety precaution :)07:37
roh_yes_ for sure. especially if your motors are strong enough to not only cost you a finger but even worse07:38
rohthe steppers do 2 digit newtonmeters and the spindle has 800W and gearheads07:39
qi-bot[commit] Xiangfu: nanonote: config.full_system, update uboot-envtools add CONFIG_PACKAGE_uboot-envtools_setenv_symlink (master) http://qi-hw.com/p/openwrt-packages/797ea0f07:39
wpwrakif i was your enemy, i wouldn't accept any invitation to the lab ;-)07:40
roh*veg*07:40
rohyou know my definition of if something is a powertool or not?07:41
rohif it can cost you a finger, its a tool, if you can loose a limb, its a powertool07:41
wpwrakif it can casually paint the wall with you, then you begin to get interested ... :)07:44
rohmaybe i can 'mix a pot of red paint' with the mill.. should leave nice red splatter around the room07:44
roh'that was the last customer who was too nosy'07:45
rohwpwrak: you know http://www.hotrodscustomstuff.com/OLD_SITE/HUMOR/LABOR RATES.gif ?07:50
rohand http://yamato.hyte.de/tmp/lab_rules.png07:51
rohimportant for every lab/workshop07:51
wpwrakhehe :)07:55
rohhm. i think i'll test http://gcam.js.cx/index.php/Main_Page tomorrow08:01
vanowhat would be the best sources.list for a debian squeeze sid on the nanonote? Anything should go in there apart from the stock sources.list that comes with the debian rootfs?08:51
AylaI think the default one is fine08:52
vanoI guest /binary-mipsel/Packages.gz  404  Not Found and similar messages08:56
vanoalso I cannot find things like fbterm with apt-get search fbterm...08:56
vanoI think something might be off here08:56
pabs3vano: which mirror are you using?08:59
pabs3(pastebin your sources.list)08:59
vanohttp://pastebin.com/CABRq54t09:01
pabs3looks like ftp.es doesn't have mipsel on it, you will want to choose a different mirror09:03
lindi-incomplete mirrors :(09:04
pabs3check the mirror list for Spanish mirrors with mipsel on them: http://www.debian.org/mirror/list09:04
pabs3lindi-: in this case, partially incomplete. they have the Contents files for mipsel, but no useful stuff like .debs/Packages :)09:05
vanok will check thanks!09:07
Aylawhat the hell is fbterm?09:11
pabs3http://packages.debian.org/sid/fbterm09:12
Aylawell, I did guess it was a terminal for the framebuffer09:13
Aylabut I don't get the point of that thing,09:13
Aylathe kernel already provide framebuffer consoles09:13
viricAyla: it allows using TTF fonts09:15
viricAyla: at the size you want.09:15
viricAyla: I use it to get proper utf-8 support09:16
Aylaah, ok09:16
whitequarkfarnell is impressive09:35
whitequarkdelivered from Britain to Russian in 24 (twenty four) hours09:36
whitequarkfor 20 EUR09:36
whitequarkAyla: have you managed to successfully play any music on NN?09:51
whitequarkit fails to play 44.1k OGG file for me09:51
viricwhitequark: did you ask a raspberrypi?09:52
whitequarkviric: huh?09:52
viric(farnell was a distributor of it :)09:53
whitequarkah, no. a friend of mine ordered some components09:53
whitequarkraspberry pi is broadcom09:53
viricwhitequark: I can play any ogg in the nanonote09:53
viricwhat happens to your ogg?09:53
whitequarkbroadcom is nonfree enough for me to hate it, even through I'm not a fanatic like Stallman; it just doesn't work good with the closed drivers09:53
whitequarkthe playback is interrupted each several hundred ms and the cpu usage is topping to 100%09:54
viricwhitequark: that can come from using a floating-point based player09:54
viricare you using int-based decoding?09:54
whitequarkerm, I just typed "play file.ogg"09:54
viric'play'? what is play?09:54
whitequarksox09:54
viricsox can play something other than wavs? I Didn't know09:55
viricI use mplayer.09:55
whitequarksox can play practically anything09:55
whitequarkat least more than any other player around here09:55
viricso.. I'd bet sox tries to use floating point deocding09:55
whitequarkyeah, mplayer works09:55
viricit's a matter of using the 'tremor' lib vs the 'libvorbis' lib.09:56
viricint vs fp09:56
whitequarkhuh, the sound is somewhat good both with headphones and the integrated speaker09:57
whitequark*with both09:57
whitequarkdoes mpd work?09:58
viricI only have mplayer10:00
Aylawhitequark: I don't have a nanonote10:29
Aylabut 44.1k OGG should work just fine10:30
Aylaabout the problem you're having, I had a similar behaviour when running a system installed on NAND10:31
Aylaand never when running from SD10:32
viricAyla: do you know if there is a way I can have sysrq working on panic?10:42
viricso, on panic, leave some minimal code working...10:42
viricAyla: solved your alarm clock?10:43
Aylaabout sysrq, I don't know10:44
Aylaabout my RTC alarm... not yet10:44
whitequarkviric: what's your problem?11:14
larscAyla: patch you kernel to log the application which changes the alarmtimer ;)11:14
viricwhitequark: I like 'sysrq-B' :)11:15
viriclarsc: How would you debug a latency problem between two userspace programs?11:17
viriclarsc: I'm looking at enabling ftrace and getting scheduler statistics with perf11:17
larscviric: depends on the problem i guess11:18
viriclarsc: I have 'qemu' and 'smbd' communicating through a unix socket. 5% of cpu usage in the host...11:18
viriclarsc: 95% idle (not waiting)11:18
viric'strace' shows there is syscall activity... it's not somehting blocking for long (as name resolution could be, for example)11:19
larscand you'd expect higher throughput?11:20
viricyes.11:21
virica lot higher.11:21
larschm11:21
larschave you tried iotop?11:23
whitequarkviric: just pass a parameter11:26
whitequarksomething like reboot_on_panic=5 (not the real name)11:26
viriclarsc: iotop will tell hd only , not?11:26
viricwhitequark: hm ok. And launch kdb?11:26
viricwhitequark: don't worry much... I can live without that :) I just wondered if it was possible11:27
derRichardviric: why do you think it's an latency problem? sounds more like one of the 2^10 io-related bugs in qemu...11:27
viricderRichard: could be! I tried kvm 0.15.1, kvm 1.0.0, ...11:28
larscviric: so it is all mem-to-mem?11:28
viriclarsc: it's a unix socket11:28
derRichardviric: so, it's qemu-kvm? and _not_ qemu?11:28
viricderRichard: right.11:28
viricderRichard: I checked, and kvm works much faster when there is not that samba activity... when it goes to the samba activity, qemu and qemu-kvm perform equally 'fast'11:29
larscviric: yes, but you don't send random data, do you? I mean the data has to come from somewhere11:29
viriclarsc: ah yes, but 'top' would show the cpu is in waiting state, not idle state11:29
viric(I have iotop running)11:29
derRichardis the feature you are using supported? qemu-kvm offers lots of features which are kinda broken. (that's why you shalt not call it without a wrapper like libvirt)11:30
viriclarsc: 0% all in iotop... only super minimal transfers11:30
larschm11:30
viricI wanted to check latencytop, but I see their site is down. uch.-11:31
viricouch.11:31
whitequarkviric: if you want to launch kdb on panic, it's easier11:41
whitequarkshould be a matter of inserting one function into platform panic handler11:41
whitequarkthrough you may need some UART magic if IRQ handling would be dead at that moment11:42
whitequarkI've used kdb on jz47xx, through11:42
steve|mif someone is interested in SDR: http://sdr.osmocom.org/trac/wiki/rtl-sdr11:43
derRichardlarsc: btw: so, there is no intent from your or qi-hardware's side to make dma work with ben's usb device controller, right? http://projects.qi-hardware.com/index.php/p/ben-nanonote/issues/59/11:44
viricwhitequark: clear11:46
larscderRichard: i guess not11:58
derRichardvery sad11:59
derRicharddo you have an idea why it's broken? ingenic claims that dma works... (at least in their bsp)11:59
larscno, sorry12:01
viricderRichard: I even did not know of that issue. Sad, yes.12:09
derRichardviric: my dream is to use ben as external encrypted harddisk. e.g. put a luks-encrypted fs on an mmc, plug it into ben. then plug ben via usb to your pc. enter the passwort on ben and you see a harddisk on your pc :)12:11
viricah clear12:12
derRichardbut without udc dma this is not possible12:14
viricI thought the ben could only do usb1.1, and that's why it was slow12:14
derRichardyep12:14
derRichardusb on ben is slow because dma for usb seems broken (it's disabled by default)12:15
viricmake the dma work :)12:15
derRichardi've spent already two days with hacking the driver12:15
wolfspraulderRichard: that's sounds like a great idea but afaik you are the pioneer then12:22
wolfspraulthere may be issues in the chip that require workarounds, or make it entirely impossible. hard to say.12:23
derRichardwolfspraul: yeah, maybe. the soc is able to use dma and the driver too. but on ben it does not work (i see corrupted usb packets). maybe it's only a pinmux issue. who knows...12:26
wolfspraulI can tell you honestly that the Ben NanoNote is most likely my last Ingenic-based device. All future devices from me will be Milkymist SoC based :-)12:27
wolfspraulI'll keep the discussions with Ingenic open, but I think I moved on.12:28
wolfspraulof course that still means we want to make the Ben kernel well maintainable, fix bugs or even improve something as you try to do :-)12:28
wolfspraulI could torture Ingenic a little by going back asking about 4720 related bugs :-)12:29
whitequarkno MIPS abomination anymore. definitely a good thing.12:29
wolfsprauloh there will be 100 times more bugs and issues in Milkymist SoC for sure12:30
derRichardi'm currently working a lot with mpc5125 socs from freescale12:31
wolfspraulbut I feel better about it, especially when tracking down bugs and strange behavior12:31
wolfspraulderRichard: nice. and what's your experience?12:31
derRichardtheir bsp are horrible. but the device itself is nice.12:31
derRichardfortunately a lot is already mainline12:32
wolfspraulderRichard: are you following Milkymist SoC a little?12:32
wolfspraulit'll be a long path, but eventually should be really cool12:32
derRichardnot really12:32
wolfspraulyes maybe too exotic right now :-)12:33
wolfspraulwhat kind of device do you build with the mpc5125 ?12:33
whitequarkwolfspraul: bugs are fine. MIPS is broken by design12:41
whitequarkwell, you could expect brokenness from a design which was developed at an university as a teaching example or something12:42
whitequarkI'm all for LM32.12:42
wolfspraulwell, let's use it more and more then we know :-)12:44
viricwhat is a bsp?12:48
derRichardboard support package12:48
derRichardIOW the driver to make the hardware work12:48
viricah ok12:48
wolfspraulindustry lingo for a tarball (or even zip) with a kernel tree to 'make a board work'12:49
viric:)12:49
wolfsprauloften with large amounts of code in never-upstreamable quality12:49
derRichardyeah. and most bsps are really crappy.12:49
wolfsprauloften with lots of bugs12:49
wolfsprauloften mostly meant so managers can put their engineers under pressure to make things work "but we got the software for it, didn't we?"12:50
derRichardfull with hardcoded addresses, #if 0, //TODO and stuff :D12:50
wolfspraulto be fair to the other side, the time and resource pressure is so intense that better qualities bsps are just impossible, imho12:50
wolfspraulthat would only be possible if the industry changes their innovation and tech-race cycles upside down12:51
wolfspraulwhich is what crazy ideas like Qi are for, but you cannot do that at an existing company that has to meet quarterly targets, or else...12:51
viricclear13:11
viricin such companies, products are even not meant to last long13:12
viricno point in making something that works 100% or that can be fixed easily13:12
derRichardnono. they don't care about software (and linux) it's up to the customer13:12
derRichardeither use the bsp or make your own...13:13
viricthe most priced engineer is the one that can do mediocre products faster13:13
wolfspraulwell I think it's not that easy13:14
viric:)13:14
wolfspraula business cannot take responsibility for everything and everybody, that is simply asking too much13:14
wolfspraulif they can keep their employees paychecks coming and treat their people well, that's a lot!13:15
viricyes13:15
wolfspraulthe industry dynamics are such that high quality bsps are nearly impossible to achieve imho13:15
wolfspraulit's just a starting point13:15
derRichardyep13:15
derRicharda high quality bsp means patches ready for mainline13:17
viricand there use to be volunteers that will improve that bsp :)13:22
derRichardthis is a lot of work13:23
wolfspraulthat's very difficult because of the stream of things, I like the Linaro model13:23
derRichardbasically it's my $DAYJOB13:23
whitequarkwolfspraul: what does Linaro do?13:59
whitequarkhm. they have Ubuntu font on the homepage.14:00
derRichardwolfspraul: http://www.linaro.org/about/14:01
derRichardups, i meant whitequark 14:01
kristianpaulsteve|m: i do :)14:14
kristianpaulsteve|m: tought will be could connect it to a ben nanonote ..14:28
Action: kristianpaul looks at zrafa for the bit-bang usb host implementation14:28
steve|mkristianpaul: that'll be hard, given that you need some 'serious' throughput ;)14:30
kristianpaul;-)14:30
kristianpaulsee, now he will not look at it again ! :)14:31
kristianpaulperhaps one of those MR11U.. plus a nanonote, then a portable and over eng sdr solution :-/14:34
zrafawpwrak: usb project?15:26
zrafawpwrak: if so then no well. I need a big hand to start as I asked several months ago15:27
zrafawpwrak: after somebody can help me with to get 0-1 and 1-0 via mmc maybe I will be albe to continue with software side15:27
zrafawpwrak: I can not do that15:28
zrafawpwrak: sorry, no enough knowledge and hw knowledge to test (like how to use the scope, or how to get a good scope, etc).15:28
wpwrakzrafa: hmm. maybe write a bit of code that bit-bangs the UBB ? then you can watch it with the scope15:30
wpwrakzrafa: you can find code that does such things in ben-blinkenlights15:30
zrafawpwrak: no enough hw knowledge should be here at qi chat children games 15:30
zrafawpwrak: you already said me that around 20 times :)15:30
wpwrakit's simple ;-)15:31
zrafawpwrak: I can not do that :) and I do not how nothing with scope15:31
wpwrakfine. use a voltmeter :)15:31
zrafawpwrak: yes.. I nkow it is simple here at qi hw chat :)15:31
zrafawpwrak: that is why maybe I am not here a lot of time :P15:31
zrafawpwrak: I learnt to turn on/off scope. That is something at leas15:32
zrafat15:32
wpwrakhere is some code that does what you need: http://projects.qi-hardware.com/index.php/p/ben-blinkenlights/source/tree/master/bbl/bbl.c15:32
zrafawpwrak: I modified that code several times15:32
zrafawpwrak: and I saw something via ubb with scope15:32
wpwrakgood ! :)15:32
zrafawpwrak: but I do not know what is next15:32
wpwrakdo you see a stable signal ?15:32
zrafabecause I do not know how to use the scope15:32
wpwrakyes. so you'd use this simple program to play with the scope. until you're more confident with it15:33
zrafaI can do the easy part (via direct I/O ubb without mmc command)=15:33
zrafaand I have seen the 1010101 at scope15:33
zrafabut I can not do the same with mmc command15:33
zrafathe program is not the problem15:33
wpwrakokay, that's a start. so you already do know how to use the scope :)15:34
zrafaI feel like a blind without to know what to touch on scope15:34
zrafabecause I ddid not get the same with mmc command15:34
wpwrakis the 0101 pattern stable on the scope ? or does it jump around ? i.e., is your trigger set properly ? (at least the edge at the trigger point should never move. the others may)15:34
qi-bot[commit] Werner Almesberger: cameo: an attempt at area fill (WIP) (master) http://qi-hw.com/p/cae-tools/2530a1116:19
qi-bot[commit] Werner Almesberger: cameo/test/: test scenario for area fill (master) http://qi-hw.com/p/cae-tools/8c4dfc516:19
qi-bot[commit] Werner Almesberger: b2: BOOM rewrite (WIP) (master) http://qi-hw.com/p/eda-tools/aa2fe3e16:24
whitequarkwow, bitbanging usb host16:56
whitequarkgiven that there is even no working USB 2.0 FOSS softcore...16:56
wpwrakV-USB doesn't count ?16:59
Aylawhitequark: where?17:03
Action: Ayla reads the log17:03
whitequarkwpwrak: V-USB isn't USB host17:08
whitequark... and we're already talked about it like half a year ago :)17:08
zrafawpwrak: the 0101 is stable, but I have seen it just with direct I/O in bbl.c If I try a mmc command I never gets nothing. 17:37
zrafawpwrak: well, no nothing. Something is there. But I have not able to stop the command at some moment to have the required 0101 pattern17:37
zrafawpwrak: and Ihave tried to stop it (the clock for example)17:38
zrafawpwrak: what I can not do is to manage the scope to see something from my mmc commands signals17:38
zrafawpwrak: so I am stuck at the same situation like one year ago at your place when you gaveme some ubb to play :P17:39
zrafawpwrak: sorry for the ignorance about the topic. Simply I gave you the real situation because you asked17:41
zrafa:)17:41
qi-botThe build has FAILED: http://fidelio.qi-hardware.com/~xiangfu/building/Nanonote/Ben/openwrt-xburst.minimal-20120317-1814 17:41
wpwrakzrafa: hmm yes, one problem with your scope is that it's not a storage scope. so you only see the signal flash by briefly18:26
wpwrakzrafa: of course, for a contemporary of Neuquensaurus it's still a pretty impressive device ...18:27
kristianpaulafter rtl-sdr we need a cheap device for the DAC part too :)19:29
whitequarkDocScrutinizer: can you explain how MIMO works?22:17
whitequarkI thought it just used twice the bandwidth, but Wikipedia states that it "enhances spectral efficiency by spreading same transmit power over the antennas to achieve an array gain"22:18
DocScrutinizerwhat's MIMO?22:19
DocScrutinizerantenna technology?22:19
whitequarkyeah22:19
whitequarkI remember you're working on LTE modules and so you may know22:20
DocScrutinizerit's simple: you use different antennae to create paths with different properties between receiver and transmitter22:20
whitequarkhm, what properties?22:20
DocScrutinizerproperties like frequency response etc22:21
whitequarkok. I have a router which claims to be 3x3 MIMO. it has three identical antennas placed with a spacing of ~5cm between each other22:22
DocScrutinizeror you could think of it like the multiple antennae forming an active directional antenna with multiple more or less independents paths between the 2 stations22:22
DocScrutinizerwith an antenna array you can simulate a directional antenna - planar sat antenna is working that way22:23
DocScrutinizerin RADAR such arrays are used instead of rotatinf dishes22:23
whitequarkinteresting22:24
DocScrutinizeryou basically have a signal processor of some kind from TX output to each antenna element22:24
DocScrutinizerwhen all processors are just "wires" you get a directional antenna array that faces right ahead of the plane22:25
whitequarkso, does my router split its whole TX power in three parts and deliver these parts to the antennae in such a way so they effectively direct a "beam" towards a STA?22:25
DocScrutinizerwhen you delay each antenna element some degrees phase from the one left of it, you get a direction to the right22:26
whitequarkbut how does it determine the location of STA? by measuring some properties of the received signal?22:26
DocScrutinizerwhitequark: yes, just not only one beam, but ideally more22:26
whitequarkhow could one make more? splitting antennae in groups?22:27
whitequark*by splitting22:27
DocScrutinizerI guess it analyzes the RX signal to find paths the "waves" used to reach it22:27
DocScrutinizerwith 3 elements I guess you can use 2 paths22:28
DocScrutinizerthough, not sure about that22:28
DocScrutinizernah, probably it's not limited in any way on number of paths, just the separation gets better and better between them with more elements22:28
whitequarkhm. I have some cards that are "normal" (i.e. one antenna and tx/rx), and some other ones which are presumably 2x2 MIMO22:29
DocScrutinizeryep, some LTE classes specify 2*2 MIMO as mandatory to achieve the bandwidth22:29
whitequarkyes, bandwidth increases substantially when I use the MIMO cards. at least I think it increases because I took some measurements and they were better with MIMO ones22:30
whitequarkmay very well be e.g. poor RF frontend on the non-MIMO card or some weird incompatibility or whatever22:30
DocScrutinizerit's the expected effect of MIMO22:31
DocScrutinizeryou're adding info to the media channel22:31
whitequarkoh. this is the part I don't understand. how could I add more info by using more antennas if I transmit my data over the same chunk of spectrum?22:32
DocScrutinizerI've never completely wrapped my head around it, but it's kinda like old 56k POTS modems used that adaptive phase to analyze the landline properties, then agreed on a set of symbols and thus transmitted more than what you originally thought was possible bandwidth with 4800Hz signal22:33
DocScrutinizerthe symbol/signal arriving at RX is different for TX using antenna element A than wehn TX uses element B22:34
DocScrutinizerRX distinguishes them with the different signals on its own antenna array, though it's always same freq22:35
whitequarkI think that 56k modems just checked if the line can actually handle bandwidth they required and if yes, used the different modulation parameters22:35
whitequarkbut here, medium is the same, isn't it?22:35
DocScrutinizerthink about somebody shouting info words to you. He may shout "zero" and "one" and you hear the difference. He also may shout "zero" in your direction and also shout "zero" in a direction that reaches you via some echo. You still can distinguish two distinct info bits though he only shouted "zero, zero, zero, zero"22:38
DocScrutinizeras you hear the difference between him shouting in your direction and him shouting direction echoing wall22:39
DocScrutinizerI'm not sure I'm that good in making up analogies and examples. Hope you were able to follow 22:39
whitequarkhm22:42
whitequarkso MIMO requires support from both the AP and STA (in case of the WiFi)22:44
DocScrutinizernot necessarily, as the different pathes have different properties, which help distinguishing the direction the shouter shouted, even when you listen with a mono microphone22:45
DocScrutinizerbut of course MIMO setup on both ends help a lot22:45
DocScrutinizerin some weird way you can even reverse the whole setup and TX uses only one antenna but signals that match the path properties22:46
whitequarkso, do you just randomly place antennas in the space (well, because the placement of router itself is random) and hope that you could distinguish between these signals because they happen to travel different paths?22:46
DocScrutinizerwhile RX uses MIMO to distinguish the paths used22:47
DocScrutinizeryes, basically that's what's happening22:47
whitequarkit's weird that this actually works works22:48
DocScrutinizeryeah, DSP is a fun topic22:49
DocScrutinizers/D//22:49
infobotDocScrutinizer meant: yeah, SP is a fun topic22:49
DocScrutinizerfrequently beyond my mind22:50
DocScrutinizerI can understand the theory, but practice is all obscure to me22:50
DocScrutinizerpractice as in "algo used to do MIMO"22:51
DocScrutinizerI'm probably too less of a mathematician for that22:51
DocScrutinizerI always need to be able to figure things, juggling with 7-dimensional stuff etc is beyond my mind22:52
DocScrutinizerthe dudes developing those algos are pure theoretics, they don't figure what their formulae mean in RL, they just solve them, implement them and it magically works22:54
whitequarkseven dimensions?! O_o22:54
whitequarkas per the formulaes and RL, yes, I have the same feeling. it's pure magic22:55
DocScrutinizerfor example they might just run thru all possible symbols (= antenna element DSP settings * TX signal codings) and see what they can distinguish on other end, then agree on that set22:56
DocScrutinizeror they send some white noise, consider that as a mix of all possible symbols at same time, and on RX side see how they can dissect it into a proper symbol set22:57
DocScrutinizerthen agree on that set with TX side22:58
DocScrutinizerhonestly I have no real clue22:58
whitequarksigh. thanks anyway23:00
DocScrutinizerhttp://en.wikipedia.org/wiki/Mimo#Principle23:10
DocScrutinizerafter all my simplified examples above you actually might guess what all the terms in this wiki article mean23:16
DocScrutinizeresp in http://en.wikipedia.org/wiki/Mimo#Functions_of_MIMO23:16
DocScrutinizerLOL @ http://en.wikipedia.org/wiki/Mimo#Mathematical_description23:19
DocScrutinizerhowever that's exactly how this stuff is developed and put into silicon23:20
wpwrak(math) kinda obvious, eh ? (-:C23:20
whitequark(math) *emergency brain shutdown*23:26
wpwrakwhitequark: you're russian. you're supposed to solve such equations in your head :)23:33
rohDocScrutinizer: actually i wonder why they do not just write 'poor mans phased array'23:49
rohwould be much easier to understand23:50
DocScrutinizerindeed23:50
rohwell.. its something in between. not really phased array, but more to the diversity direction23:52
rohbbl -> off to the lab23:54
--- Mon Mar 19 201200:00

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