#avr | Logs for 2014-11-27

Back
[00:03:27] <Guest26779> with a DMM and an oscilloscope would those 2 tools allow one to debug and figure out any mystery circuit that he is given
[00:04:17] <N1njaneer> Tools help. Years of experience are kind of necessary, too. It's an art.
[00:04:18] <spillere> I need to change the fuse for my atmega328p project. It is running with a 16MHz external clock. Can anyone help me defining the fuses (I will be burning the .hex file, so not an Arduino bootloader)? avrdude -p atmega328p -c usbtiny -U lfuse:w:0xdf:m -U hfuse:w:0xDF:m -U efuse:w:0xF9:m -U lock:w:0xFF:m
[00:04:57] <Guest26779> DMM checks for continuity , volts,current,power,resistance where as oscilloscopes check for cycles hz, waveform, and a visual display of what is going on like modulation , waveforms ...etc
[00:05:50] <Casper> Guest26779: depend on the scope and the circuit. you may need more tools, like some signal generator or other more complex test tool for some case
[00:06:04] <Casper> and you may need some signal analyser
[00:06:06] <Guest26779> for this i am lead to believe have 2 good versions of them would in theory be enough to debug any circuit and in alot of cases add on to any circuit/understand the circuit
[00:06:09] <Casper> try to debug hdmi...
[00:06:37] <Casper> or try to figure out why some data communication fail....
[00:07:12] <Casper> you can see if the waveform is good, but it's hard to see what's really going on when there is lots of timing issue on multiple wires and all
[00:07:31] <Casper> sometime you need a logic analyser with a protocol analyser
[00:07:47] <Guest26779> signal generators are nice but not necessary and some oscilloscopes have them built in
[00:07:50] <N1njaneer> spillere: 0xDF low and 0xF9 looks fine for 16Mhz?
[00:07:58] <Guest26779> a few waveform signals
[00:08:22] <Casper> Guest26779: I care you to debug hdmi with your scope
[00:08:35] <Casper> oh better yet!
[00:08:44] <Casper> hdmi with hdcp
[00:08:51] <Guest26779> what do you uses for those casper
[00:09:00] <Casper> specialised equipments :D
[00:09:07] <Guest26779> like what
[00:09:23] <Casper> probably an hdmi signal analyser
[00:10:02] <Casper> which will monitor the signal quality, the data, error rate and probably like 50 other parameters
[00:11:31] <Guest26779> ok logical analysis and protocal anaylsis help when higher level is indeed but to view what is going on if one understands the protocal
[00:11:45] <Casper> oscope is good when you can get a static, repeatitive signal
[00:11:56] <Casper> and get more and more useless as the signal get complicated
[00:12:26] <Guest26779> so what does one uses for the most complex signals
[00:13:03] <Guest26779> logical analysis and protocal anaylsisers or is there more advanced tools need
[00:13:09] <Casper> possibly
[00:13:18] <Guest26779> like what
[00:13:26] <Casper> depend on what you do, really, there is tons of equipment possible
[00:13:38] <Casper> google for some test equipments
[00:14:03] <Casper> and it also depend on what you need to check too...
[00:14:11] <Casper> and what is your signal source and all
[00:32:29] <Guest26779> what is currently what the professional computer hardware designers and electronics designer using to build there board / simulates there board on what type of designing software i know the freeware version/semi freeware version how does eagle stack up to what they are using
[00:33:51] <Guest26779> to develop cpu,mcu , microprocessors , rf equipment , motherboards , computer peripherials,...etc
[00:34:52] <Guest26779> is it all the same or different in most cases and is there a majority using a certain kind like for example firefox,IE,and chrome for browsers for an analogy
[00:48:03] <Casper> Guest26779: in house built software, which are a very close guarded secret
[00:49:34] <Guest26779> can it do more then software you can buy or get for free
[00:50:47] <Guest26779> on the internet interms of components and features
[00:51:01] <Guest26779> cutting edge components i would imagine
[00:51:56] * Casper ignores Guest26779's stupid question
[06:56:06] <Jartza> agh. stupid flu :(
[06:57:13] <antto> left, left, left, ctrl+z
[06:58:27] <malinus> Jartza: at least your indiegogo seems to be progressing?
[07:08:17] <Jartza> malinus: yes, at quite expectable rate too.
[07:08:33] <Jartza> I would've set the goal lower, but I our marketing did set it high
[07:09:35] <Jartza> I would be quite happy with 100 orders, then it means we can safely order the devices fully assembled and we don't at least make any loss :)
[07:10:41] <Jartza> but anyways, personally I didn't have _any_ goal for sales
[07:10:59] <Jartza> so it's all plus!
[07:17:07] <malinus> Jartza: but this was just your personal project, right? And your company is just kinda helping you, or what? I
[07:17:11] <malinus> I'm just wondering
[07:18:50] <Jartza> malinus: my company is helping yes, like paying all the protos made so far etc.
[07:18:59] <Jartza> malinus: but I get around 80% of the possible profits.
[07:19:27] <Jartza> although at this point the profit isn't much :D
[07:20:11] <Jartza> but I never thought to make money out of this, so it's ok
[07:33:49] <malinus> that's pretty cool
[07:57:53] <Valen> Jartza: linky?
[08:01:30] <Jartza> Valen: linky to what? indie? http://igg.me/at/tagsutag
[08:03:03] <Valen> shiny
[08:16:15] <LeoNerd> So.. someone tell me if I'm mad, but I -think- I've come up with a way to use the 4 spare ATtiny pins I'll have on a board layout, to drive 4 LEDs -and- 4 buttons
[08:17:09] <Lambda_Aurigae> done all the time.
[08:17:27] <Lambda_Aurigae> I think rue_more has a page on it somewhere.
[08:18:11] <Lambda_Aurigae> can easily drive 6 LEDs from 3 pins.
[08:18:38] <LeoNerd> My idea is to use a resistor chain on all the buttons and use ADC input. The remaining 3 pins then lets me do 4 LEDs
[08:18:44] <LeoNerd> Hrm.. How do you do 6 from 3 pins?
[08:19:13] <Lambda_Aurigae> 3 pins have how many combinations? if you tie them together.
[08:19:28] <LeoNerd> Without decode logic though? I'm aiming at small
[08:19:40] <Lambda_Aurigae> 1/2, 1/3, 2/3, 2/1, 3/1, 3/2
[08:19:52] <Lambda_Aurigae> so, between 1 and 2 you have 2 LEDs,, back to front.
[08:20:10] <Lambda_Aurigae> so when 1 is high and 2 is low you have one led on..when 1 is low and 2 is high you have the other led on.
[08:20:16] <Lambda_Aurigae> then spread that out to the other lines.
[08:20:21] <LeoNerd> Right... but then if you drive, say, 1 high 2 low, you'll drive one of the two LEDs across that pair, but there's -also- a path via pin 3.
[08:20:27] <Lambda_Aurigae> hmmm.
[08:20:30] <Lambda_Aurigae> that might not work.
[08:20:37] <Lambda_Aurigae> too early.
[08:20:38] <Lambda_Aurigae> hehe
[08:20:38] <LeoNerd> So 1->2 is driven fully, and 1->3->2 is driven halfway
[08:20:48] <Lambda_Aurigae> so not all 6.
[08:20:56] <LeoNerd> My plain for 3 lines and 4 LEDs was to use one line as a high/low "common row", and the other two as columns
[08:21:04] <Lambda_Aurigae> yeah.
[08:21:16] <LeoNerd> So similar to yours, but without that final path to make a full triangle. I think 4 LEDs is enough for what I want
[08:21:19] <Lambda_Aurigae> charlieplexing! that's the term I was looking for.
[08:21:46] <LeoNerd> That's the one!
[08:21:47] * LeoNerd reads about it
[08:21:49] <Lambda_Aurigae> http://en.wikipedia.org/wiki/Charlieplexing
[08:22:09] <LeoNerd> Huh.. apparently 4 pins -can- drive 12 LEDs
[08:22:15] <Lambda_Aurigae> yeah.
[08:22:18] <LeoNerd> And 3 can drive 6 it says. hrm
[08:22:48] <Lambda_Aurigae> there is a schematic on there for that.
[08:22:54] <Lambda_Aurigae> and, you can do much the same for input.
[08:23:08] <LeoNerd> Well, input is a lot easier, as I can arrange for an ADC spare
[08:23:08] <twnqx> obviously the max brightness goes down quickly
[08:23:22] <Lambda_Aurigae> but you have to add diodes for the input mode.
[08:23:24] <LeoNerd> That's OK.. these are status indicators, not illumination, so I only need them "visible"
[08:23:46] <Lambda_Aurigae> aahh,,using resistors on the input..
[08:23:48] <LeoNerd> Yah; I'm going to do input by using a resistor chain on the buttons, so that will be fine
[08:26:57] <LeoNerd> Oh, also depending how you do it, you can do multi-touch N-way buttons with an ADC reader.
[08:27:16] <LeoNerd> Vcc - 1k - 1k - 2k - 4k - 8k - 16k - .... - GND
[08:27:42] <Lambda_Aurigae> yup.
[08:27:52] <Lambda_Aurigae> doing the r/2r method basically.
[08:28:04] <Lambda_Aurigae> or modified r/2r
[08:28:10] <LeoNerd> Then put a button to bridge each of the resistors after the first one, rather than common-ground them. Then the total resistance across the chain is R total minus (N)k, where N is the total of all the buttons pressed
[08:30:52] <LeoNerd> Ahyes; the charlieplexing article says that yes, there is -an- alternative path through the circuit, but because it has two LEDs instead of just one, you can arrange that the forward voltage drop would be too low to illuminate the LED sufficiently
[09:13:18] <malinus> LeoNerd: 4 pins can drive 1000 LED's. If you multiplex :)
[09:13:54] <LeoNerd> er.... how?
[09:16:11] <malinus> using a big mux :D?
[09:16:38] <LeoNerd> Well, again first off: explain /how/. and secondly note the requirement of small space, and not wanting to use extra logic chips
[09:16:45] <Lambda_Aurigae> need some additional logic.
[09:17:25] <LeoNerd> I can charlieplex 6 LEDs using only 6 LEDs and 3 resistors, adding -nothing- else to the board. (up to) 6 buttons can then be built using one resistor per button plus one more total, on the ADC pin
[09:17:29] <rue_more> LeoNerd, charlieplexing
[09:17:50] <LeoNerd> rue_more: yes, I'm aware of charlieplexing. That could give me 12 LEDs on 4 pins; not 1000. :)
[09:17:50] <malinus> LeoNerd: sorry, I was just pointing out it could be possible.
[09:17:57] <rue_more> and there aren't problems with leds being half driven
[09:18:14] <rue_more> I didn't catch up with all ofit
[09:18:16] <LeoNerd> Wellsure.... if I wanted to put in fancy I²C-driven decoders, then /two/ GPIO pins can drive practically unlimited number of LEDs
[09:18:18] <LeoNerd> that isn't my point :)
[09:18:33] <rue_more> but doing like 16 buttons from 1 pin isn't hard if you use the ADC
[09:18:50] <rue_more> mtuliple buttons at one would screw it up
[09:18:54] <rue_more> that might be ok depending
[09:18:55] <LeoNerd> I'm making a board barely larger than an ATtiny841 plus a 2x5 box header, and I want to see if I can fit a few buttons and LEDs as well, on the remaining 4 spare IO pins that I'm not using.
[09:19:12] <LeoNerd> rue_more: nono, you can use the ADC to do *multi-touch* buttons :)
[09:19:12] <rue_more> is one of them adc?
[09:19:35] <rue_more> hmm
[09:19:40] <LeoNerd> rue_more: consider a "resistor box"; arrange resistors in a line --- 1k -- 2k -- 4k -- 8k -- 16k --...
[09:19:47] <rue_more> yea I know
[09:20:00] <LeoNerd> Now put a button in parallel with each resistor; the total resistance then depends uniquely on the set of buttons being held down
[09:20:19] <rue_more> I have a circuit to make a matrix into a votlage divider
[09:20:32] <LeoNerd> In practice accuracy will limit it to at most "a few" - I'm thinking I'll try 4.
[09:20:46] <rue_more> somewhere I have a program that will calc the values to get linear votlage steps from the keyboard matrix
[09:20:59] <LeoNerd> It's for my AVR HVSP burner - I'd like to be able to toggle fuses on the board "self-contained", without needing a full PC driver program
[09:21:12] <rue_more> so you need (1 resistor/column, 1 per row) + 1 resistor
[09:21:58] <Lambda_Aurigae> it's time to go back to some old vertical circuit designs.
[09:22:19] <Lambda_Aurigae> I remember stacking chips on top of each other for memory expansion.
[09:22:34] <LeoNerd> Hehe.. stacking
[09:22:39] <Lambda_Aurigae> you would pull out the chip select pin and run a wire to it for each chip in the stack.
[09:22:56] <LeoNerd> Yah - I'm planning to stack mine, by layering the HVSP controller on top of (or maybe below) the HVSP adapter
[09:23:00] <rue_more> http://paste.debian.net/133830/
[09:23:04] <rue_more> that make any sense?
[09:23:11] <LeoNerd> Hehe.. I imagine that would also work wonderfuly well for SPI stacks
[09:23:12] <rue_more> its for a 4x4 matrix
[09:23:13] <Lambda_Aurigae> that way you could stack 8 1Kx8bit sram chips to make an 8k board.
[09:23:54] <rue_more> the first () number is the resistance value, the second () to the right is the adc count
[09:24:09] <rue_more> oh no
[09:24:13] <rue_more> the resistors are:
[09:24:17] <Lambda_Aurigae> or, in my case, turn my 4K board with 4 chips on it into a 32K board.
[09:24:18] <rue_more> float cr[] = {100, 200, 300, 400};
[09:24:18] <rue_more> float rr[] = {0, 400, 800, 1200};
[09:24:27] <rue_more> ohms
[09:24:39] <rue_more> cr = column resistor, rr is row resistor
[09:25:13] <rue_more> there is a 1k pullup resistor
[09:25:44] <rue_more> http://paste.debian.net/133831/
[09:26:01] <rue_more> there is the source that calcs the voltages you get for the different keys
[09:26:26] <rue_more> 16 keys on one pin
[09:26:34] <rue_more> the other 3 can do your 6 leds
[09:34:14] <rue_more> LeoNerd, is the reset pin that valueable as a io pin?
[09:34:32] <LeoNerd> I'd like to keep the reset pin if I can, because it's useful for ICSP
[09:34:51] <LeoNerd> I have these 4 spare IO pins not counting the reset, so it's easy enough to do my buttons + LEDs on those
[09:34:54] <rue_more> but your using a high votlage programer?
[09:35:00] <LeoNerd> I'm -making- an HVSP :)
[09:35:23] <LeoNerd> But for example, HVSP is still useful for such things as disabling SPIEN and enabling DEBUGWIRE :)
[09:35:24] <rue_more> whats the 6 leds for?
[09:35:27] <LeoNerd> *ahem*
[09:35:46] <LeoNerd> 15:01 <LeoNerd> It's for my AVR HVSP burner - I'd like to be able to toggle fuses on the board "self-contained", without needing a full PC driver program
[09:35:56] <rue_more> ah
[09:36:26] <rue_more> will 16 buttons do?
[09:37:08] <rue_more> the great thing aboiut that keyabord reisistor matrix thing, is that you get 1023 when nothing is pressed
[09:37:12] <rue_more> so its easy to work out
[09:37:18] <LeoNerd> Overkill ;) Seriously, the board is going to be physically tiny - there won't be -room- to fit more than about 4 buttons and 6 LEDs on
[09:37:42] <rue_more> aaaah, you have the japanese electronics problem
[09:38:09] <rue_more> the computer fits on a ring, but the interface takes up 4 city blocks
[09:38:35] <rue_more> this is why they came up with touch projection screens
[09:39:07] <Lambda_Aurigae> need direct mind link interfaces.
[09:39:34] <LeoNerd> Oh oops..
[09:39:41] <LeoNerd> I forgot to save a spare pin or two for the debugWire.. :(
[09:39:49] <rue_more> hahah
[09:39:55] <rue_more> now its on Had
[09:40:08] <Tom_itx> LeoNerd how's your board lookin now?
[09:40:09] <rue_more> I know 2 people working on making computer controlled thermostats
[09:40:15] <rue_more> and now thre is one on hackaday
[09:40:16] <LeoNerd> Hrm. I suppose... dW isn't going to be active at the same time as the 5 pins being used for HVSP, so I can mux it on those
[09:40:26] <LeoNerd> Tom_itx: https://twitter.com/cpan_pevans/status/537743304008683522 :) It works
[09:40:45] <LeoNerd> Tom_itx: I have a "v0.2" board order on oshpark now, with the bugfix to the copper
[09:40:51] <Tom_itx> that's all you can ask for
[09:40:57] <Lambda_Aurigae> Tom_itx, did I tell you I tested your programmer on the rPI and got it to program an atmega1284p?
[09:41:13] <Tom_itx> rpi?
[09:41:18] <Lambda_Aurigae> raspberry pi
[09:41:25] <Lambda_Aurigae> arm based computer running linux.
[09:41:27] <Tom_itx> oh.. nice
[09:41:39] <Tom_itx> no reason it shouldn't really
[09:41:41] <Lambda_Aurigae> plugged in and it picked right up.
[09:41:42] <Tom_itx> if it's got USB
[09:41:47] <Lambda_Aurigae> worked with avrdude just fine.
[09:41:47] <Tom_itx> and supports avrdude
[09:42:02] <Lambda_Aurigae> have a full avr dev setup on the rPI now.
[09:42:08] <Tom_itx> cool
[09:42:15] <Tom_itx> any tricks to it?
[09:42:19] <Lambda_Aurigae> nope.
[09:42:21] <Lambda_Aurigae> plug and play.
[09:42:21] <Tom_itx> you should post it somewhere
[09:42:36] <Tom_itx> i can add that to my list of supported platforms now :D
[09:42:42] <LeoNerd> Tom_itx: Thanks, by the way, for suggesting I should do it 0603-size. Turned out to be not quite so hard after all.
[09:42:45] <Lambda_Aurigae> next is to get the hdmi to vga adapter working and I can mount it all in a portable case.
[09:42:52] <Tom_itx> i'd bet the bbb would too
[09:42:53] <LeoNerd> Oh, except for the pads on grounding plane pours.. Those were harder to sodler :(
[09:43:00] <Tom_itx> LeoNerd i new....
[09:43:10] <LeoNerd> Any tips on that? I've upped the "thermal separation" to 15mil on the next boards, wonder if that will help
[09:50:37] <Tom_itx> not sure what you mean
[09:50:54] <LeoNerd> When soldering up the board, I found it much harder to solder onto pads that were attached to the grounding plane
[09:51:04] <LeoNerd> I suspect because they don't heat up as well, what with having a lot more copper
[09:51:08] <Tom_itx> get a better iron
[09:51:23] <LeoNerd> Well, I whacked it up to 380C and that helped somewhat
[09:53:20] <Tom_itx> use the pen
[09:53:26] <Tom_itx> it will help transfer heat as well
[09:53:50] <Lambda_Aurigae> blowtorch!
[09:54:25] <Lambda_Aurigae> or, a reflow oven.
[09:54:45] <Tom_itx> they rock
[09:55:40] <LeoNerd> Pen? Oh.. flux pen. Yah, that helped a bit too
[09:57:56] <Tom_itx> it's hardly worth going to 0402 for hobby work though. it can be done and i've done it but it takes longer to place them
[09:58:34] <LeoNerd> I think I'm happy with 0603s
[09:59:06] <LeoNerd> Also SOIC size... I don't imagine I'll go much smaller than that, at least for now
[09:59:30] <Tom_itx> besides some got sucked up in my pick n place needle
[09:59:40] <LeoNerd> Hah!
[10:00:03] <LeoNerd> Ohyeah, I dropped a SOT-23 last night, but managed to find it again. Dropped an 0603 resistor too and just said "eh, fuck it"
[10:01:41] <twnqx> 0402 is not the least harder than 0603
[10:02:17] <twnqx> and why would use use a pick&place needle for stuff like that if you use it manually anyway...
[10:02:58] <Tom_itx> it's quicker when you're doing a dozen or more boards at a time
[10:03:08] <twnqx> mh
[10:03:17] <twnqx> yeah, i don't reflow
[10:03:26] <twnqx> but if i'd do a dozen of the same
[10:03:34] <twnqx> i'd have them made, not do them myself
[10:03:34] <Tom_itx> anything beyond that is pure ego
[10:04:08] <twnqx> in fact i normally get the parts for exactly three boards
[10:04:17] <twnqx> one in case i kill parts
[10:04:22] <twnqx> one in case i kill the result
[10:04:32] <LeoNerd> I seem to be doing boards in threes currently, only because that's the smallest run that oshpark will do :)
[10:04:37] <twnqx> normally i end up with three working boards nad wonder what to do with the extra two :D
[10:04:54] <LeoNerd> twnqx: Get yourself a tindie account and sell 'em? That's my plan
[10:05:19] <twnqx> as if people would need the crazy stuff i build :P
[10:05:52] <LeoNerd> Eh, that's the beauty of it though. Listing is free, so it doesn't hurt to just list stuff anyway. Chances are -someone- else in the world will be interested at some point
[10:05:57] <twnqx> heck i only used an AVR with extra components for 3-4 times the cost of doing the same with an ARM for time constraints, and i was scared of how long it would take me to learn arm
[10:06:31] <Tom_itx> how long did it take to learn avr?
[10:06:57] <twnqx> quite a bit
[10:07:15] <twnqx> in that case about 2 months for the software despite knowing most of the pitfalls and reusing old code
[10:07:33] <twnqx> also, the "no windows" still is the most painful thing
[10:07:56] <LeoNerd> What part of your AVR toolchain needs windows?
[10:07:58] <twnqx> and i can't get myself to change that, the UI is just too unusable for me as i am not used to it
[10:08:19] <twnqx> exactly THAT is the reason for using underpowered chips that force some bad design decisions
[10:09:07] <Jartza> LeoNerd: I did some clean up today and found 5 sot23-5 chips under the table :)
[10:09:23] <twnqx> my room must be sprinkled with 0402 caps
[10:09:36] <twnqx> i know i successfully put in ~260 in the past week
[10:09:45] <twnqx> but i don't know how many i lost :P
[10:10:21] <LeoNerd> I have rather large cracks in the floorboards.. I fear my resistor is lost there.
[10:11:08] <twnqx> you don't buy them in 100packs if you need 1?
[10:11:14] <twnqx> the price difference is so low...
[10:13:37] <LeoNerd> Well quite. That's why I don't care
[10:13:48] <LeoNerd> The transistor though, I only had 10 of
[10:32:19] <Tom_L> http://www.electronicproducts.com/Passive_Components/Antennas/Tired_of_reaching_in_his_pockets_for_cash_man_embeds_two_bitcoin_wallets_into_his_hands.aspx
[10:32:23] <Tom_L> a bit extreme
[10:32:26] <Tom_L> no pun intended
[10:36:21] <MrFahrenheit> does anyone know if "USBASP" means anything, as in, is ASP an acronym or just a random word the creator thought sounded nice?
[10:36:45] <Tom_itx> USB part is obvious
[10:37:08] <Tom_itx> avr serial programmer may not be so obvious
[10:37:29] <MrFahrenheit> yeah, I though it might be that, but I wasn't sure
[10:37:48] <Tom_itx> but
[10:37:59] <Tom_itx> what does "AVR" stand for?
[10:38:16] <MrFahrenheit> I think there's a section on wikipedia about that
[10:38:27] <Tom_itx> it never says for sure
[10:39:03] <MrFahrenheit> it says this: "it is commonly accepted that AVR stands for Alf (Egil Bogen) and Vegard (Wollan)'s RISC processor"
[10:39:47] <Tom_L> urban ledgens are accepted too
[10:40:50] <MrFahrenheit> well I'm making a custom firmware for the USBASP so I wanted to be sure what the name meant before naming my own project
[10:54:23] <LeoNerd> I just had an interesting idea - maybe one day I could build an add-on board for my HVSP burner, to take one of these http://www.adafruit.com/products/1284
[10:54:38] <LeoNerd> Do the SOIC-sized tiny chips as well
[10:56:23] <twnqx> that's what i use to program them in the stk600
[10:56:41] <twnqx> just for far cheaper from ebay, shipped from china :P
[10:56:58] <LeoNerd> Mhm :)
[10:58:52] <LeoNerd> http://www.ebay.co.uk/itm/SOIC8-SOP8-IC-Test-Clips-Socket-Adpter-for-BIOS-24-25-93-Programmer-/191344586760?pt=UK_BOI_Electrical_Components_Supplies_ET&hash=item2c8d06b008 Or this thing
[11:30:30] <TechChristoph> is there a good buspirate tutorial for newbies ?
[11:30:49] <LeoNerd> Probably several on DP's website
[11:30:59] <TechChristoph> im confused about the wiring
[11:31:25] <TechChristoph> i wanna test some attinys
[11:31:33] <LeoNerd> Ah... test howso?
[11:31:44] <LeoNerd> Take a step back a moment - explain what you're trying to achieve
[11:32:07] <TechChristoph> debugging
[11:32:15] <LeoNerd> Debugging of what, how?
[11:32:56] <TechChristoph> of the code what is going inside the chip
[11:33:13] <LeoNerd> Ah... in-circuit debugging... that's not a thing that the ATtiny chips can easily do
[11:33:25] <TechChristoph> ok...
[11:33:38] <LeoNerd> ICSP can do uploading of a new program while the chip itself is paused.. stuck in a special kind of reset state
[11:33:57] <LeoNerd> To do -live- code debugging, tracing, inspection of state, single-step, etc... you'll need to use debugWire. currently there are no open tools for doing that
[11:34:09] <LeoNerd> .oO( I have plans to make some though ;) But nothing I have to offer at the moment )
[11:34:23] <TechChristoph> ok
[11:36:02] <LeoNerd> Does that help at all..? Or else, what sort of debugging did you imagine the BP could help with?
[11:37:14] <twnqx> jtag :3
[11:38:19] <LeoNerd> Ha! Yeah; neither ATtiny nor ATmega chips talk JTAG. I believe the Xmegas do though
[11:38:31] <twnqx> most normal megas, too
[11:38:38] <twnqx> e.g. the at90 ones
[11:38:39] <LeoNerd> Also I don't think the stock BPv3 firmware can talk JTAG; you'd have to reflash it, or use a v4
[11:43:11] <LeoNerd> .oO( It also might be of some interest to some people in here that I'm vaguely planning to recreate a buspirate-like thing, on AVR, with a few more abilities )
[11:43:51] <LeoNerd> Such as: voltage/current monitoring on outputs, current limiting with shutdown, more aux IO pins
[11:44:12] <twnqx> if you're nearing design phase, ping me
[11:44:22] <twnqx> like i said, i want something... similar
[11:44:43] <LeoNerd> I'm in the "playing with random ideas" phase.. was playing with the INA219 current-sense chip
[11:45:12] <LeoNerd> It'll likely be start of 2015 before I get around to a proper schematic/copper layout yet, so no urgent rush
[11:45:27] <twnqx> eagle?
[11:45:34] <LeoNerd> Likely
[11:45:43] <twnqx> if you can live with V6 i would be interested :P
[11:46:08] <LeoNerd> I'm currently running v6.6.0 anyway
[11:46:13] <twnqx> good
[11:46:20] <twnqx> me too, and i can't really upgrade
[11:46:32] <twnqx> not willing to pay for next upgrade before 2016
[11:46:42] <LeoNerd> Decided I shall buy the individual licence, so I can sell boards made on it. GBP50, so I don't need to sell very many boards to recover that cost.
[11:46:51] * twnqx has pro
[11:47:01] <twnqx> needed 4 layers for a toy project.
[11:47:03] <LeoNerd> Heh.. ;) I can't quite justify that cost yet
[11:47:16] <twnqx> i could only justify it that one year i made a bit more money
[11:47:17] <LeoNerd> Maybe in a couple of years. This is still more a side-hobby aside my real day-job
[11:47:26] <twnqx> i made a total of 5 PCBs so far
[11:47:36] <twnqx> in... 5 years i have the license.
[11:48:02] * twnqx wants the time of "who cares about that amount" back :(
[11:53:36] <LeoNerd> Hah! I found a SOIC8 ZIF socket to 8-pin DIP layout adapter on eBay; for GBP3, which will fit in my DIP8 ZIF socket. That looks to be the easiest way to fit SOIC8 ATtiny chips on this board
[11:54:48] <LeoNerd> Having trouble finding SOIC14s though. Plenty of SOIC6
[11:54:50] <LeoNerd> SOIC16
[11:58:41] <Jartza> LeoNerd: where did you find dip8 zif? :)
[11:59:25] <LeoNerd> Oh.. er.. I didn't. I'm using a DIP14. It has a division bar in the middle, to split it into a 6 and an 8
[11:59:34] <LeoNerd> Yah; I really can't find a DIP8 ZIF
[11:59:42] <twnqx> 3M makes some
[12:00:02] <twnqx> not quite dip8 though
[12:00:11] <LeoNerd> My DIP4 is a 3M socket
[12:00:25] <LeoNerd> DIP14
[12:01:31] <twnqx> http://www.digikey.de/product-search/de?KeyWords=208-7391&WT.z_header=search_go
[12:02:15] <twnqx> beware one thing with soics though
[12:02:23] <twnqx> they come in three different widths.
[12:02:51] <LeoNerd> Yah - I looked this one up. The ATtiny*5 chips are 200mil wide. Most of the SOIC8 adapters on eBay are 150mil, but I found a 200
[12:03:08] <LeoNerd> What about SOIC14s? Onesize or multiple of them too?
[12:03:19] <twnqx> probably multiple
[12:03:34] <twnqx> the main driver seem to be the SPI NOR flash ones
[12:03:42] <twnqx> which can have alrger dies
[12:07:18] <LeoNerd> Hah!
[12:07:26] <LeoNerd> An adapter here claiming to be "150 miles wide"
[12:07:29] <LeoNerd> I suspect not ;)
[12:07:58] <twnqx> i today ordered a 30W power supply
[12:08:01] <twnqx> 48V/1.46A
[12:08:28] <LeoNerd> Errr
[12:08:30] * LeoNerd does maths
[12:08:32] <twnqx> exactly.
[12:24:11] <LeoNerd> Well, this sucks. I can find tonnnnnnes of SOIC8 and SOIC16 to DIP* adapter boards for like.. under GBP3 on eBay. But SOIC14? Noooope.
[12:24:16] <LeoNerd> I found /one/ at GBP90(!)
[12:24:56] <LeoNerd> I did find a rather shiney looking ATtiny*4-specific SOIC14 board with timing crystal and breakout pins for power/IO pins/etc...
[12:25:04] <LeoNerd> But I just want a little DIP adapter
[13:05:33] <LeoNerd> Aha! I found a bare SOIC14 test socket for GBP9.
[13:06:15] <LeoNerd> I wonder why they're so expensive. SOIC16 boards are like... GBP4 and that includes the PCB it's mounted on, along with pins in a DIP16 arrangement to go straight onto breadboard/DIP socket/ec..
[13:14:04] <LeoNerd> Heh. It really looks like the cheapest way for me to get a SOIC14 adapter is to buy a SOIC16->DIP16 adapter and cut two of the pins off it.. :( Meh, this is lame
[13:58:57] <twnqx> LeoNerd: http://www.wvshare.com/column/Adapter_2.htm
[13:59:03] <twnqx> one of the best overviews of what exists.
[15:13:05] <LeoNerd> twnqx: Ahyes; though those are just plain sockets; I want a socket on a ->DIP adapter board
[15:13:35] <LeoNerd> Maybe I should make a SOIC14 ATtiny devboard
[18:40:32] <LeoNerd> Am I failing at datasheets today? I'm looking at the tiny841 sheet and I can't see either the signature, or the definition of the fuse bits
[18:41:27] <LeoNerd> Oh.. hah. They're not in the "programming" section, there's an entire separate section called Lock Bits, Fuse Bits and Signature
[18:44:47] <N1njaneer> Yup!
[19:03:42] <Tom_itx> N1njaneer what are you doing with the pi?
[19:06:05] <N1njaneer> I have done nothing with the pi
[19:06:14] <N1njaneer> I roll all my ARM stuff from scratch :)
[19:07:28] <Tom_itx> err what was the one you put the avr stuff on?
[19:07:36] <N1njaneer> Hmm?
[19:07:50] <Tom_itx> oh forget it! wrong dude!
[19:07:53] <Tom_itx> sry
[19:08:00] <N1njaneer> Hee, no problem.
[19:08:06] <Tom_itx> that was Lambda_Aurigae
[19:08:18] <N1njaneer> Yeah
[19:08:20] <Tom_itx> just wondering how he was using it
[19:12:44] <[F_F]> I wonder what's so "great" about AVR architecture?
[19:12:49] <[F_F]> why not x86 or ARM?
[19:13:04] <[F_F]> and if "AVR" is so great, why not make a "bigger and faster" AVR implementation?
[19:20:14] <N1njaneer> F_F: It's low-cost, small, easy to implement, and very reliable.
[19:21:31] <N1njaneer> Atmel has focused exclusively over to ARM implementations at the longer-term roadmap for 32-bit things. Many of the Cortex M0 devices are less expensive than many mid-range AVR parts, but are full 32-bit implementations running at 48 Mhz or greater.
[19:21:36] <N1njaneer> +as the
[19:22:19] <N1njaneer> There's just more overhead to getting started, and devices not avaliable in DIP packages (if you are a hobbiest, etc)
[19:22:35] <N1njaneer> I use AVR where AVR fits well, else I jump to ARM
[19:28:49] <N1njaneer> What makes AVR "AVR" is really the 8-bit instruction set, so you can't really extend it beyond there. There IS AVR32, but Atmel isn't persuing much of a future roadmap with it.
[19:28:51] <N1njaneer> Does that help?
[19:45:41] <Bright> apparently not :(
[19:45:47] <Bright> it helped me though :)
[19:47:57] <N1njaneer> Cool :D
[19:52:43] <TechIsCool> got a question. How do I target GPIO_Pint_0 then 1 walking through them one at t a time? http://pastebin.com/sS3W7cHR
[19:53:30] <N1njaneer> Can you elaborate on the question?
[19:53:59] <N1njaneer> Oh, like programatically?
[19:54:05] <TechIsCool> yup
[19:54:21] <TechIsCool> so a for loop with 0-15
[19:54:38] <N1njaneer> Two thoughts -- either do a ((uint16_t)1 << N) or if you don't want the speed hit you can use a look-up table.
[19:55:03] <TechIsCool> so ((uint16_t)1 << 0)
[19:55:05] <TechIsCool> is channel 0
[19:55:07] <TechIsCool> ((uint16_t)1 << 1)
[19:55:09] <TechIsCool> is one
[19:55:38] <N1njaneer> If you are doing it incrementally, though, you can keep an accumulator value and then just left-shift it once each place. Then you don't take the multiple left-shift speed hit, if speed is critical.
[19:55:45] <N1njaneer> Yep.
[19:56:12] <TechIsCool> I don't want it to be additive if that make sense
[19:56:36] <N1njaneer> What are yo udoing with the pins?
[19:56:50] <N1njaneer> Additive in what sense?
[19:57:01] <N1njaneer> Also, what device is this for?
[19:57:03] <TechIsCool> nevermind
[19:57:08] <TechIsCool> it a stm32f4
[19:57:16] <TechIsCool> I know I know
[19:57:47] <TechIsCool> I thought I had it write just was drawing a black on bit shifting correctly. Tested it in wolfram and it was not working the way I thought because I was shifting the wrong side lol
[19:58:22] <Tom_itx> hmm
[19:58:31] <Tom_itx> i have one of those in the drawer i've never used
[19:58:39] <N1njaneer> If speed is of concern, check the stm32f4 for a barrel shifter. If it has one, then the instruction should run in constant time, so you can just use an arbitrary index, etc.
[19:59:03] <TechIsCool> Don't need it to be just switching channels to drive GE35 lights
[19:59:07] <TechIsCool> that is where speed matters
[22:23:58] <tpw_rules> anybody mind helping me optimize some assembly?
[22:24:59] <tpw_rules> i need to know the fastest way of shifting a bit off the end of a register then setting something in PORTB according to its status. i'm using bst/bld but that requires loading a register with 0
[23:23:08] <Shavik> So i've kinda asked this before but ive been refining the idea. I'm building a device that will need some form of backplane communication bus. i'm entertaining CAN, LIN, I2C, and SPI. I've liked the i2c buffer chips ive seen but i'd like any device to be able to communicate via any port so addressing such as I2C may be "wierd" with duplicate modules. etc So I was leaning SPI or LIN. But I had also considered
[23:23:08] <Shavik> each "connector" slot could indicate the slot via a pin configuration so the "module" could address itself properly
[23:23:12] <Shavik> Any thoughts?
[23:23:28] <Shavik> Not done something like this before so not 100% which is the "best" approach
[23:24:46] <Shavik> SPI has the advantage of being able to reprogram the cpu's of the modules if I include the reset wire in my pinout so it has that going for it
[23:33:42] <Shavik> Well thanks for reading at least :P
[23:40:11] <Casper> things to consider: number of device, bus length, multi-master or single master, speed, pin count, half or full duplex
[23:40:41] <Shavik> Think motherboard with mounted cards. 4-8 devices. single master. speed and duplex setting is flexible
[23:41:02] <Shavik> https://www.youtube.com/watch?v=uh9jAPmewsw mockup of case
[23:41:13] <Shavik> ( i know that doesnt help really on this)
[23:41:48] <Shavik> Initial thought was to do SPI so I could communicate with good speed and I also could reprogram the "cards" while they were in
[23:42:17] <Shavik> But I had been told I2C with the buffer ic's supported "hotplugging" as long as the master could recover from bus hangups and the buffer chips would help that a good bit
[23:42:42] <Shavik> If it was any other decision i would have just made one and moved on but this is a big decision for the project :P
[23:44:55] <Casper> there is some bus with a chip enable pin, so one pin per device for the control
[23:45:23] <Shavik> Yea, I was going to use a 8 bit shift parallel out for that with SPI
[23:45:33] <Shavik> since I'm limiting the system to 8 slaves anyway
[23:45:55] <Shavik> Then had considered using a 8 bit parallel in for a type of "interrupt" lines from the slaves as well
[23:48:26] <Shavik> Was wanting to avoid something heavy like differential signaling. I think that'd be overkill
[23:48:31] <Shavik> Maybe i'm wrong on that
[23:49:20] <Casper> what's the bus length? same board? then differential is not really needed, if at all, specially at low speed
[23:49:40] <Shavik> Well do you count a card edge connector as same pcb. I wouldn't
[23:50:25] <Shavik> No "cables" just cards that slide into a card edge connector. (Think mini PCI-E, 10-20 contacts)
[23:51:06] <Shavik> Being able to "hotplug" them would be amazing but i realize thats a taller order. And having something like the buffer ic's would be necessary. They precharge the lines/optoisolate, etc
[23:52:49] <Shavik> bus length would be "worst" for the bottom card. maybe 2ft absolute worst
[23:52:56] <Shavik> across pcb's through a card edge connector
[23:53:03] <Shavik> More like 1.5 ft I'd guess
[23:53:42] <Shavik> And I don't really see a reason for trying like a Megabit connection rate. I'd be totally happy with like 115200 or something
[23:55:26] <Shavik> Though having one side of the card edge connector tell it which "slot" it's in, would allow the cpu to "address" itself properly then I could use I2C but would lose the ability to program the cpu's them. decisions. decisions.. :(
[23:56:09] <Shavik> http://i.ytimg.com/vi/vqgSO8_cRio/hqdefault.jpg
[23:57:57] <Shavik> Something like this http://cds.linear.com/docs/en/datasheet/2883fc.pdf