#qi-hardware IRC log for Tuesday, 2016-03-01

qi-bot[commit] Werner Almesberger: dsv/dsv (flush): sanitize name of local data sheet copy (master) http://qi-hw.com/p/eda-tools/006940d01:46
kyakjust discovered the NO_ACT option in irssi's ignore settings. How did i live without it?10:15
kyakfor example, it can be set so that the [commit] messages from qi-bot are not ignored, but simply don't mark the channel as "Act:"10:16
kyakthis way, i don't have to switch to the channel unless somebody actually said something :)10:16
larscso basically never10:18
kyakno, i just had to switch because of your message! :)10:19
kyakbut basically, yes -\10:20
wpwrakhmm, i could bemoan the injustice that all those well-paid quantum mechanics still haven't figured out how to make a decent ideal FET. e.g. with Rds(on) = 0 Ohm, very low Vgs(th), infinite Vgs(max) and Id, and of course no leakage whatsoever18:19
DocScrutinizer51well, they are pretty close18:31
DocScrutinizer51Rds_on of 5mOhm id alresdy reality18:32
DocScrutinizer51is*18:32
DocScrutinizer51ugh18:33
DocScrutinizer51Rds_on of 5mOhm is alresdy reality18:34
DocScrutinizer51low quiescent and creep currents are also normal, and voltages up to 50 are standard, more available18:36
DocScrutinizer51silego has some nice stuff with integrated charge pump18:37
rohbe happy that there is some resistance left18:45
rohimagine it would be 0.. and your wires too... that would be nasty and one would have to invent something to limit powerflow ;)18:45
DocScrutinizer05~+chaninfo18:50
infobot125/125 channels, 4460 users, 3424 unique: #debian/1554, #kde/446, #gsoc/344, #asterisk/184, #maemo/169, #wowuidev/130, #oe/128, #neo900/89, #wowace/89, #utah/81, #cubieboard/71, #harmattan/58, #wowhead/55, #meego/50, #qi-hardware/49, #openmoko/48, #bzflag/46, #openmoko-cdevel/42, #asterisk-dev/41, #arm-netbook/41, #webos-internals/41, #curseforge/40, #maemo-ssu/40, #elinux/32, #uphpu/27, #slug/24, #brlcad/24, #debianppc/21, #sc2mapster/20, ...18:50
DocScrutinizer05~+chanset purl18:50
infobotShowing purl values on all channels...18:50
infobot  purl = NOT-SET(162): # ##bspress ##bz-inc ##debian-br ##ducleague ##essy ##guleague ##icf ##kierra ##lds ##leaguesunited ##ols ##openjtag ##pxe ##stouteriks ##t42 #aegis #android #arl #arm-netbook #asterisk #asterisk-bugs #asterisk-dev #asterisk-doc #asterisk-scf #asterisk-scf-dev #botpark #brits #brlcad #buglabs #byumug #bz-inc #bzflag #bzflag-chat #bzleague #bzmods #casualti #catroid #crosstool-ng #cubieboard #curseforge #cyrannus #dbgc #debian ...18:50
infobotEnd of list.18:50
DocScrutinizer05~+chanset ##bz-inc18:51
infobotchan: ##bz-inc (see _default also)18:51
infobot _time_added => 1171558038, autojoin => purl18:51
DocScrutinizer05god! purl_18:51
wpwrakVgs often tends to be pretty low. e.g., i see a lot of FETs (mainly from vishay) that only tolerate 5 V18:51
DocScrutinizer05Vgs is not that relevant18:52
wpwrakit is if you connect this to VBUS ;-)18:52
DocScrutinizer05ohwell18:52
DocScrutinizer05then you need a p-fet instead a n-fet (or vice versa)18:52
DocScrutinizer05so you can connect source source to VBUS18:54
wpwrakwell, that could get another volt or so, but adds operational constraints to the equation. better to pick a FET with enough headroom18:54
DocScrutinizer05on gate you do VBus || Vbus - 2V then18:54
wpwrakit's for suppressing the battery when USB is present, and for making VBUS compatible with logic levels for detection18:55
DocScrutinizer05check out the silego greenFET stuff, they have pretty nice chips18:55
wpwrakalas, the voltage ranges are such that i can't just tweak things with resistors18:55
DocScrutinizer05MOQ 10, iirc18:57
DocScrutinizer05< 100ct18:57
wpwrakmore like MDQ 100. but way too greedy. as soon as you need a charge pump, you lose19:09
wpwrak(just checked the silego parts. alas, nothing that sticks out as being much better than the rest of the switches i've looked at.)19:10
DocScrutinizer05hmm :-/19:11
wpwrakwell, just a question of finding the right FET ... and then two more, for 2nd and 3rd source, just in case19:11
DocScrutinizer05isn't that chargepump only drawing power when you have the FET open anyway?19:12
DocScrutinizer05oooh that's your problem, I see :-)19:12
DocScrutinizer05you'd need a chip that activates chargepump to go into switch-off state19:12
DocScrutinizer05you have no voltage regulation, right? How about an ideal diode in battery power?19:14
wpwrak(pump) yup :) in switch-off, i have all the power i want :)19:14
DocScrutinizer05yet another spider, grrrrrrr19:14
Action: DocScrutinizer05 fetches the glass from freezer19:15
DocScrutinizer0530s and they are hybernating, those critters. HEHE19:16
DocScrutinizer05pretty convenient to throw then outa the glas when they don't move19:17
wpwrakthis is the circuit (WIP, ignore the component specs or part values. only the overall design goals make sense): http://downloads.qi-hardware.com/people/werner/anelok/tmp/power1-Power1.pdf19:17
wpwrakQ1 is for battery reveral19:18
wpwrakQ2 is for cutting the battery when USB is on19:19
wpwrakQ3 is for bringing the VBUS voltage to logic level19:19
DocScrutinizer05sooo, what for cut battery with Q2 at all?19:20
wpwrakto prevent U1 from thinking it should top off 3.3V by a few more mV, and suck the battery dry19:21
wpwrakalas, the USB regulator has a fairly wide output range, so it may very well end up below U1's regulation threshold19:21
wpwrakalso, reverse-charging may be an issue19:22
DocScrutinizer05I don't get ot19:22
DocScrutinizer05where's VBus to POWER?19:23
wpwrakah wait, that's why i should connect Q1.gate to USB_PRESENT. i know i had that before for a reason :)19:23
wpwrakthat's done by the LDO in one of the MCUs19:23
DocScrutinizer05Rds(on)<=100mR should be Rds(on)<=10mR19:24
DocScrutinizer05maybe 2019:24
wpwrakwith low Vgs(th) ? :)19:25
DocScrutinizer05dunno19:25
wpwrak100 mOhm should be sufficient. worst-case, we lose 100 mV19:25
DocScrutinizer05per FET, yes19:25
DocScrutinizer05130mV19:26
wpwrakah, don't look at these parameters19:26
wpwrakonly at the block above19:26
wpwrakit's 200 mOhm in total, for Q1+Q2+L119:26
wpwrak(well, plus Rds(on) of the FET in U1. lemme see how much that is ...)19:26
DocScrutinizer05ok 500mA @ 200mR is 100mV aka 10% of 1V19:27
DocScrutinizer05sounds good enough19:28
DocScrutinizer05I still don't get why you switch off a battery when you have USB connected19:28
wpwrakhmm, the boost converter is actually a bit on the weak side. need to revisit that.19:28
DocScrutinizer05when [POWERED] grets - say - 5V from USB VBus, you have Q1 anyway. Don't need anything more19:29
wpwrakif i don't switch it off, it will still feed the boost converter. if the system voltage is below the boost converter's threshold, it will continue topping it up19:30
DocScrutinizer05ooh19:30
DocScrutinizer05I see19:30
DocScrutinizer05heck, you got an EN input on the boost converter ;-D19:31
wpwrakyes, with the wrong polarity :(19:31
DocScrutinizer05so what? :-)19:31
DocScrutinizer05wb _whitelogger19:31
wpwrakwell, could save some mOhm by putting in an inverter19:32
DocScrutinizer05yep, exactly19:32
DocScrutinizer05or even control the EN by MCU GPIO19:32
DocScrutinizer05if you got a spare one19:33
wpwraki'd rather not have the MCU control its own power ;-)19:33
DocScrutinizer05you gotta detect USB VBus anyway, somehow19:33
DocScrutinizer05how do you do that?19:33
wpwraki only have a valid USB_nSENSE if the MCU is up and has enabled a pull-up19:33
DocScrutinizer05well, then connect the EN in a way so it's active when MCU is down19:34
wpwraktricky. what if the MCU gets confused while ramping up or down ?19:35
DocScrutinizer05gets confused?19:36
DocScrutinizer05btw we had same power control in that wikireader thing :-)19:37
wpwrakglitches, etc.19:37
DocScrutinizer05add a capacitor19:37
wpwrakyeah, in GTA01, too. and it produced very interesting effects ;-)19:37
DocScrutinizer05in wikireader it worked great19:37
wpwrakluck :)19:37
DocScrutinizer05nah, JR-design19:37
DocScrutinizer05;-)19:38
DocScrutinizer05know your CPU, add deglitching as needed, have a mech switch to bridge all the electronict to power up (MCU will be stable before you release that button anyway)19:39
wpwraknaw, let's keep things simple19:40
DocScrutinizer05how simple?19:40
DocScrutinizer05suspend mode for CPU?19:40
DocScrutinizer05there's hardly anything simpler than a pushbutton with a CPU GPIO controlled parallel FET19:41
DocScrutinizer05and you can expect <1uA quescent current, for sure19:41
DocScrutinizer05possibly rather in the low nA range19:42
wpwrakadding mechanical components is messy as far as i'm concerned19:42
wpwrakwell, electromechanical19:43
DocScrutinizer05pushbutton switch from EN to VBAT, capacitor on EN to GND, resistor from EN to GPIO. Done19:43
DocScrutinizer05as long as you keep the pushbutton pressed, no worries about any glitches whatsoever19:44
wpwraknaw, let's design it such that it works without such patches19:44
DocScrutinizer05hmmm, when you hate that little hole for the switch button, how about using sth leete like e.g a spring+mass based g-meter - you whirl the dongle to switch on :-)19:46
DocScrutinizer05(I.E. >2g for long enough)19:46
wpwrakbtw, you'll probably like the way i provide standby power: with silo caps next to the MCU, and an MCU-controlled FET before them, to isolate the MCU from the system voltage. power-up is still assured, irrespective of what the CPU tells the FET, through the body diode :)19:46
wpwrak(adding junk) anelok is a cost-conscious project :)19:47
DocScrutinizer05o.O nifty19:47
DocScrutinizer05sure, that's why I suggest to eliminate Q219:47
DocScrutinizer05you prolly can eliminate a lot more of cruft when you switch complete power via EN19:48
wpwrakwould be great if i can, yes. problem is a) polarity and b) possible voltage domain.19:48
DocScrutinizer05please elaborate, I'm thick19:48
wpwraknaw, i need Q1 in any case. especially since most boost converters don't block reverse current19:49
DocScrutinizer05I need a complete schematics19:49
DocScrutinizer05(don't block reverse) good point19:50
wpwrakyeah, update is still WIP. changing a bunch of things. and also drawing a nicer power tree19:50
DocScrutinizer05oh such fun to do a 20min real EE every 6 months19:50
DocScrutinizer05wish I could forget all the other mess with UG and do some for my device19:51
wpwrakhehe ;-)19:51
DocScrutinizer05how do you feed USB VBus?19:52
DocScrutinizer05directly to [powered]?19:52
wpwrakthe joy to be "industriekapitaen" :)19:52
DocScrutinizer05FSCK!!!19:52
DocScrutinizer05Kapitaen of a dingi19:52
wpwrak[powered] is just an annotation, has no physical function19:52
DocScrutinizer05so to VBOOST then?19:53
wpwrakno, VBUS -> ESD -> VBUS_RAW19:53
DocScrutinizer05(makes more sense anyway)19:53
wpwrakthen VBUS_RAW -> diode (to block reverse leakage from the regulator) -> LDO -> 3.3 V rail19:54
wpwrakah yes, which is then = VBOOST19:54
DocScrutinizer05sure sure, VBUS_RAW fine, but where gets VBUS(_RAW) ... ahh wait you answered19:54
wpwrakbefore, i had something between 3.3 V and VBOOST. deleting the VBOOST label ...19:54
DocScrutinizer05so 3V3 is your main power rail, right?19:55
wpwrakyes19:55
DocScrutinizer05and how's battery -> 3V3?19:56
DocScrutinizer05it looks a tad ... complicated19:57
wpwrakbattery -> stuff under discussion -> boost -> 3V319:58
DocScrutinizer05a second booster?19:58
wpwrakno, U119:58
DocScrutinizer05ooh, I gathered U1 is for USB VBOOST aka 5V019:59
wpwraknoo !20:00
wpwraki have an AAA primary cell. i need to boost it to 3.3 V20:00
DocScrutinizer05so VBOOST = 3V3 rail?20:00
wpwraki don't supply USB host power. if you want USB host, welcome to the Y-cable20:00
wpwrakyes20:00
DocScrutinizer05please don't call it VBOOST :-) maybe it's just me, but VBOOST sounds like USB VBus hostmode20:01
DocScrutinizer05just call it 3V320:01
wpwrakthe label is already earmarked for deletion :) as i said, there was a FET after it (from an older design, with different characteristics), so it made sense to label the net. but now it's just 3V3.20:02
DocScrutinizer05oooookay. So let me suggest to use connect that 3V(3) LDO for VBus to VBat_safe20:03
DocScrutinizer05-use20:03
wpwrakthat LDO output should be at ~3.3 V since this also supplies some 3.3 V domain items in the chip20:04
DocScrutinizer05mhm, well, the booster should still work fine with Vin==Vout20:05
wpwrak(says the documentation. not entirely sure how much abuse would be possible there.)20:05
wpwrakyes, but the MCU might hate having its 3.3 V items at VBAT ;-)20:05
DocScrutinizer05o.O20:05
DocScrutinizer05ooh#20:05
wpwrakbesides, there may be non-negligible current between that and its real 3.3 V supply pins20:05
wpwrakyet another experiment i'd rather stay away from :)20:06
DocScrutinizer05add a FET like Q1 for VBus20:06
wpwraki could of course add a dedicated LDO. might do that if i get really desperate ...20:06
DocScrutinizer05yet another one?20:07
wpwrakinstead of the one in the MCU, so that it comes without strings attached20:07
DocScrutinizer05I already wonder if you could use a buck-boost converter instead of U1 and you'd not need any LDO20:07
DocScrutinizer05you know, a step-up/down that allows Vin<Vout<Vin20:08
DocScrutinizer05of course such a critter shouldn't be enabled 24/720:09
wpwrakhast to be on all the time. the system can't run at battery voltage20:10
DocScrutinizer05you prolly couldn't find one that works at almost zero power consumption in low-load/idle20:10
DocScrutinizer05the system doesn't need to run all the time20:10
DocScrutinizer05which brings us back to the pushbutton20:11
wpwrakwell, i could switch it in and out of battery change mode ...20:11
wpwrakbut that adds a burden to an already tricky part20:11
DocScrutinizer05battery change mode?20:12
wpwrakwhen the MCU isolates itself and runs off silo caps20:12
DocScrutinizer05ohmy, wouldn't it suffice to write an instruction manual that says: "battery change only while attached to USB"?20:13
wpwrak;-)20:13
wpwrakmight as well call it an iphone then :)20:13
DocScrutinizer05ummm20:13
DocScrutinizer05I don't get it why you must keep RAM content20:14
DocScrutinizer05or is there another reason to never power down the MCU?20:14
wpwrakyes, it's for the RTC20:15
DocScrutinizer05oooh20:15
wpwrakmight also be nice to keep RAM, but i don't have a requirement for that at the time20:15
DocScrutinizer05well, as long as RTC is the only trouble, and that trouble is only during battery charge....20:15
DocScrutinizer05change, even20:15
DocScrutinizer05does the MCU have a real RTC, or is that a sw RTC?20:16
wpwrakloss of rtc can be painful. e.g., if using some time-based protocol20:16
wpwrakdepends on the definition of "real" :) but there's a piece of silicon that says "RTC"20:17
DocScrutinizer05sure, your sw can detect loss of correct time, and make time setting mandatory on power-up then20:17
wpwrakeek20:18
wpwrakblinking 00:00, VCR-style ? :)20:18
DocScrutinizer05I'd consider that good enough when somebody really fails to change battery with USB attached, as recommended in manual20:18
DocScrutinizer05anyway, the RTC also needs 3N3 to keep time?20:19
DocScrutinizer053V3 even20:19
DocScrutinizer05or does it have a proper BupBat input for a RTC-backup power supply?20:21
wpwrakno, that's why i can use the silo cap trick (or at least i hope it works, still to be tested)20:21
wpwraknope, no separate power input20:21
wpwrakbut the whole MCU can run at < 3.3 V20:21
DocScrutinizer05hmm, but you could use Vbat (1V) during normal device power-down20:21
wpwraki need >= 1.71 V20:22
DocScrutinizer05:-(20:22
wpwrakit's always those little details :)20:22
DocScrutinizer05ffs20:22
DocScrutinizer05sorry, all fun has to end. I need dinner20:22
wpwrakhmm yes, me soonish, too20:23
wpwrakah, now i remember what the problem in gta01 was. system power was controlled by the modem. cpu has a signal to the modem for the "power button". during cpu power-down, that signal became uncontrolled, causing the "power button" to be "pressed", which in turn told the modem to power up again ...20:24
DocScrutinizer05yeah, great¡ ;-D20:38
enycfunfun21:44
rohi remember some loop in i think gta02... where the suspend on the cpu glitched all gpios for reasons of not available versions of the pmu, which was fine for most of them besides the one line connecting to a transistor 'pressing' the 'test' button on the pmu of the modem. there were 2 of those transistors. one for the power button, one for test.22:03
rohso as soon as the cpu went asleep, the glitch happend and on the power button it was filtered out by hw debouncing, the test pin had none... ooops... so the modem woke up the cpu again via irq line22:04
rohi think the fix was to label the test-button-pressing-transistor 'dnp' ;)22:17
--- Wed Mar 2 201600:00

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