#qi-hardware IRC log for Friday, 2012-01-27

rjeffriesreading the backlog, interesting to see the effort to identify USB mice that work ok w MM1. How much work will it take to improve USB driver so this hand matching is not required?01:34
wpwrakit will always be required. you'll just get fewer problem cases :)02:38
wpwrakthink of it more as of a regression test: we want to be sure the things that work keep on working. that's why it's good to keep track of them.02:41
rjeffrieswpwrak with great respect <g> do you think PC makers need to test random USB mice against their new builds? The answer is "no" they have USB ports that meet the standard. 03:52
wpwrakwell, if you give us one of those fancy test systems ... :)04:17
wpwrakor you can help with the work towards getting linux to run properly. that would also solve a number of usb issues.04:20
wpwrakdon't have a usb tester ? no chip design or kernel hacking skills either ? no problem. a modest donation of only a few 100 kUSD would bring us a lot closer to being able to focus the next year or so on polishing things without the need to have anything that can actually be sold04:24
rjeffrieswpwrak you speak with great eloquence sir. one hopes most mice past the test. this problem will solve itself in any case. move along folks, nothing to see here. ;)04:54
DocScrutinizerwpwrak: USB zeszer? no problem, I'm sure I could use the one on the desk of my colleague on weekend. Missing any hw to test though07:08
DocScrutinizerbtw it's a cheesy little plastic box almost as ugly and cheapish as the Lauterbach ;-D07:10
DocScrutinizermeanwhile: it's kinda nice we see a new user of either N900 or GTA02 every other week lately. You could almost say open phone idea slowly gains a microscopic momentum again07:16
Action: DocScrutinizer makes mental note to start watching a few ebay auctions on weekend, to get his spare spare N90007:18
DocScrutinizeralso a few keymats (they are really suffering from wear and tear)07:19
rohDocScrutinizer: rather shop 6110... still real phones08:05
DocScrutinizerI'm indeed missing a "real phone" since all my 5pcs 6210 burnt down in that apartment fire before I joined OM08:07
DocScrutinizerbut I'd rather buy some osmocom-bb compatible Cxxx than 6210. I guess I'll get a few 6210 again as gifts over time08:08
rohDocScrutinizer: hrhr08:08
rohi am still using my moto v3i08:09
DocScrutinizerooh, actually there's still my "original" 6210 that served me right for almost 10 years08:09
DocScrutinizerjust the battery is dead now08:09
Action: DocScrutinizer killed that battery by not recharging it for >12 months :-S08:10
rohreminds me.. i should charge the moko stuff from time to time again08:11
DocScrutinizeryeah, same here. Again 6 months since I last did08:11
Action: DocScrutinizer considers building a long term Li battery maintenance rack08:12
DocScrutinizerwith a hundred slots with adjustable contacts08:13
rohi guess a cheap third market charger and a lot of relays would be enough08:13
DocScrutinizerwell, not relays, too expensive. MOSFETs08:13
rohtoo fishy to get the charging logic not confused :)08:14
DocScrutinizermeh, what logic ;-D08:14
rohthermistor etc08:14
DocScrutinizeraaah, no way08:15
rohi dont like unattended charging without thermistors anymore08:15
DocScrutinizerI.E a stabilized digitally controlled PSU with a series resistor08:15
DocScrutinizerI'll build the thermistorsa into the rack's slots08:16
rohwell.. holler if you have something working08:16
rohi guess printing the battery holders with a 3d printer will be easy08:16
rohas in mill board, solder pogo/spring loaded connector, screw printed plastic frame on top or so08:17
DocScrutinizerthe contacts and slots are the worst of the whle thing08:17
DocScrutinizerconsidering I want it to be universal, mechanically08:20
rohwell... swap holder depending on type/series08:21
DocScrutinizerthought about getting 2 or 3 basically different universal holder designs08:22
DocScrutinizeror using Lego ;-D08:22
rohdesign em in openscad, send me the file08:23
ArtyomHello everyone! Have anyone seen this blog: http://danstrother.com/category/fpgas/08:26
ArtyomLooks interesting. (At least for me). Especially untraditional SATA connector and cable usage for transfering high LVDS signals08:28
wolfspraulArtyom: thanks a lot for the link!09:19
wolfspraulArtyom: if you find any interesting blogs, feeds, projects - especially if they are not in the Qi planet yet - please post here09:25
Artyomok ;)09:25
wpwrakDocScrutinizer: (usb tester) hmm, conformance tester or just protocol analyzer ? the latter are more common. there's some windows usb compliance test that's reasonably popular. not entirely sure what it entails. i read often of people referring to it, but nobody actually having used it ;-)09:27
wpwrakDocScrutinizer: (charger with hundreds of slots) we don't know what burnt down your last apartment but we have an idea what will burn down the current one ;-)09:28
qi-bot[commit] Xiangfu Liu: update nanonote daily build folder name and url (master) http://qi-hw.com/p/openwrt-packages/c36a30711:49
dvdkwhitequark: btw got the money15:43
whitequarkwell, it's my bad that half a year has passed...15:45
dvdknot that i needed the money anyways :)  btw how did you route the payment via wolfspraul?15:46
Action: dvdk closed down his paypal account before christmas, BTW15:47
whitequarkhe uses some credit card processing service, and while I do not have an actual credit card, I have an account in a Russian virtual money service Qiwi (not sure how this is actually called in English), I was able to transfer the money to him15:48
whitequark(qiwi) you have a "virtual wallet" which can you place money into with a terminal (think deposit-only ATM), which they have all over the city in almost impossible quantities15:50
whitequarkthen you can pay on the websites which support this system directly or through gateways15:50
dvdkinteresting: the virtual wallet thing.  who needs physical credit carts anyways?15:50
whitequarkrecently, they've added a virtual credit card service. you click a button, then pay $0.3 and instantly get a virtual credit card number15:50
whitequarkeasily disposable15:50
dvdkuh, even disposable.  hmm, maybe there's something special about using credit cards with russian websites :)15:51
whitequarkthat's Visa btw, and every e-shop I ever bought something in accepted it15:51
whitequarkeve digikey (sic!)15:51
whitequarkeven more recently, they've added a plastic card service, which is still linked to the "virtual wallet"15:52
whitequarkso you can retrieve your money back from the system15:52
whitequark(it _was_ possible before, but it was quite hard -- you were required  to go to a special center -- and inconvenient)15:52
whitequarkand now you can use any ATM (they'll collect 1.5% through)15:53
whitequarkah, one more thing15:53
whitequarkyou actually need exactly one thing to register a Qiwi wallet -- a working mobile phone number15:53
whitequarkno paperwork, no passport scans, it's instant and practically anonymous15:53
dvdksounds very convenient15:53
whitequarkyou need to provide _some_ name and address when registering Visa cards, but they do not actually attempt to verify that15:54
whitequarkI wonder which kinds of fraud can you commit with that and how long will it live the way it is15:54
whitequarkbut yes15:54
whitequarkit is incredibly convenient15:54
whitequarkthere are some limits, like most payments are limited by $500 a time (not Visa ones, through)15:55
whitequarkstill very godo15:55
whitequarkcrappy ssh link :/15:55
whitequarkam I correct that there exists a working combination of software and hardware at #qi that implements a 802.15.4 WPAN, and that this combination is Ben+(whatever that atrf thingy was called) ?16:00
larscfor certain defintions of working ;)16:04
larscbut i don't know the details16:04
larscwpwrak is the person you want to talk to16:04
wpwrakthe web knows everything :) http://downloads.qi-hardware.com/people/werner/wpan/web/16:39
whitequarkwpwrak: ok, that's fine for me. Where can I buy two atbens, atusb and a NN? Preferably in a single package delivered by something like fedex.16:42
whitequark(where) I've seen the discussion about current state of tuxbrain above, hence the question16:42
whitequarkbtw, this link is dead: http://downloads.qi-hardware.com/people/werner/wpan/web/zoom.html16:44
wpwrak(buy) hmm, i'd still try tuxbrain. else, maybe pulster.16:45
whitequarkpulster is significantly more expensive than tuxbrain16:48
whitequarkwpwrak: do you know if XBee's are free hardware?17:02
wpwrakseems only the interface boards, but not the xbee itself17:10
wpwrak(zoom.html) fixed. thanks !17:13
whitequarkso I'll go buy that stuff, and then explain what I want to do with it17:13
wpwrakhehe, ok :)17:13
qi-bot[commit] Werner Almesberger: web/Makefile: also upload zoom.html (reported by Peter Zotov) (master) http://qi-hw.com/p/ben-wpan/a642bfa17:14
qi-bot[commit] Werner Almesberger: Merge branch 'master' of projects.qi-hardware.com:ben-wpan (master) http://qi-hw.com/p/ben-wpan/762d33c17:14
whitequarkQue hay en mi Cesta?18:11
whitequarkTu Cesta de la Compra esta vacia!18:11
whitequarkI don't know what this means, but I hope that it is "your payment was successful"18:11
larsclooks more like "your shopping cart is empty"18:15
wpwrakit means: "what's in my shopping cart ?" "your shopping cart is empty!"18:16
whitequarkah yes, fine then18:25
whitequarkI think I've already told what do I want to do: a home automation system implemented as a wireless network of simple specialized devices on a common platform18:26
wolfspra1lBruce Perens says "Qi is interesting, but will be important if they ever manage to break out of being a nerds-only product."18:27
wolfspra1lsrc http://lwn.net/Articles/475742/#Comments18:27
wolfspra1lfair enough Bruce, only that you miss the fun of being part of it :-)18:27
kristianpauloh, nice18:27
kristianpaulexpect nerd part ;)18:27
wolfspra1lI can understand the sentiment though, products need to become more polished, easier to use.18:28
whitequark>Arduino has some down sides. It does not use a 32-bit processor, so it cannot run complex software (like Linux, for example)18:30
wpwrakwhitequark: (home automation) sounds great :) i have such idea pending, too. never moved beyond general ideas, though.18:31
whitequark>Bruce waved around a DSO Quad, a pocket-sized digital storage oscilloscope. <...> one does not need a large corporation to create compelling mobile products18:31
wpwrakwolfspra1l: all press is good press ;-)18:31
whitequarkwhile the statement about large corporations is valid, DSO Quad isn't the best example...18:31
whitequarkand the statement about arduino and 32-bit cpus is just stupid18:31
wolfspra1lthat's not really press, he did not mention Qi in his talk, but aware of it like most serious foss people18:31
wolfspra1lGoogle sent me a free 75 EUR adwords coupon, nice. I will use it for Milkymist18:32
wolfspra1lI will try things like video synthesizer, instrument, reconfigurable computer18:32
kristianpaulha, adwords words race :)18:33
whitequarkwpwrak: (home automation) I'll continue on that18:34
wpwrakfunny. ads on that article on lwn: rambus and "global IP law group"18:34
kristianpaulwhitequark: check mirko work around light control using 433mhz tranceivers, prerry interesting18:34
wolfspra1loh I don't expect much good, but I've never used adwords and if they send me this free coupon, I'll throw it right back, why not18:35
kristianpaulor may be he also have some others plans, since the wireless network is almost ready to be implmented with more appliances i guess18:35
wpwrakinteresting fusion of "very" and "pretty". is there "prey" in there as well ? :)18:35
whitequarkI currently want to do basically three types of devices. First is basically a SSR, possibly with current measurement. I will use it to control light and wall sockets.18:35
wpwrakwhitequark: how do the devices get power ?18:36
whitequarkSecond is a sensor acting as a switch. It may have more applications than I currently think of, but basically it's a replacement for a convenient switch. Why "sensor"? I think I want to try two variants, first as a conventional mechanical switch and second as a sensor one, by several reasons. Second one is more promising for me18:37
whitequark(power) I'm currently exploring how hard it is to get power from the 220V grid which is already there18:38
wpwrakgood :)18:38
whitequarkpower supplies are harder than I thought18:39
wpwrakyes ;-)18:39
whitequarkdo you have any experience on that?18:39
wpwrakparticularly if you don't have a lot of room and need more than 1-2 mA18:39
wpwrakno. that's why my project didn't move18:39
whitequarkand at the moment, I cannot say that I know how to do it...18:40
whitequarkespecially to make it safe and efficient18:40
whitequark(I'll finish on the device types) Third is an environment sensor. Humidity (to detect bathroom floods), gas, smoke etc. Some of them may very well be self-powered. I am quite sure that with right components and firmware a 3V lithium battery can last for months, if not years18:41
wpwrakwhat i'm looking for is: 1) user terminal (button, some indicators) 2) triac to switch lamps. must work with CFL.18:41
whitequarkwell, I basically want the same18:42
wpwrakthe terminals would go where the light switches are. the triacs could either be on the same board (since the cables pass there anyway, most of the time), or go next to the lamps18:42
wpwraki also want the terminal to be able to alert me when someone presses the doorbell or such18:43
wpwrak(env sensor) yeah, that one can stay passive and maybe just ping the central once a day to indicate that it's still alive18:44
whitequarkfor phy/mac layer, I'll use 802.15.14 and I hope I find some upper level protocol to not reinvent the wheel18:44
whitequarkthe network must be point-to-point18:45
whitequarkif I have two separate nodes with switch and a triac, the switch node should directly turn on the triac18:45
whitequarknot relying on some central server18:45
wpwrakyou probably need a mesh. but protocol issues are easy to solve. (well, from my pov :)18:45
whitequarkyes, I don't see that as a hard task18:46
whitequarkjust the one which needs to be done right18:46
wpwrak(switch to triac) yup. sitting in the dark when the pc crashes sucks ;-)18:47
whitequarkthen, I want a control panel on which I could see the plan of entire network, sensor states, and maybe have more controls on the overall system18:47
whitequarklike "switch to the 'owner absent' mode", etc.18:47
wpwrakyou could use a ben for that18:47
wpwrakprobably cheaper than building from parts18:48
whitequarkactually, I want to get a device with touchscreen and hang it on a wall18:48
whitequarkcost issues are not that significant for me anymore, as I've found a good job18:48
wpwraktouchscreen is trickier18:48
whitequarkI could buy an ipad, if only it wasn't an Apple anal probe18:49
whitequarksome cheap chinese android tablet would work perfectly18:49
whitequarkditch android and use framebuffer18:49
whitequarkyou can find one for less than $10018:50
whitequarkthat's cheaper than ben afaik :D18:50
wpwrak(pad < USD 100) hmm, not here :-(18:50
whitequarkit is exceptionally crappy as a tablet, but would work perfectly for this purpose18:53
whitequarkit even has a capacitive sensor display18:53
wpwraknaw, don't think so. one of the comments says "no multitouch"18:54
wpwrakcap is usually around 2x the price of resistive18:55
whitequarkwell, maybe18:55
whitequarkI don't need multitouch here anyway, I think18:55
wpwrakyeah, that would be a tad excessive ;-)18:56
whitequarkat last, I want to have a piece software to configure the entire network: generate a config for terminals, OTA firmware for sensors, upload it, etc. I hope to reuse some FOSS SCADA system here, but I'm not sure if that will work.18:58
whitequarkof course, I prefer the whole stack to be as free as possible: only OSS and OSHW.18:58
whitequarkI won't trust some proprietary system to take control of my home18:59
DocScrutinizer51\o/ 30 lines of code today, first time in this ugly environment and also first time after 12 months. And only one missing ; then it 'just worked'18:59
whitequarkwpwrak: on the hardware part, I think this will work the best: 1) a power supply as a separate block, yet to be found 2) a radio module aka atben with the SD part cut off and replaced by a pinhead 3) a customized mainboard19:01
whitequarkmainboard will be based on STM32. Sorry Arduino fans, STM32 has significantly better power and cost efficiency.19:02
whitequarkI've seen an example when a single low-power STM32V was displaying a counter on monochrome glass LCD display for several hours19:03
whitequarkit was powered by an apple19:03
whitequarknot that cupertino company, but a fruit19:03
whitequarkyou know, copper and zinc electrodes19:03
wpwrak(stm32) power doesn't matter. your supply needs to be able to provide a few mA anyway.19:14
wpwrak(rf) once the thing matures, you can also just integrate the RF circuit into your design.19:15
wpwrakthe power supply is the tricky bit ;-)19:15
wpwrakalso, you probably want to be able to squeeze this into the little boxes in the wall that currently contain the light switches, right ? about 5 x 10 cm19:16
whitequarkwpwrak: (power) it does matter for standalone sensors. anyway, STM32 is a vastly better controller than any ATmega.19:20
whitequark(rf) that can be tricky. I have no equipment to work with RF and it's still too expensive for me AFAIK19:20
whitequark(little boxes) yes19:21
whitequark(the power supply) yes. I'll ask a quesion on StackExchange.EE, and I'll try to find a ready one19:21
whitequarkif I could find one that is made with accessible components (no custom transformers, etc.), I think that I can reverse-engineer it. Not sure how sensible is this, through, but at least it may give me some ideas19:22
DocScrutinizerthose little boxes are round here19:23
whitequarkhere too19:24
whitequarkthe RF module is very small. STM32's are also not known for their large cases. power supply is the worst part19:26
wpwrakyes, power and shielding effects should be the worst bits19:29
whitequarkI wonder what maximal current do we need19:41
whitequarkcertainly no more than 50mA19:41
whitequark5mA should be enough for CPU; RF part is in range of 12mA if I remember that correctly19:42
whitequarkthere is also SSR and leds19:42
rohwhitequark: vastly better depends on what you wanna do.20:09
rohe.g. if you need precise bitbang timing, arm usually is worse than avr due to a muxed io bus (no full cpu core speed io possible on arm)20:13
rohso there is no 'cpu a is better than cpu b'. it _always_ depends on the specific usecase what is more reasonable and what not.20:16
wolfspra1lhey that's why we work on Milkymist20:21
wolfspra1lbecause I fully agree with roh, and in all the thousands of exciting embedded computing products we will want to have in the future, it will only be true even more20:22
wolfspra1lyou pick a CPU for a project, you start working, and inevitable one day will be the 'big oh day'20:22
wolfspra1lthen it gets interesting :-)20:23
rohhey wolfspra120:23
whitequarkroh: hm, interesting20:42
whitequarkanyway, I only meant "vastly" in the context of this project, and not as a general statement20:43
Action: roh doesnt like generalisations on technology. there is always 'the right kind' for 'the right problem' .. but not one tech. which is solves all kinds of problems.20:44
wpwrak(milkymist) and you'll never get a custom PWM that's as precise as one you synthesize in an FPGA ;-)20:44
whitequark(through I do think that they are generally better than AVRs in most of the cases where AVRs are used, _if_ you ignore: a) compatibility b) absence of ARMs in DIP c) as you've noted, precise bitbanging d) maybe more, but not much.)20:45
wpwrak(besides, best of luck finding a device with a combined pwm and led matrix controller :)20:45
rohi dont like arm because the io is usually much more crappy20:45
whitequarkdefine "io" ?20:45
rohi really like the avr io banks.20:45
rohio. gpio, usarts, etc.. everything NOT a cpu core20:45
whitequarkwell, then you should definitely take a look at stm3220:46
roharm has _really_ crappy ones.20:46
rohalso stm.20:46
rohstm sucks even more when it comes to pricing and packages.20:46
whitequarkwhat do you not like in STM IO?20:46
rohi usually use arm when its 'grown up'., means arm9, arm11 cores WITH mmu.20:47
rohif i dont need an mmu, i dont need a such fast cpu usually.20:47
whitequark(pricing) I'm not sure about %countrynamehere%, but here in Russia I know a real company which assembles, locally, atmega-based devices. And Atmel pricing  sucks a whole lot compared to STM in practically every place you can get both kinds of controllers here.20:48
whitequarklike 3 times more20:48
rohmeans i use arm when i need a full fledged os and i can run linux on the cpu. smaller stuff i usually always solve with avr stuff..20:48
wpwrakpigs seem to be pretty cheap. if you can stand the smell :)20:49
whitequarkwpwrak: do you hate STM too?20:49
roharound here a phillips i2c io expander is more expensive than a avr cpu which can do the same and much more.20:49
wpwraki haev no opinion on STM. haven't looked at them for a while20:49
rohso guess what people use to get more gpio from i2c? not a pcfxxx chip20:49
whitequarkroh: I still want to hear what's so wrong with stm ios20:49
rohwpwrak: well.. same as the lpc stuff.. boring small arm cpus with 'another io paradigm again'20:50
wpwrakARMs used to have overly picky power supply requirements. but maybe this has changed.20:50
whitequarkbecause I worked with both stms and atmels, and I don't quite understand your point20:50
rohwhitequark: whats wrong? with arm? usually the manufacturer mostly. even atmel fails on arm.20:50
rohe.g. initial bootloader. its a _mess_20:51
whitequarkwpwrak: (arms) atmels can work with 12V Vcc, heating like an iron. I don't really need that modus operandi, so again, I'm fine with stm20:51
wpwrakfwiw, i'm not too fond of avr either. too many legacy quirks for my taste.20:51
whitequarkroh: not generally with ARM, of course. LPCxxxx's are quite crappy20:51
whitequarkroh: I want to know what's particularly wrong with STM compared to atmels.20:51
rohregardless if you look at SAM-BA, broken dfu implementations, crappy shit emulating fat-fs on usb on lpc or whatever.20:52
wpwrakwhitequark: i was more thinking of variable supplies like a battery20:52
rohwhitequark: i havent seen a single decent small arm cpu.20:52
rohand i have them all around.20:52
wpwrakwhitequark: and many arms even need separate core and i/o. but again, maybe they fixed this for the embedded ones.20:52
whitequarkwpwrak: stm32f only needs a single 3.3v supply20:53
wpwrakroh: all that looks like software problems :)20:53
wpwrakwhitequark: does it have to be exactly 3.3 V ? or can it be, say, 5 V ?20:53
rohthe 'magic' of avr is their extemely good io, and that they are extremely easy to get up and running (in sw as well hw).20:53
whitequarkroh: if you have problems with that, just write your own bootloader. you'd do that on AVR anyway.20:54
rohwpwrak: no. it would be sw but the arm bootloaders are in a ROM page they map into their memory on boot depending on the bootmode pins20:54
rohwhitequark: people do that. i just use cpus which NOT make me puke on trying to boot.20:54
whitequarkwpwrak: it works on 2.0 to 3.6V20:54
wpwraki think their magic is that they have a decent free toolchain ... and that they're popular ;-)20:54
rohwpwrak: that too.20:55
rohwithout gcc you basically cannot sell a mcu.20:55
rohah.. and 5V tolerance is a must for some projects.20:55
wpwrakwell, sdcc is an option ... it's tolerable20:55
whitequarkroh: (gcc) of course that's why we have billions of PIC8 in the world. wait, pic8 has no gcc.20:55
whitequarkroh, wpwrak: almost all I/Os are 5V tolerant20:56
rohwhitequark: i am not talking about boring industry projects. i am talking about creative people like here.20:56
wpwrakwhitequark: 2.0 V is good. that means that you can probably use CR2032 cells20:56
rohwhitequark: just stop argumenting. you cannot persuade people that way.20:56
whitequarkroh: you sound like a troll, actually20:57
whitequarka bad bootloader is definitely a reason not to use a particular chip, yes20:57
wpwrakknives ! we need knives ! :)20:57
whitequarkand apart from that you have not mentioned any facts.20:57
rohwhitequark: i do electronics for >15 years now. i speak from experience. and the latter isnt always nice.20:58
whitequarkand, through that may sound strange, I'm still interested in what do you say. For example, I will recall your words about bitbanging when I'll encounter it20:58
whitequarkthen, can you say what exactly is wrong with the io?20:59
whitequarkI'm genuinely interested20:59
rohwhitequark: well.. i am not interrested in aguing with you.20:59
rohand mostly: arm io is muxed. so i CAN NOT wiggle pins on 1/2 cpuclock like i can do on a avr.20:59
rohand thats only one thing.21:00
rohon ti or lpc arm i dont like the register layout because its annoying to program simple stuff with it and has lots of side-effects (and or masking which eats cycles)21:00
whitequarkyeah, you've already said that, and I never argued with that. any others?21:00
rohsome machines have registers for bitwise operations.. which  suck again if you need some bits switching sync. which is NOT POSSIBLE on muxed/banked io.21:01
rohmeans .. arm CAN NOT do some of the stuff i do a lot with avr chips very easily21:01
rohthe completely broken bootloader situation is the next thing.21:02
rohthen you usually need multiple voltages, external clocks, complex pll boot procedures and bad documented details to get stuff working even if you get code executing... why? because manufs are really braindead when it comes to documentation and open tools.21:03
rohwhen  i need to use a different tool to flash 2 different arm cpus from the same manuf. that manuf FAILED.21:04
wpwrakroh: btw, i have my doubts about your bit-banging argument. remember that i even got reasonably precise video out of MIPS, with caches, mmu, etc. ? i doubt arm is worse. and yes, you have to work harder than on an avr to get this right. but that's the cost of having a fast cpu.21:05
rohand that i cannot switch code from one arm cpu to another easily because every manuf used different io blocks. thats just plain stupid and breaks all portability.21:05
rohwpwrak: arm only works when you run it at siginificantly higher clocks than avr.21:06
whitequarkroh: you cannot switch several bits with one I/O instruction on AVR without explicit read-modify-write21:07
wpwrakwhich is what you have anyway. of course, if the clock was as slow as avr, all the things needed for optimizing speed would just be obstacles21:07
rohwhitequark: i can do a read-modify-write in the same time an arm on the same clock does half that on banked io.21:07
wpwrakroh: can't you just load your own boot loader into your SAM ?21:07
rohwpwrak: yes and no. 21:07
rohthe romloader is rom.21:08
rohnothing to flash there21:08
wpwrakand you cannot implement bootloader-like functionality in flash ?21:08
rohonly if you have a part with internal flash21:08
whitequarkthat's just the same on avr21:08
wpwrakinternal flash would seem the norm in this class of devices21:09
rohwhitequark: true. but there you get fucking working tools. not broken garbage from the manuf.21:09
rohwpwrak: some try using serial flash now. also sdcards etc.21:09
wpwrakroh: are you using an atmel-provided DFU on avr ?21:09
rohand booting from such stuff works by romloader21:09
rohwpwrak: no. i do not use usb usually.21:10
rohvery few of my devices get usb ports at all.21:10
wpwrakroh: which avr do you use that has no internal flash and boots from external serial flash ?21:10
wpwrakso why do you need DFU then, if you don't have USB ?21:10
rohall avr have internal flash. i was talking about arm stuff.21:10
rohwpwrak: when i get forced to use a proprietary mode via serial or usb by a manuf, i rather like a standard way like dfu.21:11
wpwrakfor devices where you use an avr, would there be only arm-based choices that require external flash ?21:11
rohon avr nobody forces me to use the serial or usb. i an happily develop via isp21:11
rohisp seems to be out of the arm comfort zone nowadays...21:11
wpwrakdo the SAMs have no other way of flashing than USB ?21:11
rohits either fully blown jtag with endless pins, or broken loaders.21:12
wpwraki've heard of something called JTAG21:12
wpwrakyeah :)21:12
whitequarkroh: if you do not want to look at stm32 due to your belief or anything, then fine. I have actually used chips from these series. I co-authored a FOSS flashing tool for the entire line. It does not need multiple voltages, it has internal oscillator, its PLL init is not complex and well-documented, and the docs are roughly the same quality as for AVRs. I'm curious about the real details of bitbanging stuff, so I will look into that and pos21:12
rohdocumentation is mostly only explaining the broken serial or usb loaders. not jtag, not speaking of working gpl toolchains to do jtag properly with affordable tools NOT supplied from the mcu vendor21:13
whitequark(flashing tool) this "flashing tool" is an in-circuit debugger, which (also) supports flashing through gdb.21:13
whitequarkall FOSS, and not broken.21:13
lindi-_whitequark: your line got truncated by the evil ircd...21:13
wpwrakroh: i guess we'll have to wait and see what happens when whitequark hits the point of wanting to load his first hello.c :)21:13
rohwhitequark: the point is: i am happy with avr for what i do with avr. when its 'a bigger task than the avr can handle' then one can use 2 or more avr very easily. for anything which needs a display or networking i just use a fully blown linux on a grown up arm cpu.21:14
rohwhitequark: i dont see avr as 'mcu' only anymore. its 'programmable io part' for me.21:14
whitequarkwpwrak: http://github.com/whitequark/stlink. go ahead with your sarcasm.21:14
rohi do keyboard debouncing and preprocessing on there if neccessary. leaving the memory load heavy stuff to a real arm cpu.21:15
rohif you ask me. arm7 isnt needed anymore.21:16
whitequarkroh: your approach works well until you want to make an UAV (an actual task I've attempted). you either need to stack avrs one on another, or just use a chip with hw multiplier and fast 32-bit arithmetics.21:16
whitequarkand stm32 is cortex-m3 and not arm7.21:16
rohwhitequark: a uav has more than one cpu core and not only a simple arm721:16
rohor cortex m321:17
rohfrom my pov thats not an improvement21:17
rohcortex m is the same as arm7 to me. not better. just new name. marketing.21:17
whitequarklindi-_: thanks21:18
whitequarkthat line was truncated. <...> I'm curious about the real details of bitbanging stuff, so I will look into that and post the actual  result. I have not looked into serial bootloader, SWD and JTAG are standard interfaces where you have FOSS tools to work with the chip, so I won't comment  on the internal boot either. SWD is 2-wire by the way.21:18
rohwhitequark: so.. thanks for the links, but you CAN NOT win this by argument, simply because there is nothing to win.21:19
rohthe mcu market IS full of 'duplicated usecases'21:19
rohand cortex Mx has to fight against avr. i dont need to have one win over the other.21:20
rohavr was there before and i know it quite well and whats possible with it and what not. THATS the real gain. its like the 8086 for the mcu possie.21:20
rohwhen we get up to processing power demands of avr32 or cortexA8, A9, the picture changes.21:21
whitequarkI'm not trying to convince you that STM32 is better than AVRs (through I do state that myself), but I can't stand to see someone saying clearly false statements. (Yes, that whole "someone in internet is wrong" thing).21:21
lindi-_that reminds me, can you suggest any good software for using JTAG and ARM? I've used only openocd and it seems somewhat unfinished21:21
rohthen it may be more feasible to use an arm cpu (as i would)21:21
lindi-_maybe I'd need to configure it more or something21:22
lindi-_but for example it can not read physical addresses if MMU is enabled21:22
rohwhitequark: i am not saing one is better than the other. i am saying that there is more than 'i got the same features 10 years late, please all switch to arm now'21:22
rohavr killed the pic for the most part of the market here. remember that.21:22
lindi-_(sorry to hijack the thread so to speak..)21:22
rohlindi-_: openocd is it.21:23
whitequarkroh: (avr killed pic) for good21:23
whitequarkI heard different things about pic, through. I.e. that it still is in every small consumer device like tv remotes or car keys. Not sure about that.21:23
wpwraklindi-_: for jtag in general, i find urjtag considerably better than openocd. but i don't know it implements the specific features you need.21:24
rohwhitequark: pics are nowadays nearly extinct21:24
rohwhitequark: atleast compared to avr, small arm and 8051 cores21:24
rohthe latter ones having the majority afaik21:24
whitequarkroh: nice to hear that. that's an arch worse than 8086.21:24
roh8051 i really not like.21:25
whitequarkI was unfortunate enough to begin my mcu programming experiments with pic. it was awful.21:25
rohbut its really cheap and chinese companies use it afaik without any licensing21:25
wpwrakroh: pics exinct ? you wish :)21:25
rohwpwrak: for the majority of stuff.. yes. i see >8 avrs for one pic21:25
rohand about a dozend 8051 21:25
rohthats the ratio in commodity hw21:26
rohevery usb device usually has atleast one 805121:26
wpwrakyeah, 8051 still rule the world :)21:26
whitequarkroh: I'm not "everyone switch to ARMs now!!111", but more "let's not ignore cortex-m3 where it's better than avr." anyway.21:26
lindi-_wpwrak: currently debugging openmoko suspend issue21:27
whitequarkroh: how do you determine which cores are present in commodity hw? if we mean those small consumer devices with epoxy blobs and so on21:27
whitequarkI suppose that by 8051s in USB HW you mean Cypress chips, right?21:27
rohwhitequark: the reason i seems ignored is that its difficult to learn about mcu when you get confused by manufs all the time21:27
rohther is just no continuity in arm mcu.21:27
lindi-_wpwrak: http://lindi.iki.fi/lindi/openmoko/crash/README seems to be a useful approach but it doesn't give me registers so I need to use JTAG too21:27
rohnot in the io, not in the loaders. nothing besides the asm (and that nobody gives a shit, they all use compilers from c or higher)21:28
rohso learning about programming and hardware and mcu is much easier on avr. everything has a history and can be easily explained, is portable easily between basically ALL 8bit avr cpus from the forst at90s1200 to the lastest avr8u and similar stuff21:29
wpwraklindi-_: phew ... may be tricky :)21:29
rohwhitequark: documentation tells you a lot about included cores21:29
rohwhitequark: arm is simply not used because it costs money.21:30
wpwraklindi-_: i use jtag mainly for flashing these days. on milkymist. there, gdb runs over serial, so we don't need to use jtag for it21:30
lindi-_wpwrak: gdb over serial means you are using kgdb?21:30
wpwraklindi-_: no, just regular gdb with a little gdb stub in the FPGA. don't know exactly how it works. but it does quite well ;-)21:31
whitequarkroh: that's when you have it. may I ask what job do you have so you examine lots of such devices routinely?21:31
lindi-_wpwrak: fpga. ok that won't help me then :/21:32
rohi am a freelancer21:32
rohthe job depends on the customer, but i also to custom reverse-engineering21:32
rohe.g. flash dumping for embedded devices etc21:32
lindi-_wpwrak: urjtag can not be used to single step or set breakpoints?21:33
whitequarkroh: aha, I understand now21:33
roheven a usb hub has a mcu embedded ;=)21:33
wpwraklindi-_: afaik, not easily. at least not for arm.21:33
rohalso 8051 usually21:33
whitequarkyeah I know21:33
whitequark8051s are everywhere21:33
wpwraklindi-_: it's more for the boundary scan / flash / etc. kind of stuff. it can be extended, though. so there could be more features.21:34
whitequarkI wonder how much of these little cores are embedded in my notebook21:34
whitequark5? 10?21:34
wpwraklemme see if there's anything new ...21:34
lindi-_wpwrak: right.21:34
wpwrakwhat's nice about urjtag is that it's just one program. not some quirky client-server thing.21:34
rohwhitequark: i guess a common notebook has something between 1 and 4 dozend cpus inside21:34
lindi-_wpwrak: the problem is that while gdb + openocd works it is not very elegant for debugging linux since gdb does not understand anything about linux threads for example21:35
whitequarkroh: yeah, I've expected something like that21:35
lindi-_currently I have one bug where I just seem to always be in some interrupt handler if I halt the cpu at regular intervals and check where it is21:35
lindi-_and I'd love to see what the other threads are waiting for21:36
wpwraklindi-_: a case for printk debugging ? :)21:37
whitequarkroh: (learning) absolutely. I myself learned that on AVRs, and they're very good for that purpose. Then, it took me a few days to get up and running on stm32. I don't see that as a problem.21:37
lindi-_wpwrak: that's very painful :(21:37
whitequarkthey have quite similar peripherals and so on.21:37
whitequarklindi-_: what about kgdb? is it applicable in your case?21:38
wpwrak(urjtag) still only blackfin and xilinx (for "fancy" features)21:39
lindi-_wpwrak: not sure21:40
lindi-_wpwrak: it relies on interrupts to work at least21:40
rohwhitequark: dont get me wrong.. but when sombody asks me what stuff to use for mcu and cpu on a openhw project i'll tell them avr for the small stuff, arm for the big21:40
lindi-_google has written some FIQ based debugging system afaik, that should work even when interrupts are disabled21:40
roharm for the linux, avr for stuff like power rail management etc.21:40
whitequarkroh: I understand your reasons21:41
rohsimply because that way one can piggyback on a much bigger userbase which actually CAN tamper with stuff without destroying it21:41
rohdidnt gta02 use fiqs also for pwm, hdq and more evil stuff?21:42
lindi-_roh: yep21:42
rohi remember andy green hacking that up21:42
lindi-_yep, that stuff is still being forward ported: complete list of things we still need on top of mainline is at  http://wiki.openmoko.org/wiki/Kernel/Upstreaming21:42
wpwrakfor me it's usually a question of the hardware feature set. with the provisio that tools must be open source. very often, this narrows down your choices rather quickly.21:43
rohwpwrak: ack21:43
whitequarkroh: but I'd say that if someone asks that, then he/she does not have enough experience to work with Arduino+shields on AVR and preassembled boards and peripherals from some particular vendor for ARM21:43
whitequarkand it is probably the correct answer in both cases, and I'd say the same too21:44
rohquestion of usebase and how to intregrate people21:44
whitequarkroh: if you are not learning and/or blindly copy-pasteing snippets in a fancy IDE, then the only major advantage of a big userbase is that all weird corner cases which bite you painfully are already discovered21:48
rohfrom my pov: when a system needs an ide to be understandable, you failed21:48
whitequarkroh: that was about Arduino.21:48
roharduino i do.. by using makefiles and vim21:48
whitequarkI just don't use them--I'm fine with plain atmegas21:49
rohthat way i solve my problems in a way i can have less experienced people be able to replicate my results.21:49
rohby .. well.. i dont care if they use the ide or not. they get a pde file with pinout commments21:49
whitequarkI have an opinion here--that a lot of people tend to disagree with--that if you can not understand C, then you don't need embedded programming, and if you cannot draw schematics by hand, then you don't need EE21:51
whitequark(by "understanding C" I do not mean some of its worst features, but rather some very basic things like pointers and such.)21:52
whitequarkbecause if you don't understand pointers, then a blinker is the most complex thing you can do21:52
whitequarkor you may be able to successfully combine high-level blocks someone did for you, but you will utterly fail when the whole thing will stop working by some reason21:53
rohits not only about understanding. its about makeing sure people do not stand still21:53
rohif you get the learning curve flat, and not too steep. everyone can do it.21:54
rohif the learning curve is very steep, only very few people will like it. the rest will be frustrated and annoyed.21:54
whitequarkeven if you have a flat learning curve, a huge amount of people will never actually learn more than, say, 10% of thing. at least that's my observation21:56
rohyeah. maybe. but thats 10% more than nothing21:57
whitequarkthey will never manage to do any of the actual work. that's what is wrong with the whole Arduino (and Python) ecosystems, I think.21:59
whitequarkyou've displayed that quite well21:59
rohthere you are wrong22:00
whitequarkif you have an arduino, then every problem seems like it needs a shield. if one arduino is not enough, then let's stack three of them22:00
rohi know people who before arduino were convinced they are too stupid for mcu and electronics, programming etc.22:00
rohbut arduino made the start so easy that they developed fun hacking on stuff, even writing libs and so on.22:01
rohfun is a much better motivator than money or anything else22:01
rohespecially electronics guys who can't program yet can use it as a huge booster to get started22:02
whitequarkit is not bad that it lowers the barrier. it _is_ bad that it makes people think that everything in the world can be done with a certain amount of arduinos22:02
whitequarkI'm not that good in hardware, so I will show you a very real example from software.22:02
rohthey understand all the parts etc. but the sw barrier is lowered and removed and they can explore step by step22:02
rohsomebody who thinks everything in the world can be done with a certain amount of arduinos is plain stupid. havent heard that before22:03
whitequarkthere's Ubuntu and it is good and stuff. And it has some of its core components written in Python, presumably because the author of them was a "Python programmer" and no one bothered to step in and stop him.22:03
whitequarkand then Ubuntu work_ed_ (that was in 2009, I think they fixed that long ago. But it was so for a year or like that) way faster after I've added * * * * * killall -9 python in my crontab.22:03
rohbbl. need to run (fetch food)22:04
whitequarkso with arduinos. they're an excellent learning tool -- I myself recommend them each time, but hell it is so wrong to think that world ends on arduinos, or on a particular kind of MCU used in arduino, or in a particular form-factor of Arduino shield22:05
whitequarkand still this mindset is surprisingly prevalent in arduino-related world22:05
whitequarkthere, they go and put three avrs where one STM32 would suffice and you still will have some room (yes, that UAV. this is the project which my high school teacher currently leads. I know the hardware requirements, and I know for sure that it could fit in one STM32. And still...)22:07
lindi-_we just bought some 30 arduino mega 2560 boards and ethernet shields for to replace custom ISA cards :)22:08
lindi-_(need a lot of spares so that we can stick to this solution for the next 10-15 years)22:08
whitequarkdo you connect arduinos to ISA slots?22:09
whitequarkor what?22:09
lindi-_no, the previous solution was based on ISA cards22:09
whitequarkwhat did the ISA cards do?22:09
lindi-_now that ISA is getting quite obsolete it's time to port the system to new hardware22:09
whitequarksome kind of industrial automation?22:09
lindi-_sort of, I work in a radio observatory22:10
lindi-_ADC, PWM generation, plain digital IO to hundreds of little switches here and there22:11
lindi-_we are also looking at ethercat enabled motors make everything just talk ethernet/ethercat22:13
whitequarklindi-_: if the tiny bandwidth the avr ethernet solutions provide is sufficient for you, then it's fine22:14
whitequarkapart from ethernet, that's what atmel shines at22:14
lindi-_whitequark: yeah the protocol used by the ethernet shields is kind of inefficient22:15
lindi-_you need to send four bytes over SPI per every payload byte22:15
lindi-_but since everything is modular like this we might be able to upgrade in the next 10 years :)22:15
whitequarkif it is not, I personally would go with this premade board (http://olimex.com/dev/stm32-p107.html, 40 euro/part, 1st link in Google. there may be better ones.) or made my custom ones. the latter would even be cheaper.22:16
lindi-_currently there's some industrial x86 box that has some PCI-ISA bridge where we see lockups when the temperature drops below 17 C22:16
lindi-_whitequark: the problem is that people need to be able to understand and debug these in the future too22:17
lindi-_whitequark: we do have a custom board that adds more accurate ADC chip to the arduino as a non-standard shield22:19
lindi-_(so we can have both ethernet shield and our ADC shield at the same time)22:19
whitequarklindi-_: it depends on the kind of people which will need to work on the system. if that's someone who has several years of experience with EE, then it will not be hard, provided you'll make all of the documentation available. if that would be a side job of someone whose main task is something sky-related, then you have a problem anyway22:21
lindi-_whitequark: as usual we are understaffed of course22:24
lindi-_the ISA cards had some PLD chips that could only be programmed by running some ancient version of windows, I think AVR is a lot better in this regard :)22:25
whitequarkquite definitely22:25
lindi-_and nobody knew about version control so you never knew which version they actually ran22:25
whitequarkyour problem isn't within the hardware then, and it cannot be solved by different kind of hardware--only postponed22:26
lindi-_anyways, this decision was definitely not easy. we did explore many alternatives like fpgas22:26
whitequark(hides from wpwrak) fpgas are not the right thing for this imo22:27
lindi-_whitequark: I guess windows just was hostile towards version control use in the 1990s22:27
whitequarkso it wasn't maintained for the last 10 years?22:27
lindi-_correct :)22:27
lindi-_I think there were maybe two bugfixes22:28
whitequarkwell, if you will hit the ceiling on ethernet bandwidth, then you will be an unfortunate example for my words. if not, you were lucky.22:29
lindi-_most of the stuff doesn't really require much bandwidth, the ADC stuff is the largest challenge but I think we did the math and benchmarks22:30
whitequarkit's ethernet anyway, so if the network is heterogenous, you'll be able to replace underperforming nodes with something different22:32
whitequarkif this wasn't in Science, I'd say that it is april fool's joke22:52
wpwraki sense that there will be enormous demand for this in russia :)23:11
whitequarkyou sense it right23:13
wpwrakwhy ? it will improve the health of the population. great reduction of back pain from carrying those heavy low-grade vodka bottles. with the graphene-enhanced high-grade vodka, the bottles will be much lighter and easier to carry around.23:15
wpwrakkinda like mobile phones got smaller with time ;-)23:15
DocScrutinizerlindi-_: just do a "push *" as the first few cmds in your wd-irq23:44
DocScrutinizerthis way you should get all the registers in your memory dump23:45
DocScrutinizeror did I miss something?23:47
lindi-_DocScrutinizer: I have no wd irq23:49
DocScrutinizererr, what else does wd then? simple hard reset?23:49
lindi-_DocScrutinizer: reset23:49
lindi-_I think the hardware could also generate an interrupt23:50
lindi-_but interrupts are disabled according to openocd23:50
DocScrutinizerwe're still talking GTA02?23:50
DocScrutinizerfsckng samsung SoC23:51
lindi-_there's a task in "R" state, it is in svc mode and asm_do_IRQ gets called a few times per second23:51
lindi-_openocd unfortunately seems so incomplete that I'm not sure what to trust23:51
lindi-_DocScrutinizer: I guess it could be configured to generate an FIQ too23:52
lindi-_I guess I could put my two jtag boards to use so that I can compare both working and non-working states :)23:54
lindi-_I was assuming that IRQ handler would run in irq mode and not svc mode23:54
DocScrutinizeranyway if you got problems with GTA02 IRQ, check the rotten braindead IRQ service code23:54
DocScrutinizerit's about the most fsckdup code I've ever seen23:54
lindi-_I doubt I have the time to understand that fully23:54
DocScrutinizerenabling edge IRQ on both edges, then reading in the GPIO(!!!) to determine the current state and compare to a sored value to see what to do23:55
--- Sat Jan 28 201200:00

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