#qi-hardware IRC log for Friday, 2012-05-04

wolfspraulnice megahertz myth cartoon http://geekculture.net/joyoftech/joyarchives/243.html00:59
wolfspraulwe just wondered about the meaning of milkymist performance over in the #milkymist channel :-)00:59
wpwrakcute :)01:02
wpwrakthe current one is also nice ;-)01:02
wolfspraulroh: I will try to use a tp-link mr11u a bit more01:58
rohwhatfor? packaging to a mm1?01:58
wolfspraulroh: I will try to use a mr11u a bit more01:58
wolfspraulright now I use my nano as music player mostly01:58
wolfspraulright now I use my ben as music player mostly01:58
wolfspraulsomething wrong with my client, urgh01:59
wolfspraulso01:59
wolfspraulso I use my ben as music player mostly01:59
wolfspraulthough I want to use other apps more, slow in actually doing it01:59
wolfspraulwith the mr11u, don't know yet. it's just cheap and maybe I have some ideas for apps/use cases with it. I feel it's like a ben without keyboard and screen.02:00
wolfsprauldo you know how arduino is doing lately?02:01
wolfspraulI am only following the project from the distance, reading news sometimes02:01
rohdunno. i am just using it an see people using it.02:02
rohi think due to the openness there is no clean 'community' or so. quite cluttered02:02
wolfspraulwhat do you use them for?02:04
rohwhenever i need a small microcontroller02:04
rohmost the time i do it as a pde, so others can more easy replicate it. but i havent bought a real board yet.02:04
rohmostly i dont even programm their bootloader. just use an avr from the box and flash it via isp in my custom hardware (which often is just some io-driver or so)02:05
rohnot much documented stuff02:05
wolfspraulwow easily 40 books :-) http://en.wikipedia.org/wiki/Arduino02:06
rohhttps://trac.raumfahrtagentur.org/tags?q='arduino' https://trac.raumfahrtagentur.org/tags?q='AVR'02:07
rohi got some more, but they never got documented02:07
rohone-wire serial interface which reads out ds18b20 temperature sensors and reports to rs232 which a python tool makes into rrd data02:08
rohhttps://trac.raumfahrtagentur.org/wiki/Projekte/EmcArduino thats how most stuff i do 'arduino-esque' end up.02:09
rohsome box on a wall doing something02:09
rohneed to build a proper doorbell soon. our second rf doorbell is showing flukes with rain02:10
rohi think arduino basically replaced all the '74xxx and cd4xxx' series parts in many of our electronic labs.02:11
rohinstead of custom complex logic, and a pcb people shoot it with a few lines of code. being done faster is the gain. even if the chips are more expensive.02:12
wolfsprauldon't you think in a year or two you use cheap routers for that? with usb you can then interface to serial or other i/o, no?02:14
rohwolfspraul: nope. too expensive, eats too much power. too big02:14
rohi use routers too. no question. but for different stuff02:14
wolfspraulthe 703n uses something like 180ma including wifi, 100ma without02:14
rohour weatherstation is connected to the usb of one of those. running custom binaries to make sense of that02:15
wolfspraulthe routers have strong momentum and I can see continued investment into that category02:15
wolfspraulso they will become smaller, cheaper, more powerful (thouh smaller and cheaper is hard, not sure what you are comparing with when you say big/power hungry/expensive)02:15
rohwolfspraul: sure. but thats another usecase scale. avr is 'too small or simple to use a linux os machine'02:16
wolfspraulsure, but the router can replace the avr02:16
rohnot always.02:16
wolfsprauland with openwrt the sw is much more flexible and faster/easier to customize02:17
rohas i said. its smaller and uses some scalars less power02:17
wolfspraulthere is a lot of existing solutions around avr, no doubt02:17
wolfspraulhow much?02:17
rohan avr can run for month on battery. no multihundred mhz cpu does that02:17
wolfspraultrue02:17
rohsmallest avrs run on picoampere i think02:17
wolfspraulbut you don't think investment into the router category is, what, several 'scalars' more than into avr?02:18
rohi have seen some accesspoints with avrs in there in addition to the arm02:18
rohthe avr does reset watchdog work ;)02:18
wolfspraulthey will continue to bring power down, make the chip and electrical design more scalable02:18
wolfspraulyes, sure. no doubt.02:18
rohmaking sure the arm gets reset properly and it can do the high-reliability its made for02:18
wolfspraullow power, for everybody, has ways to go down02:18
rohi think the middle between the routers and the arduinos is more under fire atm02:19
wolfspraulI am not saying you should replace anything. just thinking about your "too expensive/big/power hungry" comment02:19
rohsee the lpc arm9 /arm m0 and m3 cores getting cheaper all the time02:19
wolfspraulmaybe you have to wrap your mind around how small cheap and low-power the latest routers are :-)02:19
rohoften they are simply too big02:19
rohatleast for what i do. and they take time to boot.02:20
rohnot using a linux kernel when i dont need it has also features ;)02:20
wpwrakroh: so your "arduino" projects are actually just an AVR, nothing arduino :)02:23
rohyep. but if possible i release it as a .pde file and use their libs02:23
wpwrakwolfspraul: m1 marketing could use that: "contains 72 MHz Arduino softcore" ;) that should impress the hell out of them :)02:24
wolfspraulsure02:24
wolfspraulsorry to always repeat the same stuff, but I like to get the facts out02:24
rohi got another project around, which is a temperature sensor and flow meter for the lasercutter. its not completed yet, but is a pde and a modified arduino lib02:24
wolfspraulthe 703n I have right here measures at 5.7x5.7x1.8 cm02:24
wolfspraulwith case02:24
rohi basically use arduino as the 'exchange standard for stuff to do with small avrs'02:24
wolfspraul100ma without wifi, 180ma with02:24
wolfspraulwhat, other than inertia of existing knowledge and solutions, would make you not use them more? I think you will slowly use them more02:25
wolfsprauland I think they will continue to develop/improve02:25
rohso people with less clue about electronics can buy a kit, install the software, add a few buttons and a display and start using02:25
wolfspraulI say 'more'02:25
wolfsprauland of course the AVR has lots going for them, a totally different class of low-power, microkernel, etc.02:25
wolfspraulno kernel02:25
wolfspraulI know that02:25
rohwolfspraul: writing code which runs on linux even wiggling a wire is more complicated on the wrt than the avr. simple as that.02:26
wolfspraulthe stronger investment momentum is with the routers though, I'm sure02:26
rohpeople who use arduino usually have very limited knowledge about electronics. much less than any of us02:26
wolfspraulyeah02:26
rohthey wire up stuff, often witout soldering02:26
rohits mostly likelythe best c beginners course of the world ;)02:27
wolfspraulthat's why I think openwrt is important02:27
wolfspraulthe 703n is just a board for me, then you flash openwrt and that makes the whole thing A LOT more accessible02:27
rohno questions. but its like 'the second stage' of learning and hacking embedded electronics.02:28
rohmuch more power (computing), less accessible (needs soldering for gpios) much more networking options.02:29
rohi think thats what carambola tried to target (having more pins accessible)02:29
wolfspraulweight [703n], including case I measure 35g02:29
wolfspraullet's see. my slightly funny formula of 25 USD / kg consumer electronics...02:30
wolfspraulthat means the 703n can go as low as 87.5 US cents!02:31
wolfspraul:-)02:31
rohinterresting formula02:35
rohdoes it have something like a gain table by product category?02:35
rohor are smartphones rated like atx mainboards included cooling?02:37
wolfspraulno all the same02:50
wolfspraulthe only problem is that some vendors like say Apple don't sell their produce by the kg02:51
wolfspraulyou can't call up Apple to buy 1 kg of iphones for 25 USD + shipping02:51
wolfspraulbut that's a minor problem, other than that the formula is solid02:52
wolfsprauland btw, what do I read in Bunnie's excellent "the end of chumby" interview yesterday?02:52
wolfspraulhttp://blog.makezine.com/2012/04/30/makes-exclusive-interview-with-andrew-bunnie-huang-the-end-of-chumby-new-adventures/02:52
wolfspraul" merchants tend to look at your product not as a whole, but as so many grams of plastic and so many wires, which if you multiply it out by the commodity price of the raw materials sets their expectation for how much they will pay for it to be on their shelf."02:53
wolfspraulhe speaks from experience, having been part of a device startup that ended up burning 29 million USD before going out in flames02:53
wolfspraulI think the formula of 25 USD / kg consumer electronic is not too bad to keep in the back of ones mind02:54
wolfspraulif you can sell for more than that, there must be a reason in the software side, marketing, ease of use, some 'platform' or tie-in or network effect. whatever it is. so the iphone is probably more like several thousand USD / kg, or more since Apple probably looks at this from a recurring revenues angle.02:55
wolfspraulthey get percentages of data revenue, app store percentages, itunes percentages, etc. etc.02:55
wolfspraulmaybe more like 10,000 USD / kg :-)02:56
wolfspraulI feel I'm making my hacker's master thesis here03:10
wolfspraulclimbing around on a tiny chinese balcony03:10
wolfsprauldirty like hell, trying to hookup something to an old & rusty aircon electrical system03:11
wolfsprauland I see the other 'pros' on neighboring houses equally fudging around on their stuff03:11
wolfspraulat least the sun is shining and blue skies03:11
wolfspraulthere are estimates of over 1 million (!) worker deaths pear year in Asia03:11
wolfspraulnobody counts03:12
wolfspraulback to the balcony...03:12
wolfspraulI should ('should' use some mountain-climbing gear in case the entire balcony breaks off, foreign made of course. but what to attach it to? nah...)03:12
wolfspraulsecond floor only, I shouldn't complain. werner probably is doing fun stuff up on his 14th floor or whatever it is :-)03:14
wpwrakoffice is on the 15th :)03:22
kristianpaulgmenu2x really does underclock xburst clock?03:27
kristianpaulcause i been running my nanonote at 80Mhz theorically set by gmenu2x last days..03:28
kristianpaultought alex4 could get a but jumpy but still work :)03:28
kristianpauls/but/bit03:36
Aylahi guys08:13
Aylado somebody know how I can "boost" a thread from inside an IRQ, to be sure that it will be executed right after the IRQ handler ends?08:13
wpwrakAyla: what exactly do you mean by "thread" ? a user-space thread ?11:24
Aylawpwrak, yes11:24
wpwrakyou could give it real-time priority. that would make it run as soon as possible11:25
mthit would have to be a temporary boost, not a permanent one11:26
mththe thread called an ioctl to wait for vsync and then has to update the vertical panning setting before the next frame starts11:26
wpwrakonce the task is done. the thread could drop the priority. or simply block, waiting for the next event11:26
mthbut the vblank is only a few milliseconds, so having a different process scheduled would cause the waiting one to miss its time slot11:26
mthah yes, we could handle this in SDL rather than in the kernel11:27
Aylaby setting the real-time bit on the thread before waiting for vsync, and removing it after the vertical panning?11:31
Ayla(or just a high-priority "nice" number)11:33
wpwrakwhy not have a dedicated thread that only does that ? then you don't even need to change the priority11:34
rohin the matrox fbdev driver there is an ioctl to do that12:02
rohyou can call it and then the userspace thread is getting suspended, and woken up when the retrace came by12:02
rohmaybe you can replicate that mechanics by adding that ioctl to the jz fbdev12:03
Aylathanks, I'll take a look12:05
rohlooks dirty on the first view. but its really the simplest way to have fast kernel to userspace response12:05
mthroh: we have added the ioctl, but if the userspace thread doesn't get scheduled in time, the vblank will be over before it gets a chance to change the panning12:12
mthassuming FBIO_WAITFORVSYNC is the ioctl you're referring to12:13
rohi think so12:16
rohnot every driver has it i think12:16
rohcan't you set that one thread which does nothing but blit and wait 'realtime' ?12:16
mthwe don't control the applications, but most applications go through SDL so we could do it there12:24
mthit would be simpler in code to take and drop realtime privs around these two ioctl calls (vsync and pan); is there really a need for a separate thread?12:25
rohi think changing scheduling parameters constantly will not make it better12:28
rohextra thread is easier.. also you do not want to have everything block 60times a sec12:28
mthroh: blocking everything 60 times per second is pretty much unavoidable when rendering to the back buffer12:46
mthand rendering to a buffer outside of the framebuffer would require an extra copy step, which is an overhead we don't want12:46
AylaI wouldn't mind :)12:47
mthin any case, pretty much every game and emulator syncs to 60 Hz anyway, so it might as well be done via vsync12:47
mthAyla: then implement SWSURFACE | DOUBLEBUF in SDL ;)12:48
Aylathe SDL app would still have to wait every 1/60s12:49
mthnot if you make SDL_Flip() do the copy and do the actual flip on a background thread12:49
mthwhich is how SWSURFACE | DOUBLEBUF would work12:50
Aylathat's... crude12:50
mthit's the only way it makes sense12:51
AylaI think that for the moment, it doesn't really matter12:51
rohreal pros do tripple buffer ;)12:51
AylaI mean, I don't care if the apps have to wait for vsync, as long as they render perfectly12:52
mthideally we'd do a triple buffer where the buffers are exchanged between kernel and user space, with each buffer belonging only either kernel or userspace at any one time12:53
mthafaik v4l2 supports that nowadays, but the framebuffer interface does not12:53
mthusing vpan for page flipping is not a good interface, but it's what we inherited from old hardware12:54
mthwell, even with old hardware the kernel could hide the panning and just pretend they are separate buffers12:55
qi-botThe build was successful: http://fidelio.qi-hardware.com/~xiangfu/build-nanonote/openwrt-xburst.full_system-20120503-1301 19:03
--- Sat May 5 201200:00

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