#qi-hardware IRC log for Tuesday, 2014-05-27

nicksydneyhave a linux kernel question...01:03
nicksydneyi've read about HW breakpoint and still not sure i understand completely about this...is HW breakpoint available for most ARM architecture ?01:04
nicksydneyso the photo paper does work for pcb etching but the way to do it is to spray the pcb with water and iron continously https://www.youtube.com/watch?v=N3DGbwVXyN801:50
wpwraksounds complicated :)01:51
nicksydneythat's what experiment all about :) complication :)01:55
nicksydneyif i do fine traces i will use blue paper and if the traces are bit wider than 0.25mm than will use yellow paper :)01:59
nicksydneysolder mask http://www.seeedstudio.com/wiki/Solder_Mask_Ink ... need to try this one dauy02:05
nicksydneyit needs UV light 02:05
DocScrutinizer05((is HW breakpoint available for most ARM architecture ?))  basically yes02:09
DocScrutinizer05it depends on type of ARM core, but afaik cortex have several hw breakpoints02:10
DocScrutinizer05it's basically pretty simple: a comparator on address bus of RAM02:10
nicksydneyDocScrutinizer05: so if the IC support hw breakpoints that means we could single-step code like how normal debugging process works ?02:10
DocScrutinizer05among other nice things. You also can trap any read/write access to a specific RAM location (think variables access)02:11
DocScrutinizer05even ranges of adresses02:11
nicksydneyso for IC that have Linux support in it to use HW breakpoint we need to enable it correct ? 02:12
nicksydneyi meant enable in the Linux config02:12
DocScrutinizer05Linux support?02:12
DocScrutinizer05hw breakpoints are independant of tghe software that runs on the CPU02:13
nicksydneyohhh ok....so to enable it don't we have to do something first ?02:13
DocScrutinizer05usually I used them via JTAG and Lauterbch02:13
DocScrutinizer05Lauterbach even02:13
nicksydneyahhhh ok02:13
DocScrutinizer05you also can enable them "on board" or maybe I should call that "endocrine"02:14
nicksydneyso you mean that with JTAG (if the pin is exposed on the board) we could use HW breakpoint 02:14
DocScrutinizer05you also can use Embedded Trace Macrocell02:14
DocScrutinizer05(but even that also is usable "endocrine", from within the traced OS)02:15
nicksydneyi have got a board that have pin that says JTAG1 and it has 20pins does that sound correct ?02:15
DocScrutinizer05ETM does log the last maybe 2k of program code (actually it only traces branches, since everything else is static. It also can trace data)02:16
DocScrutinizer05kinda correct, yes02:16
DocScrutinizer05http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ihi0014q/index.html  <-ETM02:17
nicksydneythanks DocScrutinizer05 will do some more reading on ETM and JTAG 02:17
DocScrutinizer05basically here you already have your "breakpoints" (though for ETM here): http://infocenter.arm.com/help/topic/com.arm.doc.ihi0014q/BABHCEED.html02:19
DocScrutinizer05your basic "breakpoint" is a "Instruction execute" single address comparator02:22
DocScrutinizer05when you have a good car, you may sell it to buy this critter ;-)02:37
DocScrutinizer05http://www.lauterbach.com/frames.html?adflex.html cost ~200EUR iirc02:39
DocScrutinizer05of course you want http://www.lauterbach.com/powertrace2.html and http://www.lauterbach.com/powerdebug2.html  and a few more little gadgets connected like http://www.lauterbach.com/icretm.html02:42
DocScrutinizer05such a monster costs real money02:42
DocScrutinizer05but sure, a http://www.tincantools.com/wiki/Flyswatter will do for a start02:43
DocScrutinizer05it all depends on the software in the end of the day02:44
DocScrutinizer05the lauterbach has ultrafast RAM buffer and whatnot, but you don't really need such stuff for *simple* debugging02:44
DocScrutinizer05e.g. ETM data is absolutely useless without proper software tools to read it. it's just a list of addresses in memory and timestamps and condition flags that tell you about the way a conditional intruction at that addr got executed (e.g. "less than zero" or not)02:50
DocScrutinizer05the non-conditional instructions in between don't get traced02:50
DocScrutinizer05so you need to merge that ETM buffer info with you a priori knowledge about the code on your target02:51
DocScrutinizer05the most simple tracing method is single step (either automatic or manual), in which case the CPU gets a software- or hardware-generated interupt after execution of every single intruction. Then a special monitor program on the _target_ analyzes the stack to check where the program pointer points to, and reads the instaruction at that point and writes it to a trace-logfile (basically)02:54
DocScrutinizer05then the debug monitor code does a "return from interupt" which makes CPU execute next intruction of code inder supervision, and then the next interupt happens02:55
DocScrutinizer05the software variant replaces the code by a software interupt instruction one at a time, and then on next cycle restores the original instruction at addr N and changes addr N+1 to an nterrupt instruction02:56
DocScrutinizer05with an address comparator hw breakpint you don't need that nasty sw breakpoints/interrupts - which is really nice since sometimes the restoration of code fails for some reason and you get stale software breakpoints of which the original code got lost. So you need to start all over again02:58
DocScrutinizer05and ETB/ETM is outright awesome, since you can know exactly what were the last maybe 10k of instructions the CPU did *before* it (for example) wrote 0 to that pointer you placed your breakpoint at ("data store only" hw data value comparator)03:01
nicksydneythanks DocScrutinizer05 will buy something simple first for now and once i 'master' it than will move on to invest in something more expensive :)03:18
nicksydneyand also need to invest on scope as wpwrak has suggested to me .. still collecting though :)03:18
DocScrutinizer05to start with, the cheapest JTAG adaper you can find will do03:31
DocScrutinizer05finding good software probably is harder (though I never really checked, I always had first class software and JTAG tools, like Lauterbach, so I don't know much about what's available)03:33
DocScrutinizer05basically you could use Lauterbach software with the cheapest JTAG adapter you can find, just you can't run Lauterbach software without licence key and dongle03:34
DocScrutinizer05http://www.ebay.com/sch/i.html?_kw=Lauterbach+Trace32  :-). The cheapest ones are not even sooo expensive03:37
DocScrutinizer05however beware of "what you see is what you get" that probably come without licence and thus are simply useless03:39
DocScrutinizer05LOL yeah  >>* License is valid until the March of 2011.<<03:47
nicksydneymaybe can look at open source alterantive like OpenOCD03:54
DocScrutinizer05anyway, this might be well worth a try:  http://www.lauterbach.com/download.html03:54
nicksydneythe world is really full of f**** up people http://www.businessinsider.com.au/how-a-technicality-led-to-ebay-killing-a-40000-bidding-war-over-this-scrap-of-paper-with-the-written-on-it-2014-503:59
nicksydneybig GOOGLE is watching you now https://www.theinformation.com/Google-Eyes-Home-Security-Dropcam04:00
DocScrutinizer05nicksydney: http://www2.lauterbach.com/download/simarm.zip04:04
DocScrutinizer05nicksydney: when you have a wondoze OS on a fast PC, you'll love this trace32m*.exe program. And iirc it uses trace32-view frontend which also should be able to run (maybe with another one of the free files from Lauterbach) with any arbitrary JTAG adapter, as long as you can configure it04:08
Action: DocScrutinizer05 idly wonders if Lauterbach made a linux version of trace32view04:10
DocScrutinizer05oops, trace32-powerview is the name04:10
DocScrutinizer05http://www.lauterbach.com/icretm.html  is the config I used to debug the NovaThor04:18
DocScrutinizer05actualy I worked with the Thorium modem04:23
DocScrutinizer05don't think I ever seen a NovaThor chip04:23
DocScrutinizer05though... 04:25
DocScrutinizer05\o/ :-D http://www.xperiablog.net/2014/01/27/st-ericsson-novathor-u8500-chipset-source-code-leaks-gives-hope-to-xperia-go-p-sola-and-u-owners/04:28
DocScrutinizer05meh, I bet that's the android code04:30
DocScrutinizer05>>On November 21, 2012, it was announced that ST-Ericsson had joined the Sailfish Alliance hence NovaThor ModAp platform would support Jolla's smartphones and Sailfish OS.[6]<< HAHAHA04:32
DocScrutinizer05AAAH yep, NovaThor L9540 been it, actually the "external Thor M7400 modem"04:36
DocScrutinizer05and the NovaThor U850004:37
nicksydneyDocScrutinizer05: yup that's the Android cod05:25
wpwrakplan B would be to develop debugging strategies that don't need so fancy tools. a bit of gdb (and JTAG) and thinking go a looong way08:35
wpwrakthere are situations where you need more complex tools, but you may not run into these for a good while yet08:35
wpwrakalso, some of those fancy tools are made to solve workflow issues that you can easily avoid. e.g., by not used closed source :)08:36
nicksydneywpwrak: http://atmelcorporation.wordpress.com/2014/05/26/atmels-sam9-powers-cosino-prototyping-platform%E2%80%A8%E2%80%A8/10:19
eintopfatmel >:-|10:26
wpwrakhere we have a picture of eintopf going into battle against atmel: images.v-media.eu/diablo-3/d3_reaper_of_souls-banner.jpg10:31
ysionneauarm926 are not so bad actually10:36
eintopfwpwrak: :-)10:36
wpwrakysionneau: his hatred is more directed towards the 802.15.4 chips than the ARMs, as he is getting more acquainted with their dark side :)10:37
nicksydneyeintopf: why you don't like Atmel ? any particular reason ? :)10:43
nicksydneywpwrak: you need this for your arsenal http://www.newfrog.com/p/12pcs-car-radio-door-clip-panel-trim-audio-removal-pry-repairing-tool-kit-plastic-32916.html  :)10:44
nicksydneynot sharing any technical books but in case if someone has interest on something non-technical http://www.publish.csiro.au/catalogues/Stocktake_Sale_2014.htm10:45
wpwrakso that's what they call lockpicks these days ;-)10:48
nicksydneythese days or those days ? :)10:53
nicksydneyman some fighting going on in arm-netbook mailing list11:03
ysionneauwpwrak: is the dark side the ball side ? :)11:04
wpwrakysionneau: those rf chips have no balls11:07
ysionneauthat's a shame :(11:10
Action: ysionneau goes back to his rf chip11:10
nicksydneywpwrak: in kicad most of the labelling for component (D2, R2, etc) it is on the Cmts.User layer..any way to instruct it to put on Silkscreen ?13:12
wpwrakthat's something i need to look into. i noticed that it sometimes doesn't seem to go where i want it to go. i had it working in the past, though.13:17
wpwrak(seem) perceived indirectly - my home-made pcbs don't don't have silk screen anyway13:17
nicksydneyfound this but can't seem to make it work http://electronics.stackexchange.com/questions/57195/put-component-designators-on-the-pcbs-silkscreen-in-kicad13:20
wpwrakmaybe check the gerber options13:27
wpwrakwell, plot (gerber/PS/whatever)13:27
nicksydneydid that but no luck13:30
nicksydneyinside the .kicad_pcb file changing the 'layer Cmts.User' to 'layer F.SilkS" works13:58
nicksydneybut why it default to cmts.user13:58
nicksydneywpwrak: it shows when i modify the file by hand http://gerblook.org/pcb/f3XDXcHCgUMvnaBc4Xud3N#front14:33
whitequarkysionneau: your rf chip?17:34
whitequarksomething involving processing on fpgas, I guess?17:34
larscwhitequark: that looks quite good already17:51
whitequarklarsc: the lens? it's pretty bad imo17:53
whitequarkcompared to the factory-made glass ones I've seen, of course :) I'm somewhat of a perfectionist17:53
ysionneauwhitequark: I'm doing a driver for my company's rf chip 18:09
ysionneauI'm learning the RF world :)18:09
ysionneauLTE rf chip18:09
whitequarksounds like pain18:10
ysionneauyes there are literally tons of parameter to play with18:11
ysionneauto select power amplifier gain, bandwidth, frequency, dc offset calibration etc etc18:11
ysionneau256 32bits registers :p18:12
whitequark1) derive a single parameter, like, "RX quality" 2) use a genetic algorithm18:14
whitequarkactually, that sounds just insane enough to work18:14
whitequarkcc DocScrutinizer05 18:14
ysionneauyou got pll/mixer/filter settings18:16
ysionneauyou need to be able to compute the output power taking all the rf chain into account, because the baseband tells you "I want 20 dBm output"18:17
ysionneauyou need to figure out which gains to apply18:17
ysionneaufortunately I am not writting the Layer1 code, so all the scheduling is already done, I just need to control correctly the rf chip :p18:18
larscis this a sigle chip solution?18:28
wpwrakwhitequark: now, make it a bit bigger and then we'll wait for you to announce the first pictures of not only an earth-like planet of a distant star, but also of its inhabitants, waving :)18:29
ysionneaularsc: 1 baseband and 1 rf chip18:33
ysionneauno code running on the rf chip18:33
larscand the specs?18:34
ysionneauwhat do you mean?18:39
larscsampling rate, bw, etc18:41
ysionneaubandwidth can be 20 15 10 5 MHz18:41
ysionneauworking on band A/C/D of LTE18:41
ysionneauit's full analog so no sampling18:42
ysionneauusually we put ADC/DAC between the baseband and the rf chip18:42
larscah ok18:42
ysionneauit does carrier agregation18:42
ysionneaumaybe I shouldn't be giving all those informations :)18:43
ysionneaunot sure what is public or not18:44
ysionneauprobably nothing is public since the rf ic is just out from fab18:44
larscyea, probably not talk about it then18:44
ysionneaumy fault18:45
ysionneaularsc: does your company do lte rf chips?18:47
ysionneauah yes18:48
ysionneauah you got integrated dac/adc18:48
ysionneauactually our next baseband will have integrated dac/adc I think, funny we don't put them in the same chip :)18:49
ysionneauI think we used this rf chip (ad9357) actually :o18:50
larscysionneau: sometimes it's a question of yield18:50
Action: ysionneau trying to translate yield18:51
larscand sometimes it's a question of what can be connected better18:51
larscysionneau: how many of the chips are actually going to work18:51
larscdifferent components on a chip have different failure rates18:51
ysionneauyes ok18:52
larscso if you have a lot of components on one chip and only one fails you have to throw away the whole chip18:52
ysionneauaah yes I see18:52
larscor as they do with cpus sell the quad core as a dual core18:52
ysionneaubut funny that we tend to put adc/dac on BB and your company tend to put it in rf chip18:52
larscwell we don't have a baseband, so its simple ;)18:53
larscour latest and greatest chip is the ad9361, which can also be used for things like LTE18:55
larscpcercuei uses it to run his own radio station though18:55
ysionneauah nice chip!18:57
ysionneaupretty swiss knife kind of rf18:57
whitequarkwpwrak: nope, wouldn't work19:04
whitequarkit doesn't make sense to make a telescope that searches for exoplanets using lenses, as it's incredibly hard to make one with proper characteristics; it deforms under its own weight19:05
wpwrakmaybe if you add some accelerant to the plastic19:05
whitequarknot to mention making such a huge uniform slab of material is incredibly hard in the first place19:05
whitequarkhence all big telescopes are reflectors19:05
wpwraknaw, make it smart, not big :)19:05
wpwrakand don't forget the accelerant. otherwise it'll take years for the light to arrive19:05
whitequarkI believe I recently read an analysis on how to make a telescope that can resolve meter-sized features on exoplanets19:07
whitequarkthe trick is to completely get rid of lenses or mirrors, and use gravity wells for that19:08
whitequarki.e. you assemble a telescope as a set of spacecraft at somewhere around 20 AU, and use the Sun for refracting the light19:08
whitequarkthen numerically reconstruct the picture19:08
ysionneauthat would be the "longer" telescope ever :)19:09
wpwrakso that's what scotty and spock are doing these days19:13
nicksydneywpwrak: read your email in the mailing list and i can contribute my time for anelok .. that's the only thing i can help you with the project :)23:05
DocScrutinizer05(LTE chip) I wonder how that critter is supposed to *ever* pass certification, when it's missing the radio stack and the calibration23:51
--- Wed May 28 201400:00

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