#avr Logs

Oct 27 2017

#avr Calendar

12:06 AM day__ is now known as daey
01:51 AM noHitW_work: morning
01:52 AM JanC_ is now known as JanC
02:48 AM Ameisen: finally got dual register reductions owrking in clang
02:48 AM Ameisen: still need a chart of some kind of what the optimal instruction sequences are for shifting
03:18 AM polprog: im thinking if i could help
03:18 AM polprog: never really used clang
04:38 AM JanC_ is now known as JanC
05:36 AM day__ is now known as daey
06:03 AM szwetsloot: Hey guys. I am trying to output a char array in atmel studio using {sent, s}, but it keeps giving me [51] (51 is the size of the array) instead of the actual string.
06:03 AM szwetsloot: This is the correct format right?
06:06 AM Lambda_Aurigae: szwetsloot, no clue what you are using to output it but looks like you have a pointer/reference issue.
06:06 AM Lambda_Aurigae: need some more information.
06:07 AM szwetsloot: Okay, I am using atmel studio and am working on getting info from a GPS>
06:07 AM szwetsloot: I want to output the GPS sentence (which is stored in sent) to the debug window so I can see how it is doing
06:07 AM szwetsloot: I am doing this using an action breakpoint with string "{sent,s}"
06:08 AM szwetsloot: If I do {sent[0],s} it does work, so you are right about point / reference, but I don't get how to get a string
06:09 AM Lambda_Aurigae: no clue on atmel studio,,,
06:09 AM Lambda_Aurigae: it won't run on my computer.
06:09 AM Lambda_Aurigae: {sent[0],s} makes no sense by itself in C
06:09 AM Lambda_Aurigae: or in assembly either for that matter.
06:09 AM szwetsloot: Ah okay
06:09 AM szwetsloot: No, I think it is atmel studio debugger specific
06:10 AM Lambda_Aurigae: oh.
06:10 AM Lambda_Aurigae: then no clue.
06:10 AM szwetsloot: http://www.atmel.com/webdoc/atmelstudio/atmelstudio.Debug.DebugControl.Expressions.html
06:10 AM Lambda_Aurigae: would have to wait for someone who actually uses windows and atmel studio.
06:10 AM szwetsloot: Heh okay, will do
06:10 AM szwetsloot: Anyone here who is familiar with atmel?
06:11 AM Lambda_Aurigae: I use atmel(now microchip) avr chips all the time.
06:11 AM Lambda_Aurigae: just not atmel studio software.
06:11 AM szwetsloot: You use eclipse?
06:11 AM Lambda_Aurigae: nope
06:11 AM Lambda_Aurigae: vi or gedit or kate.
06:11 AM szwetsloot: Heh, I found a workaround
06:11 AM Lambda_Aurigae: and command line
06:11 AM szwetsloot: &* actually works >.<
06:12 AM szwetsloot: Linux system?
06:12 AM Lambda_Aurigae: yup.
06:12 AM Lambda_Aurigae: linux 100% in my house since 2002.
06:12 AM szwetsloot: I worked with linux on some raspberry pi's, but I don't like it
06:13 AM szwetsloot: Too difficult to work with some programs
06:13 AM Lambda_Aurigae: never had a problem
06:13 AM Lambda_Aurigae: but,
06:13 AM Lambda_Aurigae: I've been a unix user since the late 80s
06:14 AM Thrashbarg: it has many UI problems but it's a good development environment, being UNIXish
06:14 AM Lambda_Aurigae: I have a personal problem with microsoft.
06:14 AM Thrashbarg: ah
06:14 AM Lambda_Aurigae: and refuse to give them any money.
06:15 AM Lambda_Aurigae: I occasionally use windows on a vm here and there...but haven't had to do that in years.
06:15 AM Lambda_Aurigae: everything i need to do on a computer at home I can do on linux.
06:16 AM Lambda_Aurigae: I even switched my wife over to linux...and when the inlaws moved in here and wanted me to support their computer, I made them switch to linux as well.
06:17 AM Lambda_Aurigae: before switching to linux my mother'n'law had to have someone, usually me, work on her computer every couple of weeks.
06:17 AM Lambda_Aurigae: now that she is on linux, I see it twice a year...before they go south for the winter and when they come back...I do updates and check it out and that's it.
06:18 AM Thrashbarg: yeah my mum's old laptop has had Linux on it for about nine years, or thereabouts. It's an old Acer AMD piece of garbage but it still works fine
06:18 AM Thrashbarg: either that or Vista :P
06:19 AM polprog: i think apart from my sister gaming we never use win unless i have to
06:22 AM Lambda_Aurigae: I game on linux!
06:22 AM Lambda_Aurigae: x-plane and eternal lands and planeshift and minecraft and kerbal space program!
06:23 AM Lambda_Aurigae: don't need any other games.
06:23 AM Lambda_Aurigae: and, yes, I bought minecraft before microsoft bought it out.
08:14 AM mmfood: Hi guys. I am a bit confused by the markings on a couple of my radial power inductors. I have one model marked 104 which is the same pysicalk size as another one marked 10. As I understand it these markings are supposed to be in uH so the 10 should be 10uH which is the same value reported in my very simplistic Mtester. But the 104 one is reading 0.1mH which is 100 uH. So the value in the markings seems to be in nH. Is there no industry standard for
08:14 AM mmfood: marking these things?
08:17 AM LeoNerd: I'm not aware of one. Inductors are rare
08:18 AM LeoNerd: I've almost never seen any markings at all on surface-mount capacitors for example
08:18 AM LeoNerd: Take one out of its tape and you
08:18 AM LeoNerd: Take one out of its tape and you'd better hope to remember its specs
08:27 AM polprog: except for those electrolytics/tantalum caps, mlccs and the like dont have markings
09:52 AM mudkip908_ is now known as mudkip908
11:17 AM Lambda_Aurigae: inductor markings will vary from manufacturer to manufacturer...for smt devices there really isn't any kind of standard.
11:20 AM mmfood: these are throug-hole
11:21 AM Lambda_Aurigae: still, go to the manufacturer for marking meanings.
11:22 AM Lambda_Aurigae: only thing that was ever standardized was resistors...caps had a couple different marking standards for when they were too small for full numbering..
11:22 AM Lambda_Aurigae: inductors had 2 or 3 at least as I recall.
11:24 AM mmfood: ok, thanks for the info
11:24 AM Lambda_Aurigae: that's what inductor and capacitor testers are for.
11:24 AM Lambda_Aurigae: and giant bin boxes!
11:25 AM Lambda_Aurigae: big box with lots of little bitty bins for all your sorting needs.
11:25 AM mmfood: seems odd though that there aren't any standards for this. Wouldn't an industry like the electronics industry benefit from this a lot?
11:25 AM Lambda_Aurigae: riiiight.
11:25 AM Lambda_Aurigae: standards.
11:26 AM Lambda_Aurigae: HAHAHAHA!
11:26 AM mmfood: Lambda_Aurigae: yes but they are not cheap are they ^^ this Mtester from ebay was about $10 and will do for things like this I guess.
11:26 AM Lambda_Aurigae: we are lucky to have one standard light bulb socket...wait, we don't...I have 5 different incandescent bulb types in my house that I know of..
11:28 AM Lambda_Aurigae: a standard just means someone agreed to someone else's stuff...
11:28 AM Lambda_Aurigae: or the government regulated it.
11:29 AM mmfood: Lambda_Aurigae: well the standard would only make sense if the industry agreed on it. But I guess that's rare. Just look at w3
11:29 AM Lambda_Aurigae: https://hackadaycom.files.wordpress.com/2017/10/powerstrip.jpg
12:39 PM polprog: https://www.youtube.com/watch?v=ks3RNLNvpCg
12:39 PM polprog: cool tune
03:34 PM polprog: NoHitWonder: i found my E90 communicator
03:35 PM doppler: ooo, nice
03:35 PM polprog: but no charger :(
03:35 PM polprog: everything moved to microusb
03:35 PM polprog: ill have to pick something up on monday
03:35 PM doppler: isn't it one of the normal nokia plugs?
03:35 PM polprog: it is
03:35 PM doppler: barrel, right?
03:35 PM polprog: tiny barell jack
03:35 PM doppler: 3.something volts
03:35 PM polprog: 3.7
03:36 PM * doppler chucks one over to polprog's window
03:36 PM polprog: :P
03:36 PM polprog: i was planning to use one as a handheld SSH terminal
03:40 PM polprog: oh, new BOFH
03:43 PM doppler is now known as Guest65873
03:57 PM JanC_ is now known as JanC
05:12 PM NoHitWonder: polprog cool
05:15 PM polprog: ;)
05:51 PM Ameisen: still trying to find out if there's a listing of optimal instruciton sequences for shifts somewhere
05:55 PM cehteh: mhm
05:58 PM cehteh: dunno, but shoudlnt be too complicated because the architecture is scalar
05:58 PM cehteh: in order
05:59 PM cehteh: at worst you can just generate different ways and time it (or do beans counting)
06:01 PM cehteh: as long the shift amount is static its simple, but when you find an efficient way to compile for any (dynamic) number of shifts, things get interesting
06:19 PM Ameisen: cehteh - problem is I really don't want to do it by hand for up to uint64_t
06:19 PM Ameisen: for all shifts
06:19 PM cehteh: :)
06:20 PM Ameisen: you also get different sequences if you presume that you are usign register pairs or not :|
06:21 PM cehteh: i have a long running idea to make a generic permutation generator for 'anytihng' and some rules/filters to find optimal solutions
06:22 PM cehteh: such problems are so common, you know that "by hand" is too labor intensive, a perfect algorithm to find the solution needs too much work, and the problem space is not that big that a computer cant just brute force it over night
07:49 PM Ameisen: cehteh - I'm trying to implement the llvm avr reducer for AVR
07:49 PM Ameisen: atm, my choice is to do it by hand or to look at GCC's implementationn
07:49 PM Ameisen: not fond of using GCCs, as the licenses aren't compatible
07:49 PM Ameisen: so I have to look at the asm output instead, which is incredibly tedious
07:50 PM Ameisen: However, LLVM does what GCC does (though a little looser) - presumes register paisr
07:50 PM Ameisen: pairs
07:50 PM Ameisen: it makes the implementation simpler, but isn't always optimal
07:50 PM Ameisen: It is only beneficial if there is an op node in the chain that benefits, and I don't know of a way to validate that on register allocation
11:22 PM Ameisen: cehteh - a generic permutation system, though, is basically brute forcing a solution
11:22 PM Ameisen: so... I don't expect that to be fast
11:22 PM Ameisen: Particularly given that, at best, you have exponential complexity growth
11:23 PM Ameisen: Trying to solve a few operations? Fast enough. Copmiling something with 10 operations? 1024 choices still isn't too bad. 32? We're getting ridiculous.
11:23 PM Ameisen: So then you end up breaking the problem into chunks... and those chunks end up not being optimal across boundaries
11:24 PM Ameisen: thus why most compilers opt for not brute-forcing, and perform reduction in order to basically solve what is effectively travelling salesman using what is effectively a greedy algorithm
11:24 PM Ameisen: which doesn't give guaranteed best results, just guaranteed good results but quickly
11:24 PM Ameisen: on more complex architectures like x86, that works fine, as reduction usually still hits things well. On AVR? Your reducer has to itself be targetting something like that.
11:25 PM Ameisen: Neither GCC nor LLVM are designed for it.
11:25 PM Ameisen: And there simply aren't enough people to maintain something that is.