#avr | Logs for 2013-12-27

Back
[00:11:53] <GreaseMonkey> hey, do branch instructions take an extra cycle on jump or on not-jump?
[00:12:44] <GreaseMonkey> right now i'll assume the extra cycle is on-jump
[00:28:39] <DarkSector> I keep on seeing code online. Registers like UCSRB are represented as UCSRB and UCSRB0
[00:28:57] <DarkSector> What's the difference between those representations?
[00:30:27] <Casper> most probably for different devices
[00:30:48] <Casper> UCSRB is for the one with a single whatever and the 0 one is the first of the multiple whatever one
[00:32:42] <abcminiuser__> Yep that's it
[00:32:46] <DarkSector> Oh okay
[00:32:53] <abcminiuser__> Newer parts have the 0/1/2 etc suffixes
[00:33:08] <DarkSector> I see, okay yeah, I saw code for 328p and I am working on the Tiny2313
[00:33:13] <DarkSector> So that's the difference
[00:34:10] <DarkSector> Also, to set a bit in a flag as 0, can this be done? UCSRB |= ~(_BV(UCSZ2));
[00:34:18] <DarkSector> Is that necessary?
[00:34:26] <DarkSector> Or is the default value 0?
[00:35:47] <DarkSector> And does the UBBR values need to be set as UBBRH and UBBRL? Or can I just push a value to it, like 12
[00:35:58] <abcminiuser__> Bad kitty don't use _BV
[00:36:03] <DarkSector> oh?
[00:36:23] <DarkSector> Oh so I should just be doing (1 << XXX)?
[00:36:25] <Casper> UBBR is a macro that split in UBBRL and UBBRH
[00:36:48] <Casper> _BV is a hack that was made until gcc was fixed
[00:36:58] <Casper> it wasn't optimising the code correctly
[00:37:04] <DarkSector> I see, okay, so I should just shift the bits then
[00:37:23] <abcminiuser__> Yes, it's entirely unneccesary
[00:37:23] <DarkSector> That would automatically set the other bits 0 right?
[00:37:28] <DarkSector> Awesomeness
[00:37:30] <abcminiuser__> Increases mental load to understand the code
[00:37:35] <abcminiuser__> And looks ugly
[00:37:38] <DarkSector> Gotcha
[00:37:53] <Casper> sadly, they deprecated it, but "dedeprecated" it soon after because people was using it too much... yeah... let's continue to use the hack instead of the proper way... congrat team gcc..
[00:38:20] <DarkSector> Okay, I'll keep that mind
[00:38:51] <abcminiuser__> Cargo-culted
[00:39:00] <abcminiuser__> People use it in tutorials so new people use it
[00:39:06] <abcminiuser__> They then write tutorials, continuing the cycle
[00:39:14] <abcminiuser__> One must least not only to code, but to code well
[00:39:30] <abcminiuser__> Which includes making code that is both useful to computers, and to readers
[00:40:03] <DarkSector> Good point
[00:42:37] <Casper> they should have kept it deprecated, but still supported
[00:42:46] <Casper> that would have been the best of the 2 world
[00:44:09] <abcminiuser__> Macro poision it :P
[00:44:22] <abcminiuser__> Hrm, which is cheaper, a roomba or an engagement ring?
[00:44:24] * abcminiuser__ ducks
[01:00:35] <Casper> abcminiuser__: a roomba, a car, an house, all the house content and more
[01:20:58] <DarkSector> Do I need to worry about UDR being empty when I am sending stuff?
[01:20:59] <GreaseMonkey> woop woop only 2 cycles to shave off
[01:21:07] <DarkSector> Or should I just keep an eye on the TXC flag?
[01:24:26] <GreaseMonkey> hmm, on an atmega328p, what's a good interrupt source for a 50Hz / 60Hz interrupt? i'm using timer 1A for audio output but only using 8 bits of it right now
[01:26:48] * Casper wonders
[01:27:18] <Casper> DarkSector: redhulk?
[01:27:22] <DarkSector> what
[01:27:35] <Casper> then nope, it ain't you then
[01:27:38] <DarkSector> what about red hulk?
[01:28:05] <Casper> someone I know on another network used to call himself DarkSector, and now is called RedHulk
[01:28:13] <DarkSector> Oh
[01:28:17] <DarkSector> No, I am not the same dude
[01:28:22] <DarkSector> I just liked the game very much
[01:28:24] <Casper> he's from Malta
[01:28:31] <Casper> a tiiinnyyyyy country...
[01:29:02] <Casper> mind you, the country is 316km²
[01:29:44] <Casper> the city "next door" here is 365km²
[01:29:56] <Casper> so the country is smaller than the next city!
[01:39:59] <megal0maniac_afk> GreaseMonkey: Maybe WDT if you have no more general timers
[01:41:21] <megal0maniac_afk> Or connect mains to an external interrupt. Then it'll be synced as well :P
[01:43:55] <megal0maniac_afk> I'd actually like to try that. 220vac - transformer - zener or other filtering - comparator - avr. Could use a cheap usb charger and rip out the rectification part
[01:48:03] <GreaseMonkey> megal0maniac_afk: how would i tune WDT?
[01:48:06] <GreaseMonkey> erm, i mean
[01:48:10] <GreaseMonkey> what frequencies can it handle?
[01:48:28] <GreaseMonkey> i get the feeling i was pretty stupid to use timer1 for audio as timer0 doesn't QUITE go low enough
[01:48:39] <GreaseMonkey> like, 61Hz or somethin
[01:48:39] <GreaseMonkey> g
[01:49:51] <Casper> use an external 32768 crystal and use it as a timer source
[01:50:10] <Casper> but I'm unsure if it will give 50/60
[01:50:15] <Casper> but sure divide into 1 second
[01:50:26] <Casper> nite
[01:50:28] <DarkSector> Uh, I am getting errors here http://pastie.org/private/3jamaxtgtzydj61sfhhkq#13,26
[01:50:48] <DarkSector> It compiles just fine when I run it on Studio
[01:51:31] <GreaseMonkey> hmm actually i could just have a flag which toggles when the interrupt gets called
[01:51:45] <GreaseMonkey> ah whatever i'll stick with 61Hz for now
[01:53:49] <DarkSector> Any help would be great guys.
[01:54:40] <GreaseMonkey> DarkSector: #define F_CPU 1000000UL //Using the internal clock with 8 prescalar
[01:54:47] <GreaseMonkey> you should make that a /* comment */
[01:54:54] <GreaseMonkey> the // comment will just screw things up
[01:54:54] <DarkSector> O_O
[01:55:49] <DarkSector> Gotcha
[01:55:52] <DarkSector> also, I found the rror
[01:56:00] <DarkSector> It's when I define the BAUD_PRESCALE
[01:56:05] <DarkSector> Extra (
[01:56:26] <DarkSector> But now I get this warning serialexample.c:18:8: warning: assignment makes integer from pointer without a cast [enabled by default]
[01:56:30] <DarkSector> When I load the UDR
[01:56:41] <DarkSector> What does this mean?
[01:58:21] <DarkSector> Oh
[01:58:35] <DarkSector> I might need to use puts and gets
[01:58:42] <DarkSector> Fuck it, let's try this out
[01:58:59] <GreaseMonkey> what you were doing there was quite unwise
[01:59:06] <GreaseMonkey> wait hmm
[01:59:13] <DarkSector> Okay
[02:00:33] <GreaseMonkey> ok, you should create a const char *mystring = "Hello";
[02:00:39] <GreaseMonkey> then a char *v = mystring;
[02:00:53] <GreaseMonkey> then do something like : UDR = *(v++);
[02:00:55] <GreaseMonkey> when that thing happens
[02:01:10] <GreaseMonkey> this should be while(*v != 0)
[02:01:28] <GreaseMonkey> or maybe if(*v == 0) v = mystring;
[02:01:59] <DarkSector> What about something like this? http://www.appelsiini.net/2011/simple-usart-with-avr-libc
[02:02:45] <DarkSector> puts and gets
[02:03:02] <DarkSector> Technically this guy did the same thing you told me
[02:03:05] <GreaseMonkey> what you see there is very clever libc hackery
[02:03:23] <GreaseMonkey> the end result should be the same but what i told you was a bit more direct
[02:03:30] <DarkSector> I prefer your way
[02:03:32] <GreaseMonkey> having said that you should do what he does because it's much more useful
[02:03:35] <DarkSector> I understand what's going on
[02:03:40] <GreaseMonkey> i.e. you can printf into that stuff
[02:03:40] <DarkSector> Oh
[02:03:47] <DarkSector> Yeah, hack stdout and stdin
[02:05:53] <overrider> q
[03:01:20] <DarkSector> So the header file that defines _BV has the loop_until_bit_set
[03:01:22] <DarkSector> http://www.nongnu.org/avr-libc/user-manual/group__avr__sfr.html
[03:01:34] <DarkSector> So is that good practice, to use this function?
[03:02:32] <megal0maniac_afk> No
[03:02:37] <megal0maniac_afk> For reasons stated above
[03:02:46] <DarkSector> Okay so the whole header is stupid
[09:52:14] <rtcg72a> Hi, does anyone know of any way to make Atmel Studio 6.1 support the At89s51?
[09:55:22] <OndraSter> that's 8051 core innit?
[09:55:33] <OndraSter> you are pretty much out of luck unless you want to do some haxxorzy
[09:56:06] <megal0maniac_afk> I forsee that haxxoring being a bitch to get right
[09:56:23] <OndraSter> well you'd have to write your own modules for C and/or asm compiler
[09:56:26] <OndraSter> for custom debugger
[09:56:27] <OndraSter> etc
[09:56:32] <OndraSter> so... just give up and move onto AVR
[09:56:33] <OndraSter> or ARM
[10:06:27] <rtcg72a> well, okay, thanks anyway for the help
[10:13:09] <overrider> I am trying to download code into a avr development board via an usbasp and avrdude, which fails as seen in the pastebin (verification error). The code seems to upload half only. On Windows in a Virtual machine using a program called PROGISP the same hexfile uploads perfectly. What could be the issue? http://pastebin.mozilla.org/3876058
[10:14:12] <megal0maniac_afk> overrider: What voltage is the avr running at? 3.3 or 5V?
[10:15:00] <overrider> megal0maniac_afk: 5V
[10:15:40] <overrider> 4.94V
[10:15:58] <megal0maniac_afk> Yeah.. then that isn't the problem.
[10:16:52] <overrider> The programmer also gets 4.93V via USB
[12:18:47] <AndChat-111201> Hi everybody, why do we wait for the SPI transmission to be complete by using "while (!(SPSR & (1<<SPIF))){};" instead of just doing "__builtin_avr_delay_cycles(14);"
[12:20:17] <sirpatrick> delaying is not the same thing as waiting for the register to show "done"
[12:21:07] <sirpatrick> by monitoring the register you know for certain when a transmission is complete
[12:24:09] <dfletcher> you could also do a bit of work while you wait in that while loop. delay just locks everything up.
[12:25:01] <sirpatrick> that too!
[12:27:10] <AndChat-111201> dfletcher: how can you do work if you have a while loop?
[12:27:24] <AndChat-111201> that while loop ties up the CPU
[12:27:57] <AndChat-111201> sirpatrick: and I agree it is not the same thing, but since I know for certain the speed of my SPI (master mode) therefore I can predict exactly how many clocks I need to wait
[12:28:22] <sirpatrick> AndChat-111201:It is a silly way to do something that is very simple using standard procedure
[12:28:27] <AndChat-111201> and while I can't do anything while I check for the SPIF flag, I could do something that I know takes exactly 14 cycles
[12:28:46] <AndChat-111201> sirpatrick: yes, I agree, but the standard proceedure is slow
[12:29:09] <AndChat-111201> at an 8MHz SPI clock, using the stanard proceedur, the overhead reduces bulk transfer down to roughly 4 MHz
[12:29:41] <AndChat-111201> using the delay trick reduces the overhead, between transmissions, from 15 cycles to 3 cycles, that is significant
[12:35:55] <sirpatrick> AndChat good point. If you need the performance than go for it
[12:36:01] <sirpatrick> may I ask what you use case is?
[12:37:13] <AndChat-111201> sirpatrick: I have a 24 bit ADC where I want to maximize the sampling speed
[12:37:29] <sirpatrick> sweet!
[12:37:32] <AndChat-111201> since it does not convert while I am downloading data via SPI, I have to reduce the SPI transmission time
[12:37:34] <sirpatrick> what is the ADC attached to?
[12:37:50] <AndChat-111201> oh.. a cryogenic temperature probe
[12:38:14] <sirpatrick> awesome!
[12:38:35] <dfletcher> you could also do a bit of work while you wait in that while loop. delay just locks everything up.
[12:38:44] <sirpatrick> sounds fun. Well, much more fun than a plain ol' pressure probe
[12:38:47] <dfletcher> eek sry
[12:39:01] <dfletcher> AndChat-111201, the way you do it is just to put some code in {}
[12:39:07] <dfletcher> you have some time in there
[12:39:10] <dfletcher> not much, but some.
[12:39:17] <AndChat-111201> dfletcher: how could I do work. the while loop locks up the CPU too
[12:39:18] <dfletcher> maybe some tight asm
[12:39:23] <dfletcher> what?!
[12:39:24] <AndChat-111201> dfletcher: oh, right
[12:39:42] <sirpatrick> it doesn't lock the CPU up
[12:39:44] <AndChat-111201> sorry I was thinking wrong lol
[12:39:48] <AndChat-111201> right right
[12:39:55] <sirpatrick> lol nw
[12:40:16] <AndChat-111201> but as mentioned the problem is not CPU time on the 328P, but it is the time after the ADC finishes conversion and when it starts a new conversion
[15:33:50] <Duality> is there such a thing as a relative small chips with multiple uarts ?
[15:34:14] <Duality> like two would do (twice rx && tx that is)
[15:40:50] <Duality> with relative small i meen like the size of atmega8
[15:45:54] <Casper> check the parametric table
[16:05:23] <amee2k> http://www.furaffinity.net/view/12307047/ omg, googley eyes on your tail = free cookies!
[16:05:43] <amee2k> err, wrong window. that was supposed to go one tab to the right :P
[16:07:09] <sirpatrick> duality:http://www.atmel.com/v2pfresults.aspx#(actives:!(8238,8394,8362,8282,8431,8300,8358,8392,8378,8445,8236,8449,8474,8248,8264,8447,8256,8254,8286,8462,8429,8458,8466,8400,8302,8278),data:(area:'',category:'34864',pm:!((i:8238,v:!(0,18)),(i:8394,v:!(0,20)),(i:8362,v:!(2,40)),(i:8282,v:!(0,1,2,3,4,5,6,7,8,9,10)),(i:8431,v:!(0,36)),(i:8300,v:!(1,9)),(i:8358,v:!(1,67)),(i:8392,v:!(0,1)),(i:8378,v:!n),(i:8445,v:!(0,3,4,5,6,7,8)),(i:8
[16:07:09] <sirpatrick> 236,v:!(0,30)),(i:8449,v:!(0,10)),(i:8474,v:!(0)),(i:8248,v:!(0,1)),(i:8264,v:!(0,5)),(i:8447,v:!(0,1)),(i:8256,v:!(1,2,3,4)),(i:8254,v:!(1,15)),(i:8286,v:!(0,3)),(i:8462,v:!(0,8)),(i:8429,v:!(1,10)),(i:8458,v:!(0,5)),(i:8466,v:!(1,2,3,4)),(i:8400,v:!(0,20)),(i:8302,v:!(0,1,2)),(i:8278,v:!(0,1,2))),view:list),sc:1)
[16:07:33] <sirpatrick> whoops
[16:07:38] <amee2k> gesundheit? :3
[16:08:25] <sirpatrick> parametric table at the bottom of this page:http://support.atmel.com/bin/customer.exe?=&action=viewKbEntry&id=691
[16:11:53] <Duality> sirpatrick: thank you alot! :)
[16:13:09] <sirpatrick> yup!
[16:17:22] <Duality> there seem to be no chips with less then 44 pins that has 2 uarts
[16:17:32] <Duality> and is a 8bit microcontroller
[16:18:00] <amee2k> depending on the baudrate, UART frames are pretty damn easy to bit-bang
[16:18:24] <Duality> yea but it would be easy if they had an interupt and hardware build for it :)
[16:18:34] <amee2k> i've done RX + TX UART and three servo drivers on a tiny24
[16:18:40] <Duality> but maybe sharing the uart is not such a bad idea either.
[16:20:21] <amee2k> maybe you can arrange it so you only need interrupts for one RX and one TX channel, and have the other two channels entirely synchronous
[17:04:38] <megal0maniac_afk> Duality: You're using the parametric thingy wrong
[17:05:19] <megal0maniac_afk> Duality: http://bit.ly/19oyBKs
[17:05:31] <megal0maniac_afk> (Because parametric search URLs are awful)
[17:06:50] <megal0maniac_afk> The brand new attiny 441 or 841 have 2 uarts and only 14 pins. Otherwise the attiny1634 or xmega E series
[17:07:57] <megal0maniac_afk> That being said, has anyone seen those new attinys? They're impressive. But no PDIP
[17:08:14] <sirpatrick> I haven't. What's new with them?
[17:08:36] <sirpatrick> and why the eff did they make a the search table like that? I do web stuff to and have never had to do shit in the URL like that
[17:09:03] <Epsilon-Auriga_> Duality: ummm..atmega1284p?
[17:09:42] <megal0maniac_afk> 2 USARTS, SPI and I2C and more in 14 pins. The datasheet (summary) says it all http://www.atmel.com/Images/Atmel-8495-8-bit-AVR-Microcontrollers-ATtiny441-ATtiny841_Datasheet-Summary.pdf
[17:09:57] <sirpatrick> damn
[17:09:59] <Epsilon-Auriga_> atmega644p
[17:09:59] <megal0maniac_afk> Epsilon-Auriga_: But 2 USARTS on an attiny is more impressive :)
[17:10:06] <Epsilon-Auriga_> megal0maniac_afk: true too.
[17:11:11] <Epsilon-Auriga_> but that 841 is not dip, I think, so harder to work with
[17:11:50] <megal0maniac_afk> Epsilon-Auriga_: No it isn't. But LOOOOK at the feature set
[17:12:04] <Epsilon-Auriga_> lots of features. I'll give it that.
[17:12:08] <megal0maniac_afk> Cheap breakout from ebay :)
[17:12:32] <megal0maniac_afk> Otherwise use stripboard and cut tracks in half :P
[17:13:38] <Epsilon-Auriga_> http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en557425 it's heresy, I know, but I have grown to like this chip.
[17:13:58] <megal0maniac_afk> Noooowaahhh
[17:14:00] <Epsilon-Auriga_> 28pin dip, dual usarts, 50MHz/83DMIPS, 32bit processor.
[17:14:09] <Epsilon-Auriga_> and hardware USB
[17:14:43] <megal0maniac_afk> I've always liked the 18F14K50
[17:14:56] <megal0maniac_afk> But that is pretty amazeballs
[17:14:58] <Epsilon-Auriga_> this thing blows that away for power.
[17:15:20] <Epsilon-Auriga_> might want to move to that OTHER channel to discuss it though.
[17:15:45] <megal0maniac_afk> I may have left that channel
[17:17:38] <Duality> Epsilon-Auriga_: the atmega1283p is way to big.
[17:17:58] <megal0maniac_afk> Duality: attiny841 :)
[17:18:51] <Duality> megal0maniac_afk: no dips will make prototyping hard for me
[17:20:07] <megal0maniac_afk> Duality: http://www.ebay.com/itm/321128290789
[17:20:15] <megal0maniac_afk> There. Now it's DIP
[17:20:38] <Epsilon-Auriga_> Duality: so, how big do you need it,,,or rather, how small?
[17:24:29] <avrrock> so.
[17:24:31] <avrrock> hi ^^
[17:24:42] <avrrock> to program an avr, say an atmega32
[17:24:56] <avrrock> you set the fuses for the external crystal to use
[17:25:17] <avrrock> then the programming frequency set in atmel studio needs to be 1/4 of that frequency
[17:25:29] <avrrock> and all is needed is miso/mosi/vtg/reset/gnd pins
[17:25:33] <avrrock> is that ok ?
[17:26:38] <sirpatrick> avvrock: http://arduino.cc/en/Main/Standalone
[17:26:49] <sirpatrick> hardware tut. Let me find you atmel studio tut
[17:27:17] <Casper> please, make yourself a favor and don't use the arduino library and tools
[17:27:29] <megal0maniac_afk> Also use SCK
[17:27:33] <megal0maniac_afk> It's important ;)
[17:27:43] <sirpatrick> Yea, if you want to learn about embedded systems go standalone AVR C
[17:28:12] <Casper> in fact, I even suggest that you try to make something in assembler, even if it's just a led flasher
[17:28:28] <Casper> then stay with C
[17:28:35] <Casper> it will help you to understand lots of things
[17:28:53] <avrrock> megal0maniac_afl... err yes ^^
[17:35:45] <avrrock> sirpatrick: documents for atmel studio is more rare then arduino
[17:37:21] <megal0maniac_afk> Casper: Arduino isn't a bad place to start. You do learn the basic concepts there as well, and you expand on it as you get into pure C
[17:37:25] <megal0maniac_afk> That's what I did
[17:38:05] <megal0maniac_afk> As long as you're not so ignorant that you think it's as easy as typing Serial.print()
[17:40:05] <megal0maniac_afk> Although... UDR = 'X';
[17:41:51] <megal0maniac_afk> Point is, don't discredit Arduino entirely. Yes it produces some idiots who think they know what they're doing, but that's the fault of the people, not the environment
[18:05:29] * Casper needs some to-220 heatsink :(
[18:05:33] <Casper> to the store! :(
[18:19:52] <avrrock> :D
[19:30:46] <GreaseMonkey> ffff why do speakers have to be magnetic D:<
[19:32:32] <GreaseMonkey> anyhow, arduino user here, just wrote a (slighty buggy) SN76489 emulator (Sega variant) in asm (needed cycle-exact timing)
[19:34:19] <GreaseMonkey> and with that said, serial IS pretty easy, even if you don't have libc
[19:34:33] <GreaseMonkey> as long as you know how to use interrupts it should be fine
[19:36:42] <carabia> you can try electrostatic instead of the more traditional speaker
[19:36:53] <carabia> #arduino, anyway
[19:37:15] <carabia> we don't take kindly to the likes of you around here
[19:37:19] <GreaseMonkey> i have an 8ohm i bought from dick smiths a while ago
[19:37:55] <carabia> and srsly, libc...
[19:38:20] <carabia> ask beaky for help
[19:39:26] <GreaseMonkey> what i have DOES work but it's a little bit flaky (the volumes like to screw up, for speed reasons i have a register to store the current volume and apply deltas)
[19:40:09] <carabia> electrostatic speakers require a high voltage driver
[19:41:18] <carabia> i've wanted to try out a pair of stax headphones for a while now but there are no shops here in which they'd be on display
[19:41:46] <carabia> in any case i wouldn't buy them. Can't be arsed to get a separate amplifier for them since I already have a semi-good headphone amp
[19:44:18] <DarkSector> Hey guys, could anyone tell me why my program is sending \x00 http://pastie.org/8581469#134 instead of 'A' sent when I program this code http://pastie.org/8581469#134 ?
[19:46:46] <DarkSector> I am using Unsigned char both times
[19:48:38] <carabia> what about the rest
[19:53:04] <DarkSector> Rest?
[19:53:39] <DarkSector> Unless you're not talking about my issue
[19:53:45] <carabia> yeah
[19:54:16] <DarkSector> I think I already discovered the problem
[19:54:32] <carabia> i was thinking of the baud rate being screwy
[19:54:45] <DarkSector> Yeah
[19:54:45] <carabia> but not sure. what was it then
[19:54:49] <DarkSector> That was it
[19:54:55] <DarkSector> How'd you know?
[19:55:08] <DarkSector> The calculation of Baud * 16 gives an integer overlflow
[19:55:11] <DarkSector> *overflow
[19:55:24] <carabia> use them as UL
[19:55:40] <carabia> was thinking of that... :)
[19:55:58] <carabia> cause 8000000 is clearly over int
[19:56:05] <DarkSector> Yep that solved it
[19:56:06] <carabia> um
[19:56:09] <DarkSector> UL
[19:56:09] <carabia> 9600*16 also
[19:56:18] <DarkSector> Unsigned long
[19:56:21] <carabia> yes
[19:56:25] <DarkSector> Damn, that makes a lot of difference
[19:56:51] <carabia> OT out of this, but I'd probably steer clear from that sort of code writing for uc's
[19:57:17] <DarkSector> Sorry?
[19:58:14] <carabia> nah, just about writing a lot of helper functions... or well. Maybe separate them in diff files
[19:58:45] <DarkSector> Helper functions like serial write etc?
[19:58:47] <carabia> anyway screw that off, i have never been too much info software :)
[19:58:56] <carabia> info=into
[19:59:07] <carabia> no that's okay
[19:59:25] <carabia> i'm just looking at the tx/rx readycheck functions
[19:59:36] <DarkSector> No yeah, that makes sense
[19:59:40] <DarkSector> Make libs
[19:59:54] <carabia> yeah if you want abstraction
[20:00:07] <carabia> anyway good that you got it sorted
[20:00:16] <carabia> and damn, the stax sr-009
[20:00:20] <carabia> are $4.4k
[20:00:31] <DarkSector> I should take a look at Arduino libs and see how they implement this stuff
[20:00:51] <carabia> most likely in a similar fashion...
[20:00:59] <carabia> i.e. there is no other way
[20:01:07] <carabia> or... there is... bit banging of course
[20:01:29] <carabia> ;D but they won't go there...
[20:01:32] <DarkSector> No I mean stuff like sending strings that are too long for unsigned char
[20:01:48] <DarkSector> E.g I sent "hello" and it says its too long
[20:01:56] <DarkSector> Should I have it accept unsigned long instead?
[20:02:58] <DarkSector> Yeah that doesn't work either
[20:03:09] <DarkSector> Shit, another subroutine for sending longer strings?
[20:03:52] <carabia> you could
[20:04:03] <DarkSector> or?
[20:04:22] <carabia> i mean, a subroutine to send longer strings
[20:04:24] <carabia> and use a pointer
[20:06:04] <DarkSector> Yeah, I should use a pointer
[20:06:11] <carabia> and just read a char at a time
[20:07:57] <carabia> out of the string that is
[20:08:36] <DarkSector> Yeah, I'll see about that
[20:08:44] <DarkSector> thanks carabia you've helped a lot
[20:10:26] <carabia> no probs i have to try to redeem myself
[20:10:47] <carabia> after all of those suggestions for a clueless kid to power his microcontrollers from mains and such...
[20:11:30] <N2TOH> it can be done with care...
[20:11:44] <carabia> I do it all the time. I just have a transformer in between
[20:12:14] <carabia> anyway. quick question. doesn't uSDXC come in 128 GB aswell?
[20:12:38] * N2TOH has seen product from Radio Shack powered from the mains without a transformer, it's not much more then a cap isolated Zenior supply
[20:12:46] <DarkSector> IDK I've seen only 64 gs
[20:12:51] <DarkSector> *GB
[20:13:09] <DarkSector> Actually http://www.newegg.com/Product/ProductList.aspx?Description=micro%20sd%20card%20128gb&Submit=ENE
[20:13:13] <DarkSector> It's available
[20:13:35] <DarkSector> Oh no wait
[20:13:56] <DarkSector> http://www.amazon.com/Kingston-Digital-Secure-SDX10V-128GB/dp/B0090J5XLS/ref=sr_1_1?ie=UTF8&qid=1388195852&sr=8-1&keywords=128gb+Micro+Sdxc
[20:14:39] <carabia> yeah but that's a full-size
[20:15:02] <carabia> N2TOH: you mean zener?
[20:15:08] <N2TOH> yes
[20:15:10] <carabia> yep
[20:15:42] <carabia> doesn't count though
[20:15:55] <N2TOH> what ever
[20:15:57] <carabia> mains is mains, 110, 230, 240
[20:16:22] <carabia> ;D
[20:16:33] <N2TOH> yes but a transformer less power supply from mains power
[20:16:42] <carabia> heh
[20:16:53] <carabia> it so seems they are only starting to roll out 128 GB uSDXC's
[20:17:10] <carabia> price will be probably hella, i paid €70 for this 64 GB of mine
[20:17:19] <carabia> i believe it was sandisk
[20:17:20] <N2TOH> it was very low power
[20:17:45] * N2TOH admits ignorance, what is a "uSDXC"?
[20:17:58] <carabia> micro sd card
[20:18:20] <N2TOH> the micro SD card part I got, but what is the XC part?
[20:18:59] <carabia> they dont make the low capacity ones anymore... it's only hc which is high capacity up to 32 GB and then there's XC which is "extreme capacity"
[20:19:12] <carabia> i think full size sdxcs go up to 256 at least
[20:19:13] <N2TOH> I can get 16GB uSD cards rather cheap from the local supplier
[20:19:26] <carabia> yeah but i'm looking for high capacity ones
[20:19:27] <DarkSector> well san disk came out with one
[20:19:39] <N2TOH> class 10 or faster?
[20:19:42] <DarkSector> but it hasn't hit the market yet
[20:19:45] <carabia> nah doesn't have to be
[20:20:06] <DarkSector> does class apply to SDXC cards?
[20:20:10] <carabia> and i'm not sure, samsung states the s4 will only handle 64 but I'm thinking it could handle a higher capacity sd card since the standard should be the same
[20:20:17] <DarkSector> I think class applies to stuff only till 16 GB
[20:20:24] <carabia> not sure, think it does
[20:20:25] <DarkSector> after that class doesn't matter or doesn't apply iirc
[20:20:54] <N2TOH> is the class rating not a measure of transfer speed?
[20:21:00] <carabia> yeah
[20:21:07] <carabia> i think the xc stuff has a scale of 1-3 or smth
[20:21:08] <DarkSector> Oh yeah it does actually https://www.sdcard.org/developers/overview/speed_class/
[20:21:11] <DarkSector> weird
[20:21:31] <carabia> anyway, thing is, i could ditch my 160 GB ipod if i could get my hands on a 128 GB card and
[20:21:40] <carabia> if the s4 would eat it
[20:22:12] <carabia> i really love the dac of the classic ipod though... not sure, any samsung phone owners? Can you get a digital audio out on those?
[20:22:25] <carabia> i find the s4's dac disappointing
[20:22:40] <N2TOH> seems to be a conspericy, as you would think it only a software/firmware upgrade to support bigger cards.
[20:23:14] <carabia> at least with the serial mode and sd->sdhc it's merely a software issue
[20:23:21] <carabia> but the serial mode is kind of slow
[20:23:25] <carabia> not sure about the XC
[20:23:44] <carabia> and the commercial licensed mode is a different story...
[20:23:53] <carabia> the high speed mode or whatever it was called
[20:25:39] <carabia> i've played around with memory cards a lot lately as i built an integrated mp3 player/dac/amp for out of town usage, but i didn't find any stuff on the high speed mode
[21:36:42] <rue_shop3> anyone here used an external eeprom to store audio ?
[22:00:05] <Epsilon-Auriga_> did an external eprom once.
[22:00:13] <Epsilon-Auriga_> copied someone else on it though.
[22:00:39] <Epsilon-Auriga_> did a doorbell with 4 external eproms and it would cycle through them as you hit the button.
[22:00:54] <Epsilon-Auriga_> 32Kx8bit uv eproms.
[22:04:17] <GreaseMonkey> i believe i've fixed my SN76496 emulation, it seems to be behaving fine although something weird happens during the playback of a vgm file