#qi-hardware IRC log for Tuesday, 2012-03-13

kristianpaulwpwrak: the case fits on a atben?00:09
kristianpaulor are you getting ready to free memory sticks readers? ;-)00:10
kristianpaulbut looks nice00:10
whitequarkDocScrutinizer: could you hint me a case where a white noise generator is desirable?01:04
whitequarkmy intiution says there are enough valid ones to put a hw lfsr in a uC DAC, but I couldn't think of any01:04
DocScrutinizer51adjusting audio equipment01:05
whitequarkah. stupid me, ST has listed applications in the appnote01:06
whitequark"electronic music, <...> testing frequency response, sound masking with a Tinnitus masker01:06
whitequarkand, er, "oversampling with white noise"?01:07
whitequarkthere's an AN link, but it is defunct :/01:07
DocScrutinizer51testing freq response was exatly what I meant01:07
whitequarkDocScrutinizer: I don't quite get how you could ever _increase_ SNR by _adding white noise_01:09
DocScrutinizer51if you add white noise to a signal, then A/D convert it severla times, you can get higer accuracy than your ADconverter has digits/bits01:09
whitequarkwell, that's what it means. but why does it work that way?01:09
whitequarkwon't ADC give you better precision without noise?01:09
whitequarkhm. like if the value is between two values, then by adding noise you "diffuse" it between the values and some measurements will show one and other ones another, and thus the average would be better?01:10
whitequark*two ADC presets, or how are they called01:10
DocScrutinizer51it's basically dithering01:11
DocScrutinizer51if you get 90 probes N and 10 N+1, then your atual value is N+0.101:12
whitequarkah, I got it. by adding white noise you increase the perceived resolution of ADC near your desired value, given that the value doesn't change more than zero "raw" ADC bits during the measurement01:12
whitequarki.e. you could get the same by offseting the ADC with a DAC, but a white noise generator is way cheaper01:12
whitequarkwhat a clever idea01:13
whitequark... wait, they generate white noise with a DAC01:13
whitequarkand by not using a fixed sawtooth signal you average out any irregularities in the measurement01:14
whitequarkseriously, this is incredibly clever.01:14
whitequarkDocScrutinizer: am I right that for uninterrupted audio play with DMA I generally need two buffers, and when one empties I switch to another and fill the empty one?01:18
DocScrutinizer51,usually you do it that way01:19
DocScrutinizer51oftren with more than 201:19
whitequark8k of RAM01:20
whitequarkso, I think 2 are enough01:20
DocScrutinizer51depends on your source process' worst case latency01:20
DocScrutinizer51but I have to go back to sleep now, sorry01:21
whitequarkok, thanks a lot01:21
DocScrutinizer51YW :)01:21
DocScrutinizer51whitequark: check manpage of sox, I think there's also been a usecase of white noise added to improve sound (anti-aliasing)01:28
DocScrutinizer51or was it quantisation noise ?01:30
wpwrakkristianpaul: ah no, that's not for atben. i think atben would be best handled by some thin silicone coating. something as hydrophile as wood would be the last thing i'd consider for 2.4 GHz technology :) (alright, second to last. metal would be worse :)01:39
whitequarkDocScrutinizer51: insomnia? :)01:49
whitequarkbtw you're right, it's to deter quantisation noise. basically the same thing as I understand it01:50
DocScrutinizer51indeed, each time the phone yells with highlight01:52
whitequarkwpwrak: I tried to put a logo (er, Aperture Science logo) on the case and utterly failed01:56
whitequarkcan you guess how? :)01:56
wpwrakon what case ?01:56
whitequarkof my device01:56
whitequarkwhich I try to make in a CAD01:56
whitequarkand which will be laser cut01:57
wpwrakhmm. many possibilities of failure :)01:57
wpwrakah, laser. that eliminates weak fixtures :)01:57
wpwraklaser cutting better than planned ? :)01:57
whitequarknah, not even a single run (thankfully)01:58
whitequarkwell, you know, there's some letters like A and R01:58
whitequarkand P01:58
wpwraki actually wonder what the tables of laser cutters are made of01:58
whitequarkwhere you have a central element which would certainly fall out01:58
wpwrakseveral decades ago, people made forms for spray painting01:58
wpwrakthey solved your problem :)01:59
whitequarkyes. I seen them. but the letters with thin guides aren't so visually attractive as letters without them01:59
whitequarkapart from that, laser tends to overheat thin parts afaik01:59
wpwrakah, the hard choice between a flawed tangible result and an unattainable ideal :)02:00
whitequarkso, er, I think I'll inscribe it, again with laser. every fab I seen offers both of the services. shouldn't be hard to convince them02:00
whitequarkand it won't hurt if it'll get moved by a few mm away02:00
wpwrakyes, engraving is possible02:00
wpwrakwe even have it on m1 :)02:01
whitequarkyeah, I feel that my case will be a straight m1 case ripoff02:01
whitequarkit even looks quite the same02:01
whitequarkafter a few iterations02:01
whitequark(the first one would just fall apart.)02:01
whitequarkwpwrak: maybe you have any idea what format should I store 8K, 8-bit, 1-channel audio data?02:04
whitequarks,data?,data in?,02:04
whitequarkima adpcm is bigger than raw u802:04
whitequarkah, nevermind, it is not. I specified wrong conversion settings02:06
wpwrakdepends on many factors. like space constraints, what you do with it, processing capabilities, and so on 02:06
wpwrakin general, the simpler, the better :) so WAV/u8 are great.02:07
whitequarknot fitting into the flash02:08
whitequarkand SPI flashes over 128k are somewhat more expensive/hard to get than I expected02:08
whitequarkand I _really_ don't want to put an SD card in because of 160k of audio data02:08
wpwraklower the sample rate ? ;-)02:09
whitequarkunder 8k? this degrades the quality substantially02:11
whitequarksimilarly I have no benefit of using >8k because: a) it's voice b) it's transmitted via gsm02:11
whitequarkwpwrak: ADPCM decoder is like seriously huge02:16
whitequarkwith 118 bytes of code and 176 bytes of LUT02:16
whitequarkwpwrak: also, have you considered using clang for your projects?02:22
whitequarkfor me it gives a 10% code size decrease over gcc, both being untweaked02:23
whitequarkgcc is with -Os and clang is with -Os -flto02:23
qi-bot[commit] Xiangfu: xburst: nanonote: fix update config-3.2 on sound driver (master) http://qi-hw.com/p/openwrt-xburst/1723a7c09:00
qi-botThe build has FAILED: http://fidelio.qi-hardware.com/~xiangfu/building/Nanonote/Ben/openwrt-xburst.minimal-20120313-1029 09:34
Action: xiangfu start the xburst minimal build with CONFIG_ALL=y. we will find out later how many package failed to build under gcc 4.6 and uClibc 0.9.3309:38
xiangfuafter about 5 days I finally manually build a image : http://fidelio.qi-hardware.com/~xiangfu/build-nanonote/openwrt-xburst.full_system-20120313-M/09:38
xiangfurebase with recently opewnrt. update kernel to v3.2.109:39
whitequarkthis board certainly has enough decoupling10:18
qi-botThe build was successful: http://fidelio.qi-hardware.com/~xiangfu/build-nanonote/openwrt-xburst.minimal-20120313-1035 10:49
qi-bot[commit] Xiangfu: nanonote-files: config.minimal: add CONFIG_ALL for build script file (master) http://qi-hw.com/p/openwrt-packages/b1bf00211:13
qi-bot[commit] Xiangfu: nanonote-files: config.full_system add kmod-lib-crc-ccitt (master) http://qi-hw.com/p/openwrt-packages/9cee28311:45
qi-botThe build was successful: http://fidelio.qi-hardware.com/~xiangfu/build-nanonote/openwrt-xburst.minimal-20120313-1159 12:12
whitequarkfinally, tuxbrain's pkg has arrived12:27
wolfspraulwhitequark: good!12:35
qi-botThe build has FAILED: http://fidelio.qi-hardware.com/~xiangfu/building/Nanonote/Ben/openwrt-xburst.minimal-20120313-1636 16:36
DocScrutinizerwpwrak: HAH, your licky day with the characteristics of those particular LEDs you use. Some may easily start shining at < 1/3 nominal U(forward)18:10
DocScrutinizerlucky even18:11
DocScrutinizeresp when mixing e.g red and green or (God forvid) blue18:11
wpwrakyeah, with blue in the mix, abandon all hope :-)18:12
DocScrutinizerthis bot is way too permissive18:12
wpwrak(bot) why ? it worked18:12
DocScrutinizeryeah, though it was meant not to do18:13
LunaVoraxHi everyone!21:48
--- Wed Mar 14 201200:00

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