<qwebirc35353>
wpwrak: Hey, This what I got when I booted my 16GB sd card, with first partition 2GB ext2 type:  File not found /boot/uImage  Wrong Image Format for bootm command  Error: can't get kernel image!
<wpwrak>
hmm, rafa ?
<wpwrak>
qwebirc35353: i haven't played with booting from uSD on the ben yet, so this message doesn't ring any bells
<qwebirc35353>
wpwrak: gotcha
<qwebirc35353>
rafa: you still there
<wolfspraul>
qwebirc35353: hmm, so if that is the same bug like the u-boot ext2 filesystem bug I have in mind, then it means it may be related to a large block size or something else that is large on the 16gb card, irrespective of the partition size.
<qi-bot>
[commit] Werner Almesberger: manu/Makefile were highly redundant. Moved their content to a common Makefile. http://qi-hw.com/p/eda-tools/ac7ebdd
<wolfspraul>
we are on this bug, but I cannot promise it's fixed in a day or so. Let's see when xiangfu is back what he has found out about it lately.
<wpwrak>
12629 parts now
<qwebirc35353>
wolfspraul: ok, then I will try my 4 GB sd card then
<kyak>
hmm.. i wonder why process '/bin/sh /etc/init.d/rcS S boot' never exits
<kyak>
it just sit there all the time, eating 1.3M of memory
<wolfspraul>
hmm. in OpenWrt?
<kyak>
wolfspraul: yes
<kyak>
do you see it?
<wolfspraul>
I ran some nand testing no rootfs right now :-)
<wolfspraul>
but if that process is really there and has nothing to do, seems like we can recover 1.3M :-)
<kyak>
indeed we can
<kyak>
when i compare with openwrt on linksys router, this process exits
<kyak>
might be that one of the initialisation scripts is not exiting correctly
<kyak>
also, i would get rid of logger and klogd (thus freeing another 2.6 Mb of memory)
<kyak>
they are useless most of the time and can be activated on demand, when one needs to debug something
<kyak>
xiangfu: hi
<kyak>
xiangfu: i think there is a problem with fnkeys
<kyak>
it has no facility to daemonize, therefore it is started as 'fnkeys $DEVICE_PW &' from /etc/init.d/fn-handle
<kyak>
but this way, /etc/init.d/fn-handle wait forever for fnkeys to exit
<kyak>
thus, '/bin/sh /etc/init.d/rcS S boot' and 'logger -s -p 6 -t sysinit' are also hanging there forever
<kyak>
logger is blocked in read()
<kyak>
in total, there are two additional processes that should not be there after the system is booted: '/bin/sh /etc/init.d/rcS S boot' and 'logger -s -p 6 -t sysinit'
<kyak>
xiangfu: the way around it is to start fnkeys this way: start-stop-daemon -S -x /usr/bin/fnkeys -b $DEVICE_PW
<xiangfu_>
kyak: Hi. thanks for report.
<xiangfu_>
kyak: let me boot my nanonote. test it again. :)
<kyak>
xiangfu_: sure
<kyak>
btw, i also got rid of unused tty's, syslogd and klogd - not it;s using less then 13 Mb after boot
<kyak>
*now it's
<kyak>
this is with mmc, ubifs:data mounted and one login session via ssh
<xiangfu_>
so you think the  syslogd and klogd is useless for NanoNote. do you think we should disable them by default ?
<kyak>
i decided to disable it for myself, i'm not sure it is better for everyone
<xiangfu_>
kyak: ok. let's just keep them there by default. in fact I never check my pc logs.  :)
<kyak>
i check them on my PC only when i have some problems and need to debug something
<xiangfu_>
kyak: now the "/bin/sh /etc/rc.common /etc/rc.d/S99start boot" exit after run gmenu2x.
<xiangfu_>
kyak: dinner time, back later.
<kyak>
bon appetit
<kyak>
xiangfu_: with the "&", the /bin/sh /etc/init.d/rcS S boot and logger are still there...
<kyak>
this only makes the gmenu2x detach from terminal, but doesn't really allow the parent terminal to exit
<kyak>
and so it waits... eating precious memory
<wpwrak>
it may help to always have a bit of swap enabled. just to get rid of hardly ever used pages. (of course, avoiding to have them in the first place is even better)
<wpwrak>
is it possible to swap to ubifs ?
<kyak>
why not?
<kyak>
i have a swap on sd card
<kyak>
but i'd still like to fight for free RAM
<wpwrak>
(sawp on ubifs) sometimes, when the system tries to evict pages in a memory shortage, complex subsystems can't be used to write the data, because they need to allocate significant amounts of memory on their own to do their work. swap over nfs comes to mind.
<wpwrak>
ubifs certainly qualifies as "complex". but i don't know how bad it is with memory. e.g., if it figures it needs to migrate the block it's trying to swap to, what happens ?
<wpwrak>
(fight for free RAM) definitely a good idea. i'm just saying that having a bit of swap around can ease memory pressure even more.
<kyak>
xiangfu_: i use this line "SDL_NOMOUSE=1 start-stop-daemon -S -x /usr/bin/gmenu2x -b" (no need for source /etc/profile) and edit /usr/bin/gmenu2x to have "#!/bin/sh" as first line
<kyak>
xiangfu_: now there are only two processes related to gmenu2x and others are exited
<kyak>
now a good idea would be to get rid of that wrapper /usr/bin/gmenu2x at all
<wolfspraul>
wpwrak: reading through boom... just something to think about: for inventory, it might be a good idea to keep lots of the exact same components, acquired from different sources, separately
<wpwrak>
wolfspraul: (edif) kinda like the fragmented Unix world before POSIX gave them a standard and Linux increased the pressure enormously
<wolfspraul>
this may not be part of the boom/shopping list problem, but I still wanted to mention it
<wolfspraul>
sometimes there is also something like -ES (engineering sample) where the vendor says:
<wolfspraul>
a) this component can only be acquired in low quantities as -es
<wpwrak>
wolfspraul: yes, mean same = same manufacturer but different distributor ?
<wolfspraul>
b) there may still be bugs, or maybe not, no guarantees
<wpwrak>
err .. s/yes,/you/
<wpwrak>
(was about to write something different, then changed course in mid-sentence :)
<wolfspraul>
yes different place you bought from
<wolfspraul>
if it's the same part from the same source, maybe it can always be lumped together? I haven't seen a reason yet where it would need to stay separate.
<wolfspraul>
some parts have requirements like "use within x days" though.
<wpwrak>
-es could just be a different part number. then you can say (or not) that foo equals foo-es well
<wolfspraul>
sure sure, your system is very flexible since it's spread out like a relational database
<wolfspraul>
I just wanted to write what went through my mind.
<wolfspraul>
so sometimes you have a sealed bag, and after opening you need to use the parts within 5 days
<wolfspraul>
probably no need to factor this in, but it can affect planning, sometimes
<wolfspraul>
sometimes you can re-seal the unused ones, but sometimes not, depends on your equipment too
<wpwrak>
(equalities) i don't have one-way equalities, though. e.g., some part that has the same footprint but a different package size. you could use the smaller package in a design for the larger but not vice versa
<wolfspraul>
then you sometimes have date codes, which you may or may not want to track or factor in
<wpwrak>
(best-before date) yes, that's something a factory inventory needs. not sure if this really ought to be part of boom, though
<wolfspraul>
agree
<wolfspraul>
we need to focus
<wpwrak>
(factory inv) e.g., the factory could simply generate an inventory with parts effectively available
<wolfspraul>
I want this thing to be able to serve as our shopping tool for our handful of designs asap
<wpwrak>
(track) i think the factory basically wants to track every item. when ordered, when arrived, who checked it, where was it stored, when was it taken out and by whom, how much was used, when did it go back, etc.
<wolfspraul>
so with datecodes, if you have older datecodes and newer datecodes, you may either first take the older ones (if it's your own inventory), or you may take the newer ones (if you are comparing two distributors you are buying from)
<wolfspraul>
well it depends
<wolfspraul>
there needs to be a business reason
<wpwrak>
for exmaple, you may get bad lots
<wolfspraul>
and things need to be re-evaluated too, no need to continue with some system that has long lost any connection to reality
<wpwrak>
"discard all cpus delivered from source X between dates Y and Z"
<wolfspraul>
then I read about the KiCad workflow a little more
<wolfspraul>
remember a while back we tried to identify original vs. generated files
<wolfspraul>
back then you said the netlist is generated, but you weren't entirely
<wolfspraul>
sure
<wpwrak>
you may also have processes that accidently damage parts. also, if you check things in and out, you have a semi-automatic record. better than people editing the "days left" field manually in the database :)
<wolfspraul>
so from reading some texts (haven't tried it), it looks like the netlist is first exported from eeschema, but when you start working with cvpcb, cvpcb adds new data to it
<wpwrak>
(netlist) yes. there's the issue of merging in the components (footprints)
<wolfspraul>
at that point you do have original data in the netlist
<wpwrak>
correct. and it writes its data to a .cmp file as well, for use when the netlist gets redone
<wpwrak>
you still have it in .cmp. but it's a mess anyway :)
<wolfspraul>
hmm
<wolfspraul>
so when I delete the .net file, it can recreate it, but only if I first export it again from eeschema and pvpcb still has its .cmp file?
<wolfspraul>
I mean recreate without manual intervention
<wpwrak>
much like the "last application" field in the profile. each time you run anything, that silly field gets updated and with it the file timestamp. so you almost always have an uncommitted change in the profile. highly annoying
<wpwrak>
yes, that would be the process
<wolfspraul>
then the .net file including footprints is imported into pcbnew?
<wpwrak>
yup
<wolfspraul>
pcbnew will only read it once, then store the board data in its own files?
<wpwrak>
hmm. not sure. trying ...
<wpwrak>
yeah, remembers the netlist somewhere
<wolfspraul>
or will pcbnew want to open the .net file w/ footprints every time you open the board?
<wolfspraul>
ah sorry I should try myself...
<wolfspraul>
I'm just reading through all this trying to make sense of it.
<wolfspraul>
the KiCad bom file that boom starts with is coming from pcbnew? I can only see a .csv bom export there, is it that one?
<wolfspraul>
hmm, OK
<wolfspraul>
so the .net is really a 'transient' file, for all parties
<wolfspraul>
like a hub
<wolfspraul>
:-)
<wolfspraul>
my client shows several minutes lag, not sure this gets through...
<wolfspraul>
another question - what is the workflow with fped? fped has a .fpd file, how does the .fpd file relate to the .cmp and .net files in the normal cvpcb process?
<wolfspraul>
is fped used before/after/instead of pcpcb?
<wolfspraul>
sorry pvpcb
<wpwrak>
(bom) comes from eeschema
<wpwrak>
(lag) it arrived in a big wave :)
<wpwrak>
fped generates .mod files, nothing to do with .cmp and .net
<wpwrak>
the netlist says how things connect electrically. cmp says which component (U1, R123, etc.) has which footprint (0603, 256BGA, etc.)
<wpwrak>
.mod files define the drawings on the various layers that make up the footprint. and it also defines where the pins/pads are located.
<wpwrak>
fped -k infile.fpd outfile.mod  converts from .fpd to .mod (or you can do it interactively with File>Write KiCad)
<wpwrak>
(waiting for your lag :)
<wpwrak>
... or disconnect :)
<wpwrak>
;-)
<wpwrak>
desperate means :)
<wolfspra1l>
not much better, oh well
<wpwrak>
i'll retransmit
<wpwrak>
(bom) comes from eeschema
<wpwrak>
(lag) it arrived in a big wave :)
<wpwrak>
fped generates .mod files, nothing to do with .cmp and .net
<wpwrak>
the netlist says how things connect electrically. cmp says which component (U1, R123, etc.) has which footprint (0603, 256BGA, etc.)
<wolfspra1l>
yes, didn't see it in the menus but I do see it as a toolbar icon now
<wpwrak>
.mod files define the drawings on the various layers that make up the footprint. and it also defines where the pins/pads are located.
<wpwrak>
fped -k infile.fpd outfile.mod  converts from .fpd to .mod (or you can do it interactively with File>Write KiCad)
<wpwrak>
(waiting for your lag :)
<wpwrak>
* wolfspraul has quit (Ping timeout: 265 seconds)
<wolfspra1l>
do you leave the default settings in the bom export dialog in eeschema?
<wpwrak>
yes, i think i do
<wolfspra1l>
I have checked, by default: Components by reference, Components by value, Output format: List
<wolfspra1l>
everything else is unchecked
<wpwrak>
most important: footprint and all user-defined fields
<wolfspra1l>
unchecked or checked?
<kristianpaul>
wolfspra1l: hey
<wpwrak>
checked
<kristianpaul>
sorry replied in wrong channel
<kristianpaul>
wolfspra1l: (rename)Â Â sure go ahead
<wolfspra1l>
oh
<wolfspra1l>
they are unchecked by default
<wolfspra1l>
you say they should all be checked?
<wolfspra1l>
Footprings, and All existing users fields?
<wpwrak>
ah, interesting. here they are checked. System Field: Footprint and Users Fields: All existing users fields
<wolfspra1l>
there is also a separate list of User Field 1..8, but I guess they are included in 'All existing users fields'
<wpwrak>
yup
<wolfspra1l>
I will try to switch to your bzr 2448 version asap, just haven't gotten to it yet
<wolfspra1l>
do you know that there is also a bom export in pcbnew?
<wpwrak>
(let's hope these settings are not some obscure per-user preferences. kicad has its defaults scattered over a bit too many places for my taste)
<wolfspra1l>
actually the one in (my) eeschema has no menu item, toolbar icon only, argh
<wolfspra1l>
I need to watch every little button and icon in KiCad
<wpwrak>
nice :) didn't know that one. naturally, the format is different as well ;-)
<wolfspra1l>
well
<wolfspra1l>
don't complain
<wolfspra1l>
if KiCad has an obsession with myriads of different file formats, I think boom is a strong contender
<wpwrak>
i'm doing my worst :)
<wpwrak>
alas, there are really tons of different things that go into BOM processing. i could hide a few, but only about 1-2
<wolfspra1l>
no no it's good
<wolfspra1l>
you try to keep separate things separate, let the computer do some work
<wolfspra1l>
it's good
<wolfspra1l>
kristianpaul: renamed, thanks
<wolfspra1l>
you could add storage costs (for inventory you already own), hey, even currency fluctuations! :-)
<wolfspra1l>
at some point the weather forecast will require less computational power than boom trying to squeeze out the last penny
<wpwrak>
yeah. all those n-dimensional optimization problems have very interesting computational complexity :)
<wpwrak>
(currency) boom keeps currencies apart. if you buy from digi-key and farnell, you get your shopping list with a total in USD and UKP. for deciding what's cheaper, i think i just compare the numbers :)
<wolfspra1l>
you can try xe.com maybe they have a nice API
<wolfspra1l>
:-)
<wolfspra1l>
if you like
<wolfspra1l>
about EDIF - so it's totally dead for our purposes?
<wolfspra1l>
I saw the syntax having a lot of parentheses, and you mentioned a new KiCad format would be lisp-like...
<wolfspra1l>
does KiCad support any edif import or export?
<wolfspra1l>
or can I just totally forget about EDIF?
<wpwrak>
(edif) the format kicad will migrate to looks similar. but i think many of the ideas are based on some other proprietary format. at least for the board files.
<wpwrak>
components (symbols) may be new semantics, also in a lisp-ish syntax. so in a very indirect way, there may be an EDIF influence
<wpwrak>
but i'll be kicad-"openly proprietary" in the end
<wpwrak>
(xe.com) i'll pass :) if you crave perfection, you also need the exchange rate that gets applied to you, not some interbank rate :)
<wolfspra1l>
you mean "it'll be openly proprietary" or "I'll be openly proprietary"?
<wolfspra1l>
well I would assume the format will be all open, no? you mean they borrowed some ideas from a proprietary format?
<wpwrak>
"it'll" :)
<wpwrak>
it'll be proprietary in the sense that it's defined via a product (kicad)
<wpwrak>
i'll be open in the sense that you can of course find out how it works. there will also be documentation.
<wolfspra1l>
the one they have now is not kicad-specific?
<wolfspra1l>
or you just mention the 'proprietary' aspect because I mentioned EDIF?
<wpwrak>
the current one is of course VERY kicad-specific :)
<kristoffer_>
wpwrak, you dont happen to know the difference between the different bitblitting operations?
<wpwrak>
kristoffer_: oh, i don't even know where to look for different bitblitting ops :)
<kristoffer_>
wpwrak, nevermind I think I understand now :)
<wpwrak>
kristoffer_: but if it's something in some data sheet (?), perhaps i could help with interpreting it
<wpwrak>
(understand) even better ! :)
<kristoffer_>
wpwrak, I was trying to figure out the difference between copyarea vs imageblit, but think I got it :) Havent worked on the driver in a year and its always weird looking at the docs again
<qi-bot>
[commit] Werner Almesberger: Added sanity check for characteristics and corrected omissions/errors found. http://qi-hw.com/p/eda-tools/bf2e9f2
<qi-bot>
[commit] Werner Almesberger: test.sub now better catches typos and supports more capacitor parameters. http://qi-hw.com/p/eda-tools/d31ede8
<qi-bot>
[commit] Werner Almesberger: boom/mbq2lst: recognize #END comment (as end of file, like in the BOOM parser) http://qi-hw.com/p/eda-tools/b552026
<qi-bot>
[commit] Werner Almesberger: For consistency, renamed captol.inc to ctol.inc. Rs now use rtol.inc instead of http://qi-hw.com/p/eda-tools/6ce7ea1
<qi-bot>
[commit] Werner Almesberger: Generate script boom-config that lists all the database paths, like pkg-config http://qi-hw.com/p/eda-tools/0a86c10
<qi-bot>
[commit] Werner Almesberger: It's now easy to get a list all the files, so we don't need dist/all.* anymore. http://qi-hw.com/p/eda-tools/41ae009
<qi-bot>
[commit] Werner Almesberger: eda-tools now has all the R and C we need here. Removed local database. http://qi-hw.com/p/ben-wpan/265ba07
<qi-bot>
[commit] Werner Almesberger: Use prettyord -t plus a tiny bit of shell to do what SHOW_PRETTY did. http://qi-hw.com/p/ben-wpan/2dec646
<wolfspraul>
wpwrak: feedback about boom/README (svn om location): in line, it says "reference number" but in most other places it says "part-number", if that's what you mean here
<wolfspraul>
sorry line 262
<wolfspraul>
also it first says "supplier" and then (namespace), everywhere else it just says "namespace" which is explained earlier.
<wolfspraul>
but why is it reference number and not part-number?
<wpwrak>
just a small inconsistency :)
<wpwrak>
the key here is that each item is identified by the name of the name space plus the name in that name space. kinda like directory/file
<wolfspraul>
sure, I did get it, but since all other places say 'namespace part-number' group, I guess it shouldn't be 'reference number' here
<wolfspraul>
unless you fell at that point whoever is actually reading this should be subjected to a little confidence test
<wpwrak>
as i said, an inconsistency. not one that'll live much longer :)
<wolfspraul>
the documentation is great, no worries
<wolfspraul>
I've seen much worse
<wolfspraul>
it's actually possible to read through the and get a good start - nice
<wolfspraul>
some of those perl scripts are quite complex
<wolfspraul>
I hope that there will be little need to modify them, in other words that they are properly abstracted from 'simpler' concepts like stock levels, costs, etc.
<wolfspraul>
I think they are, so that's good.
<wolfspraul>
if every little stock inconsistency or the inevitable unforeseen/manual intervention will force someone to go into those complex perl scripts, then the system as a whole will become unusable
<wolfspraul>
of course you know that already, just my feedback after starting to read...
<wolfspraul>
I remember when I watched gta02-core from the distance I saw you working on this bom stuff and I thought now you are completely nuts.
<wolfspraul>
:-)
<wolfspraul>
but alas, I was wrong
<wpwrak>
(nasty perl) don't worry, all those perl scripts are doomed. the algorithms will get a lot more complex and things need to get more efficient. so all this will have to become C. well, except some external interfaces, digi-key catalog queries and such. they can be in any language.
<wpwrak>
(though there are performance issues as well - the way i currently cache queries has a O(n^2) rebuild-from-cache complexity. not nice.)
<wpwrak>
(nuts) heh ;-)
<wolfspraul>
I didn't know you were that familiar with Perl.
<wolfspraul>
I mean that's a level where the casual copy/paste approach to 100 different scripting languages won't work anymore.
<wpwrak>
there's a fair amount of "new" perl i used there. for the nested data structures.
<wpwrak>
otherwise, it would have been completely unmanageable
<wpwrak>
(copy&paste) naw, the core needs a real language. also the parser for .sub files is quite marginal. full of hacks to keep it from falling over.
<wpwrak>
and it does get confused in some cases. luckily, so far not confused enough to cause real trouble :)
<wpwrak>
anyway, that's really a job for lex and yacc.
<wpwrak>
README fixed. thanks !
<wolfspraul>
wpwrak: is the format you expect to get from the kicad bom (.lst file) documented anywhere?
<wolfspraul>
for example do you assume that each reference is unique?
<wolfspraul>
yesterday I told you by default I have both 'components by reference' as well as 'components by value' checked by default
<wolfspraul>
that creates 2 lists, just after each other
<wolfspraul>
do you need the 'components by value' list? or should that in fact be unchecked?
<wolfspraul>
and since we are at it - the checkbox "Sub components" is unchecked by default for me, I guess that is right...
<wolfspraul>
what are the reasons for not using the .csv bom that comes out of pcbnew (other than you not being aware of it and having implemented the parsing for .lst already)
<wolfspraul>
the good about the .csv out of pcbnew is that there is no dialog, i.e. less things to do wrong
<wolfspraul>
I don't like that Quantity field, seems redundant to the comma separated Designator field (I'm talking about the columns in the .csv bom)
<wolfspraul>
other than that it looks like the .csv also has all data boom needs?