#avr | Logs for 2015-12-01

Back
[00:54:13] <rue_school> IS EVERYONE BEING ENCOURAGING!?
[00:54:35] * Casper discourages rue_school
[00:54:45] <Casper> more cut in school
[00:54:47] <rue_school> we should have one person share some code every day, preferably a different person
[00:54:52] <Casper> more hours for teachers, same salary
[00:54:57] <Casper> more students per class
[00:55:27] <Casper> 1:30am...
[00:55:32] <Casper> maybe it's time to shower and go to bed?
[00:59:29] <jaggz> when burning from windows, do you use atmel's toolchain?
[00:59:34] <jaggz> or should I use winavr?
[00:59:38] <jaggz> pros/cons?
[00:59:50] <rue_bed> I use notepad and make
[01:00:27] <rue_bed> #define SetBit(BIT, PORT) (PORT |= (1<<BIT))
[01:00:40] <rue_bed> thats my code contribution for today
[01:01:31] * Casper don't uses windows
[01:01:48] <rue_bed> I dont either, It was a translated responce
[01:02:01] <rue_bed> technically it would be notepad+
[01:02:04] <jaggz> what compiler?
[01:02:07] <rue_bed> gcc
[01:02:10] <rue_bed> -avr
[01:02:13] <jaggz> oh.. okay
[01:02:15] <jaggz> and to burn?
[01:02:29] <jaggz> Casper: it's all a lot easier in linux for some reason
[01:02:36] <jaggz> except visualsfm.. but that's a different situation
[01:02:42] <rue_bed> avrdude
[01:03:22] <jaggz> why don't I see avrdude/winavr's source code in their sourceforge page?
[01:03:44] * Casper did made a big mess in the work area...
[01:03:47] <Casper> lots of saw dust
[01:04:12] <Casper> all cleaned up now, just need a good shower and bed
[01:04:15] <jaggz> oh it's just a build of avrdude (and stuff, maybe) for windows http://sourceforge.net/projects/winavr/
[01:04:17] <jaggz> Casper: :)
[01:04:42] <Casper> now I have 4 chairs stored on the ceiling
[01:04:52] <Casper> with another 4 ready to go once I get some L brackets...
[01:05:31] <Casper> it's amazing what cordless tools can do now
[01:05:56] <Casper> can't wait for the battery technology to get 10 times better, then it will be scary
[01:06:28] <jaggz> there's probably something wrong with me that I want to compile my own avrdude instead of use winavr's compiled version
[01:06:32] <jaggz> Casper: lol
[01:06:38] <jaggz> I should learn to use my ceilings too
[01:10:04] <Casper> cordless impact drill
[01:10:07] <Casper> cordless drill
[01:10:11] <Casper> cordless jigsaw
[01:10:17] <Casper> cordless circular saw
[01:10:27] <Casper> and a corded press drill...
[01:10:39] <Casper> ... which motor appear less powerfull than my drill...
[01:12:58] <jaggz> you should buy me a good set as a gift
[01:13:08] <jaggz> I go for months without using them though.. do the batteries last?
[01:13:50] <Casper> mines are NiCD
[01:13:53] <Casper> so yes
[01:14:26] <jaggz> my table saw broke
[01:14:44] <jaggz> something inside must have stripped.. direct drive of motor to blade
[01:15:21] <Casper> the motor run but not the blade?
[01:16:58] <jaggz> yeah
[01:17:17] <jaggz> Casper
[01:17:24] <Casper> you sure the blade isn't just... loose?
[01:21:20] <jaggz> Casper: yessir :)
[01:22:03] <Casper> ok harbor freight?
[01:22:13] <Casper> sound like about that...
[01:22:28] <Casper> actually... maybe not
[01:23:12] <Casper> the motor should be D shaped, the blade "adapter" goes on should be D shaped, but may be round, with a screw that go in the notch from the side
[01:23:17] <Casper> might be just... loose
[01:23:30] <Casper> allowing the shaft to spin freely
[01:24:54] <jaggz> went and looked.. ryoby bts10
[01:25:28] <jaggz> ryobi
[01:27:01] <jaggz> Casper: I check.. thanks :)
[01:28:53] <jaggzt> I'll work on that later.. thanks casp
[01:30:00] <jaggzt> I don't like its rip fence.. it changes angle slightly when you clamp it down :(
[01:32:06] <Casper> most fence suck...
[01:32:24] <jaggzt> I previously used the older BTS10 for that. Terrible, terribly dangerous saw! The splitter never lined up. The fence was never parallel. The wood jammed and raised up, tempting me to push harder and harder. So bad last week ... I swore I would never use it again. To assure that, I dissasembled it completely the other day, saved the hardware, and threw out everything else at the dump.
[01:32:32] <jaggzt> that's from a review
[01:33:20] <jaggzt> my dad got it for me when he saw me cutting wood by mounting a circular saw upside down in a table
[01:33:32] <Casper> hehe
[01:33:51] <jaggzt> not really mounted.. sort of resting on the metal prongs.. one of those tables that expands for the center piece to go in
[01:33:54] <Casper> the splitter is that metal thing after the blade?
[01:33:56] <jaggzt> resting on those prongs
[01:34:05] <jaggzt> I'm not sure.. yeah.. the anti-kickback thing..
[01:34:11] <jaggzt> I don't have that on it either.. didn't line up
[01:34:38] <jaggzt> and the protective fences bother me too much..although probably it'd be wise to learn to use them
[01:34:48] <Casper> throw that away
[01:34:54] <Casper> it's more dangerous than not having it
[01:34:58] <jaggzt> protective covers I mean
[01:35:05] <Casper> yeah
[01:35:27] <jaggzt> maybe someday someone will improve on that one auto-breaking thing that guy tried getting all the vendors to install
[01:35:28] <Casper> they add that to protect themself from lawsuit... because americans are idiots...
[01:36:05] <Casper> oh yeah, that thing that every time it is triggered it cost like 150$ to bring it back operational?
[01:36:21] <jaggzt> although I have to admit, if you're one of those people who slips and slices their fingers off.. they'd think we're all dummies for not getting it now
[01:36:23] <Casper> and get triggered if you use moist wood?
[01:36:29] <jaggzt> yeah
[01:36:37] <Casper> pos...
[01:36:38] <jaggzt> there's a test you can do.. but not much you can do partway through wood
[01:36:54] <jaggzt> (you can test an item against it to see if it would trigger)
[01:37:05] <jaggzt> before the actual use where it explodes and breaks.. but stops the blade
[01:37:21] <jaggzt> I'm not sure what kind of mechanism would really work well
[01:37:46] <Casper> the blade stopping is useless
[01:37:51] <jaggzt> ?
[01:37:55] <Casper> just drop the blade
[01:38:00] <jaggzt> right
[01:38:04] <Casper> a good spring loaded system would work
[01:38:17] <jaggzt> his stops it and drops the blade
[01:38:37] <Casper> yes, but if you can drop the blade fast enought then you don't need to stop the blade
[01:38:50] <Casper> but I think he use the blade energy to kick it down
[01:39:01] <jaggzt> I can imagine, if the blade doesn't stop, dropping the blade might not be fast enough
[01:39:13] <jaggzt> but I think there are ways of making that happen
[01:39:25] <jaggzt> heck, mount it in a way that it counter rotates and drops
[01:39:28] <jaggzt> there be ways
[01:39:31] <jaggzt> probably
[01:40:16] <jaggzt> my touch sensors are working pretty well
[01:40:25] <jaggzt> got one of them inside the mouse too.. to test
[01:40:44] <jaggzt> ended up putting more spacing between the ground and the sensor (anode?)
[01:40:51] <jaggzt> not sure what to call the non-ground part of the cap
[01:41:12] <Casper> sensor and ground plane
[01:41:32] <jaggzt> thanks
[01:41:53] <jaggzt> so.. with just scotch tape between the two, it required a physical touch and press to really work
[01:42:06] <jaggzt> I need some distance because it's going to be inside the mouse under plastic
[01:42:22] <jaggzt> AND the sensor for the thumb will work off distance from the mouse.. so I need another cm or so
[01:42:53] <jaggzt> so to get those edge fields up, and decrease the field directly between the sensor and ground plane, I spaced them out with plastic
[01:43:26] <jaggzt> actually what I had available was a very air-filled plastic with lots of holes.. so I could do even better with a more solid electric field insulator
[01:44:01] <jaggzt> I think I need it to be contoured a bit.. not sure yet what to use for that..
[01:44:07] <Casper> there is another type of sensor that might work better
[01:44:10] <jaggzt> I might see if I can actually 3d print the spacings
[01:44:13] <jaggzt> inductive?
[01:44:17] <Casper> no
[01:44:18] <Casper> capacitive
[01:44:23] <Casper> but another technology
[01:44:27] <jaggzt> mm hmm?
[01:44:28] <Casper> where you need 2 plates
[01:44:45] <jaggzt> two sensors and the ground plane still?
[01:44:51] <Casper> no ground plane
[01:45:10] <Casper> basically, you transmit on one, and listen on the second
[01:45:21] <jaggzt> hmmmmm
[01:45:23] <Casper> if you put your finger close to it, you increase the transmission
[01:46:06] <jaggzt> so.. I'd ground B, then disable that, enable pullup on A, disable that, take a reading of B?
[01:46:29] <jaggzt> that's kinda cool.. don't have the same timing issue either (not that timing is an issue here.. but a feature)
[01:46:49] <jaggzt> afk
[01:47:45] <Casper> I don't know how it work in implementation
[01:48:17] <jaggz> hmm
[01:48:36] <jaggz> hey I could try a ground plane side by side with the sensor too
[01:48:50] <Casper> possibly yeah
[01:48:50] <jaggz> might be really low capacitance.. but it might work
[01:52:04] <Casper> or put the ground plane where the palm would rest
[01:52:40] <jaggz> hmmm
[01:53:15] <jaggz> that'd make the capacitance go all the way through a couple inches or more, and include the hand.. and the mcu board
[01:53:30] <jaggz> I think it might cause a lot of noise .. but I'll try that.. interesting :)
[01:53:43] <jaggz> there's probably something amazing I can do with a roll of copper tape
[01:54:01] <jaggz> like maybe I can sense heartbeat fields?
[02:11:09] <Casper> nite
[02:12:15] <jaggzt> night Casper :)
[05:43:08] <Lambda_Aurigae> I have ryobi 18V cordless gear,,,screwgun/drills, circular saw, jigsaw, compound miter saw, nail guns, staple guns,
[05:43:31] <Lambda_Aurigae> they all use the same 18V li-ion packs.
[12:02:01] <malinus> antto: thanks for. It was actually easier to just asin(time offset/time between mic's).
[12:02:29] <malinus> antto: also avr's were waaaayyyy too slow to do this. I've ended up implementing it on a arm chip.
[12:02:50] <malinus> I needed to sample 3 channels with ~1MSPS, and count usec's.
[12:03:24] <antto> 8bit chips are not really suitable for doing floating point realtime dsp stuffz
[12:03:47] <malinus> I didn't even do any dsp stuff
[12:04:02] <malinus> It's trigger by amplitude. I just needed fast sampling/counting.
[12:04:14] <malinus> Well and fast enough instruction execution.
[12:04:28] <antto> you're really stepping into dsp here ;]
[12:04:39] * malinus tries to step around
[12:04:42] <malinus> :D
[12:05:28] <malinus> It's possible with just peak detection, but I'm probably gonna need to do some filtering.
[13:35:47] <LeoNerd> http://www.amazon.co.uk/dp/B00XXEJ5RY I don't understand how this 32bit ARM dev board can possibly be cheaper than any 8bit AVRish board I can find and yet has tonnnnnes more features to it
[13:35:50] <LeoNerd> The world does not make sense
[13:39:02] <Fleck> LeoNerd: thats expensive
[13:39:13] <Fleck> http://www.ebay.com/itm/321569700934
[13:39:17] <Fleck> same chip AFAIK
[13:39:59] <Fleck> I can check actually, have both boards :D
[13:40:44] <Fleck> but titles says the same
[13:52:07] <Fleck> moving to stm32 LeoNerd? :)
[13:52:58] <LeoNerd> Unlikely for now... just observing it
[13:54:00] <Fleck> I have made some small projects on stm32, love it!
[14:31:55] <|DM|> LeoNerd, what 8bits are you paying that much for ?
[15:38:58] <Jartza> evening
[15:40:27] <Jartza> seems I've gotten a mystery package
[15:40:36] <Jartza> the tracking number starts with CP and ends with XX
[15:40:44] <Jartza> Origin: Foreign country
[15:40:54] <Jartza> Weight: 3,75 kg
[15:41:10] <Jartza> Sender: Look from the original address card
[15:41:25] <Jartza> (which I don't have, as I just got the note saying the package can be fetched from the local post office)
[15:41:36] <Jartza> also my name has been written wrong, it's Mari Tulilahti :D
[15:52:34] <learath> Jartza: drugs?
[15:52:45] <Jartza> hope not
[15:55:31] <Jartza> Mari is a girl name
[17:22:03] <Jartza> yay
[17:22:09] <Jartza> glitch-free horizontal scroll
[17:32:41] <Fleck> how can I start all timers at once anybody? Like, disable clock for all timers with single instruction and enable with single instruction, cause, when I enable clocks one by one, they drift away
[17:32:47] <Fleck> like sync them
[17:34:16] <LeoNerd> All the timers using the same clock as the source will maintain their relative offsets
[17:34:17] <Fleck> hmm GTCCR looks interesting...
[17:34:30] <Fleck> I don't need offset
[17:34:33] <Fleck> I need them in sync ;)
[17:34:34] <LeoNerd> Hm?
[17:34:45] <LeoNerd> What I mean is: they'll all remain in sync, give or take the initial start point
[17:34:51] <LeoNerd> They don't drift -independently-
[17:35:19] <Fleck> yep, but the problem is they don't start the same
[17:35:51] <Jartza> you can set their values
[17:36:00] <Jartza> ...if you mean counters
[17:36:02] <Fleck> timer3 is running late (7 cycles) from timer1 if I start them one by one
[17:36:09] <LeoNerd> Use a larger prescale
[17:36:12] <Jartza> timer is not running late
[17:36:18] <Jartza> counter is :)
[17:36:23] <Fleck> well - gets started later...
[17:36:29] <LeoNerd> If the prescale is larger than the number of instructions it takes to reset them all to the same vlaue, they'll all be coïncident
[17:37:24] <Jartza> or use asm and set their values, then you can count the clock cycles to see they have same value
[17:37:27] <Jartza> not a biggie
[17:37:43] <Fleck> Ill check GTCCR, looks like exactly what I need
[17:38:11] <Jartza> yay scroll
[17:38:11] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxN2liTkhpTHNTNDA/view
[17:39:45] <cehteh> wasnt there some signal / io to reset the timers to BOTTOM or whatever?
[17:40:05] <LeoNerd> Just write to the count register
[17:40:16] <cehteh> connect all to the same source .. start timers .. trigger that reset, disconnect the reset
[17:41:37] <Fleck> haha, yep, GTCCR works perfect!
[17:41:43] <cehteh> with writing the counter register you have to count the beans .. writing them in order, possibly with some offsets
[17:41:53] <Fleck> no need to calc offsets and shifts and crap
[17:42:06] <Fleck> cehteh: I don't
[17:42:24] <Fleck> GTCCR does the trick for me
[17:42:34] <Fleck> perfectly aligned now! :)
[17:42:40] <cehteh> yeah .. when that works fine
[17:42:46] <cehteh> iirc not all atmels have that
[17:42:56] <Fleck> atmega2560 does ;)
[17:43:15] <cehteh> of course use that then
[17:44:14] <Jartza> yea
[17:44:20] <Jartza> in attiny85 it doesn't do what you want
[17:44:59] <Jartza> it should, but it doesn't
[17:45:36] <cehteh> otherwise, like LeoNerd saied, they have the same clock source they are in sync, just live happily with their offsets
[17:45:56] <Jartza> ...or write the counter values manually ;)
[17:46:22] <Jartza> with inline-asm and cycle count ;)
[17:46:29] <cehteh> which may have its own challenges .. exactly
[17:47:07] <Jartza> it's not that challenging, io-register setting in avr asm is easy
[17:47:32] <cehteh> while (TCNT0!=TCNT1) TCNT1=0; .... :)
[17:47:34] <Fleck> I did write counter manually, but, the offset changes
[17:47:52] <LeoNerd> Use the TMS reset mode thing
[17:48:01] <LeoNerd> TSM
[17:48:06] <Fleck> I am now
[17:48:11] <Fleck> and it works! :)
[17:49:34] <Fleck> cehteh: in software? that won't work good ;p
[17:50:47] <cehteh> Fleck: once at initialization after starting the timers, .. there is a chance that it will not work, but thats deterministic.
[17:51:03] <cehteh> but basically i meant that as funny comment
[17:51:08] <Fleck> if you have static timer values
[17:51:20] <cehteh> static?
[17:51:23] <Fleck> but here - user can change freq/duty
[17:51:38] <cehteh> ah ok
[17:52:16] <Jartza> it's a pity it didn't work on attiny
[17:52:18] <cehteh> but then you may really reset the timers to zero by some strobe signal
[17:52:49] <Fleck> cehteh: anyway, problem solved, GTCCR did the trick! :)
[17:52:56] <Fleck> thanks guys!
[17:53:01] <cehteh> glitch free?
[17:53:09] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxNW1HaUxYRUZhdUk/view
[17:53:11] <Jartza> you can scroll either full screen or individual row
[17:53:23] <Fleck> cehteh: yep
[17:53:31] <Jartza> Fleck: that's the way it SHOULD work
[17:53:40] <cehteh> Jartza: is that documented somewhere that it doesnt work?
[17:53:42] <Jartza> it should keep the timer prescaler in reset
[17:54:00] <Jartza> cehteh: not at least in datasheet :)
[17:54:12] <cehteh> addendum?
[17:54:14] <Jartza> maybe I did something wrong, but I would've wanted to use that in my VGA code
[17:54:21] <Fleck> yep, I set all timer values, then just reset GTCCR reg and they all start at the same time, no offsets between counters
[17:54:32] <Jartza> I had to cycle count and set values manually
[17:56:03] <Jartza> but I'm very happy now with the vga :)
[17:56:08] <Jartza> as I got the horizontal scrolling to work
[17:56:50] <cehteh> looks cool
[17:57:01] <cehteh> never imagined that possible with the tiny
[17:57:21] <cehteh> *but* do you have any cycles and program space left to do something useful to display? :)
[17:57:24] <Fleck> Jartza: did you check errata?
[17:57:52] <Jartza> nope
[17:58:18] <Jartza> cehteh: well, you can hook it up to about anything, it has 9600 bps UART
[17:58:31] <Jartza> cehteh: ...and you can use ANSI-escapes ;)
[17:58:38] <cehteh> haha
[17:58:47] <cehteh> ok
[17:59:46] <Jartza> or subset of it at least
[18:00:12] <Jartza> https://github.com/Jartza/octapentaveega/blob/master/vga_uart_protocol.txt
[18:00:34] <cehteh> someone i know did some cool demoscene stuff with atmels, but iirc megas
[18:01:12] <Jartza> yea, there are awesome atmega demos
[18:01:20] <Jartza> but attiny85 is a bit different beast
[18:01:44] <Jartza> cehteh: did you see this? https://drive.google.com/file/d/0B2dTzW9TMeBxWV9LSjZBRmliVkU/view
[18:02:58] <Jartza> :)
[18:03:01] <cehteh> Jartza: do you have the schematics, photos of the board and sourcecode?
[18:03:08] <cehteh> open source?
[18:03:54] <Jartza> https://github.com/Jartza/octapentaveega
[18:04:42] <Jartza> B/W board: https://drive.google.com/file/d/0B2dTzW9TMeBxaFFxam1uVW05NlE/view?usp=sharing
[18:05:12] <Jartza> Color board: https://drive.google.com/file/d/0B2dTzW9TMeBxX2VmQmw3aXhWUDA/view?usp=sharing
[18:05:32] <Jartza> Color board component side: https://drive.google.com/file/d/0B2dTzW9TMeBxRXVzSUNCT1h2NHM/view?usp=sharing
[18:05:43] <Jartza> the Blog Post explaining all this will follow
[18:05:57] <cehteh> :)
[18:08:57] <Jartza> but good point
[18:08:59] <Jartza> updated the readme
[18:09:14] <Jartza> oh and there's also arduino shield
[18:09:14] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxUDQ4QUduWDV2TFE/view
[18:09:15] <Jartza> :)
[18:21:45] <wondiws> why is the reference voltage of ADC often 2.56V, why exactly 2.56?
[18:24:39] <cehteh> possibly because its easy and cheap to manufacture as bandgap, also in 8 bit that would be 10mV per step, seems to be handy
[18:24:56] <cehteh> in short: they just did it that way
[18:26:41] <cehteh> https://en.wikipedia.org/wiki/Bandgap_voltage_reference
[18:28:29] <LeoNerd> 10mV is convenient
[18:29:09] <LeoNerd> It doesn't have to be exactly 2.56V but there's a limited range that works, and 2.56V is a nice number in that range
[18:29:44] <LeoNerd> It's also handily below 3.3V meaning it works on 3.3V supply, whereas a 4.096V ref would not
[18:31:10] <cehteh> besides whatever they choosen, someone would always wonder why :F
[18:34:40] <Jartza> cehteh: anyway, that's my hobby project, been for a while :)
[18:34:51] <Jartza> I'm now fairly happy with the code
[18:35:11] <Jartza> (and the PCBs)
[18:36:35] <Jartza> I'm going to update that video, transcoding
[18:40:38] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxai1tc0ZBa0o2TTQ/view
[18:52:15] <Lambda_Aurigae> oooo..graphics!
[18:52:19] <Lambda_Aurigae> kindasorta..hehe
[18:52:34] <Jartza> heh
[18:52:44] <Jartza> but the scroll now works like I want it to
[18:52:52] <Lambda_Aurigae> sweet.
[18:52:57] <Jartza> seen in the end of video
[18:53:03] <Lambda_Aurigae> watching it now.
[18:53:09] <Lambda_Aurigae> is doing the ramdom character erase
[18:53:25] <Jartza> yea. that ansitester.py is also in the git
[18:53:36] <Jartza> quick'n'dirty python
[18:54:13] <Lambda_Aurigae> nice demo.
[18:54:17] <Lambda_Aurigae> just need that blog post.
[18:54:30] <Jartza> yea
[18:54:45] <Jartza> also made videos for just the scrolling
[18:54:53] <Lambda_Aurigae> I still think it's damned impressive considering the hardware.
[18:54:56] <Jartza> just scroll (!) up to see them :)
[18:55:13] <Lambda_Aurigae> that one video is enough to be impressive.
[18:55:52] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxN2liTkhpTHNTNDA/view
[18:55:56] <Jartza> https://drive.google.com/file/d/0B2dTzW9TMeBxNW1HaUxYRUZhdUk/view
[18:55:57] <Jartza> :)
[18:56:04] <Jartza> just to show-off the horizontal scrolling
[18:56:11] <Jartza> either single row or full screen
[19:01:19] <Lambda_Aurigae> feature creep time....start and stop rows for multiple row scrolling?
[19:01:55] <Jartza> hehe
[19:02:11] <Jartza> _could_ be doable :P
[19:02:29] <Jartza> though I was still pondering about the graphics mode
[19:02:48] <Jartza> 64 x 56 graphics :D
[19:03:11] <Jartza> _with_ start and stop row
[19:03:25] <Jartza> so each "character" in buffer could represent 2x4 pixel matrix
[19:04:48] <Jartza> sort of like TSR-80 did...
[19:05:04] <hackvana> TRS?
[19:05:09] <Jartza> https://upload.wikimedia.org/wikipedia/commons/thumb/2/2d/TRS-80-graphics.svg/265px-TRS-80-graphics.svg.png
[19:05:14] <Jartza> yea, trs :)
[19:05:15] <Jartza> sorry
[19:05:21] <hackvana> TRS-80 matrix was 2 cols by 3 rows
[19:05:33] <Jartza> yep
[19:05:35] <Jartza> but similar idea
[19:05:40] <hackvana> Yep
[19:06:01] <Jartza> only I would be using some kind of custom escape code to define start and stop row for graphics mode
[19:06:07] <Jartza> and use all 8 bits for pixels
[19:07:42] <hackvana> Ahh, so outside of that range, mode=text, and inside of that range, mode=graphics?
[19:08:09] <Jartza> yes
[19:08:32] <hackvana> Seems legit
[19:08:44] <Jartza> something like <esc>[4;8G (or whatever) would define graphics-mode for rows 4-8
[19:08:50] <Lambda_Aurigae> apple-II did similar for their combined text/graphics mode...with graphics being the upper 3/4 of the screen with text only on the lower 1/4 or so.
[19:09:25] <Jartza> 64 x 54 pixels isn't that much, but what the heck
[19:09:59] <Lambda_Aurigae> graphics!
[19:09:59] <Lambda_Aurigae> hehe
[19:10:05] <Jartza> yea
[19:10:13] <Jartza> and that actually would even be very simple to implement ;)
[19:10:20] <Jartza> because I have plenty of flash free
[19:10:31] <Jartza> just add another "font" :P
[19:10:41] <Jartza> and switch font start offset for those rows
[19:11:08] <Jartza> that font would also be easy to generate with python
[19:11:21] <Jartza> and only slight changes to code
[19:11:35] <Lambda_Aurigae> so using my multiple-font display suggestion..hehe
[19:11:56] <Jartza> yeah, but instead of multiple font, create "graphics" :)
[19:12:28] <Lambda_Aurigae> just a graphic font.
[19:12:32] <Jartza> yep
[19:13:00] <Jartza> third option I was thinking was just some kind of switchable font, but create other font with some kind of graphics primitives
[19:13:04] <Jartza> that could be more useful
[19:13:20] <Jartza> like c64 font had
[19:20:47] <m4t> why is alsa_in/alsa_out always resampling? even if their bitrate is the same that they opened the alsa device with>
[19:20:50] <m4t> ?
[19:21:19] <Lambda_Aurigae> what is alsa_in/alsa_out?
[19:21:27] <m4t> i mean sample rate not bitrate
[19:21:39] <m4t> they let you attach another alsa device to jack
[19:21:52] <m4t> either as an input or output, accordingly
[19:22:54] <m4t> oh
[19:22:56] <m4t> wrong channel
[19:22:58] <m4t> haha
[19:23:05] <Lambda_Aurigae> guessing you are talking about advanced linux sound architecture.
[19:23:09] <Lambda_Aurigae> and,,,no flippin clue.
[19:23:11] <m4t> yeah
[19:23:14] <m4t> well thanks for trying
[19:23:22] <Lambda_Aurigae> or the ALS Association
[19:23:39] <Lambda_Aurigae> which makes even less sense....but they are always sampling too I suppose.
[19:25:49] <Jartza> :D
[19:28:20] <Casper> m4t: #alsa
[19:28:31] <Casper> or is it #alsa_project ...?
[19:28:32] <m4t> #jack actually but thanks :-)
[19:28:49] <m4t> i meant to send that to #lad originally, linux audio development
[19:29:20] <m4t> interestingly i'm using an atmega328p as a midi clock source w/a 10ppm crystal
[19:29:42] <m4t> http://midisizer.com/midigal/ this thing
[19:43:22] <Jartza> I got a present, LOL
[19:43:39] <Jartza> three attiny5s
[19:44:32] <Jartza> someone wants me to make pentaveega? :D
[19:47:17] <Jartza> 32 bytes of ram, 512 bytes flash
[19:47:20] <Jartza> nicccce
[19:47:35] <Jartza> 6 pins
[19:48:03] <Lambda_Aurigae> hehe.
[19:48:22] <Lambda_Aurigae> 4x4 characters on screen?
[19:48:27] <Jartza> sot23-6 :)
[19:48:30] <Jartza> heh
[19:49:05] <Jartza> just tiny prob, no space for font :D
[19:50:23] <Jartza> I'm sure I could generate hsync and vsync, but anything useful between them? not sure :D
[19:58:37] <Jartza> sometimes avr design choises baffle me
[19:59:02] <Jartza> that pesky attiny5 has 16-bit timer/counter
[19:59:16] <Jartza> but attiny85 doesn't
[20:00:00] <cehteh> i think they design them on bulk order, whatever has success gets blown onto the market
[20:01:19] <Jartza> though, to be honest, I've made a firmware for attiny5 that ended up in a product costing ~700€
[20:01:25] <Jartza> :D
[20:01:34] <Jartza> ~300 bytes
[20:01:39] <cehteh> happens
[20:02:10] <cehteh> hey i want to play with a kinetis, prolly no challenge for you (but hey you could port linux to it)
[20:02:15] <cehteh> kl02
[20:02:34] <Lambda_Aurigae> I have code I wrote in the late 80s that ended up in a 60million dollar product...
[20:02:39] <Lambda_Aurigae> for the 4004 processor
[20:02:42] <cehteh> http://www.wired.com/2013/02/freescales-tiny-arm-chip/
[20:02:45] <Lambda_Aurigae> on board the GPS/NDS satellites.
[20:02:53] <Jartza> nice
[20:03:22] <Jartza> cehteh: we use kinetis in customer project currently
[20:03:50] <cehteh> Jartza: are they available for hobbyists somewhere for reasonable prices?
[20:04:41] <Jartza> nice features for it's price but quite often you bang your head against the wall shouting "whyyyy? whyyyy? why did they let old powerpc designers out of the basement?"
[20:04:43] <cehteh> soldering and flashing them must be a pain :)
[20:04:56] <Jartza> naah
[20:05:19] <cehteh> i havent looked too closely on them but specs are impressive
[20:05:25] <Jartza> they are available as devkits
[20:05:51] <cehteh> yes for $$$ and you hardly make some homegrown IoT thing from a devkit
[20:06:07] <Jartza> personally I would rather get stm32 cortex m, maybe a nucleo board
[20:06:30] <Jartza> costs ~$10 and includes flasher (st-link)
[20:06:45] <cehteh> oh that cheap
[20:06:47] <cehteh> nice
[20:07:17] <Jartza> more pins, but also arduino-compatible headers on board
[20:08:19] <Jartza> if you're starting with arm, maybe get a cortex m0+
[20:08:59] <Jartza> and nucleo-boards are now available as mini-versions too
[20:16:18] <cehteh> meh .. freenode
[20:16:19] <Lambda_Aurigae> Jartza, was just doing some math and I think I can do 800x600 mono vga with a single pic32mx270f256b chip...and make it usb interfaced to boot.
[20:16:24] <cehteh> are there any avr's with more than 10bit adc?
[20:16:32] <Lambda_Aurigae> cehteh, doubtful.
[20:17:31] <Lambda_Aurigae> atmega all have 10bit only.
[20:17:44] <Jartza> maybe xmega
[20:17:56] <Jartza> Lambda_Aurigae: nice :)
[20:18:02] <Lambda_Aurigae> attiny have 8 or 10 bit
[20:18:06] <cehteh> ah yes 12bit there
[20:18:28] <Lambda_Aurigae> atxmega are all 12bit
[20:18:56] <Lambda_Aurigae> and avr32 are 10 or 12
[20:19:18] <Lambda_Aurigae> Jartza, with 64K sram, that leaves me with 5536 bytes extra ram.
[20:19:29] <Lambda_Aurigae> 60000 bytes for 800x600 1bit.
[20:19:29] <Jartza> yeaj.
[20:19:46] <Jartza> the specs of the chip look ol
[20:19:48] <Jartza> ok
[20:19:58] <Lambda_Aurigae> and only need a little over 1.5K for a decent usb-cdc setup.
[20:20:02] <Jartza> stupid cellphone virtual kbd :)
[20:20:08] <Lambda_Aurigae> hehe.
[20:20:19] <Lambda_Aurigae> yeah...and it runs at 50MHz which rocks...
[20:20:44] <Jartza> I once tried PIC years ago, but I didn't inhale
[20:20:46] <Lambda_Aurigae> and can run at 48MHz without an external crystal, synced to the USB clock...but don't think that would be stable enough for video.
[20:20:51] <Lambda_Aurigae> pic32 is different from pic.
[20:20:56] <Lambda_Aurigae> pic32 is mips processor.
[20:21:03] <Lambda_Aurigae> with pic peripherals tacked on.
[20:21:03] <Jartza> yea
[20:21:35] <Lambda_Aurigae> mostly I use them as usb-serial adapters with giant buffers.
[20:21:46] <Lambda_Aurigae> or usb-spi or usb-i2c adapters.
[20:21:59] <Lambda_Aurigae> then do most of my work on avr.
[20:22:09] <Jartza> I prefer cortex m arms for 32bit
[20:22:21] <Jartza> but pic32 might be worth a try too
[20:22:32] <Lambda_Aurigae> that's great if you have the boards and such to solder them on to.
[20:22:43] <Lambda_Aurigae> with that pic32mx chip, it's 28pin dip package.
[20:22:59] <Lambda_Aurigae> so I can toss it on a solderless breadboard and go to work.
[20:23:20] <Jartza> I have plenty of different breakout boards
[20:23:27] <Lambda_Aurigae> I still prefer 8bit avr overall for my toys though.
[20:23:35] <Jartza> me too
[20:23:48] <Lambda_Aurigae> just wish they had usb and code-execute-from-sram on an 8bit avr in a dip package.
[20:24:03] <Lambda_Aurigae> that would make avr absolutely perfect in my book.
[20:24:04] <Jartza> it's rare I need anything that really needs 32bit in my hobbies
[20:24:30] <Jartza> just that stm32 price is very nice
[20:24:37] <Lambda_Aurigae> I like that combination...and am really loving the execute from sram thingie for my little retro computer toy I'm trying to build.
[20:24:59] <cehteh> sooner or later 8bit stuff will die out
[20:25:23] <cehteh> even if you dont need 32bit its much easier/cheaper to program
[20:25:25] <Jartza> nothing wrong in 8bit
[20:26:04] <cehteh> no not wrong, but if you get something better with 32bit for less $$ ...
[20:26:19] <Jartza> and imo most 8bit cpus are much easier to program than 32bit
[20:26:40] <cehteh> on the low level yes
[20:27:00] <cehteh> but i hate it that many people expect some runtime lib and rtos ...
[20:27:02] <Lambda_Aurigae> C is C is C
[20:27:02] <Jartza> sure, stm32 cortex m0 is somewhere around $1
[20:27:11] <JoeLlama> C.H.I.P. vs Pi Zero: Which Sub-$10 Computer Is Better?: http://makezine.com/2015/11/28/chip-vs-pi-zero/
[20:27:13] <Lambda_Aurigae> just need to learn the peripherals.
[20:27:30] <Jartza> sure
[20:27:40] <cehteh> but with 32bit stuff there comes some more complexity .. dma engine etc
[20:27:55] <Jartza> if you need one
[20:28:09] <cehteh> they are sometimes just there
[20:28:17] <Jartza> sure they are
[20:28:28] <Jartza> still you don't have to use them :)
[20:28:35] <cehteh> yeah
[20:28:37] <lald> on an AVR where the interrupt vectors are two words, can I use two one-word instructions?
[20:28:44] <lald> ie, "nop; reti"
[20:28:55] <Jartza> no
[20:29:01] <lald> thanks
[20:29:06] <Jartza> there is no one word instructions
[20:29:26] <Jartza> oops
[20:29:38] <cehteh> :)
[20:29:41] <Jartza> I mean, all avr instructions are one word
[20:29:49] <Jartza> getting bit tired
[20:29:54] <Lambda_Aurigae> nighters all.
[20:30:01] <Lambda_Aurigae> it's 4 minutes past my bedtime!
[20:30:31] <Jartza> what I meant was, all interrupt vectors are one word too
[20:30:54] <Jartza> Lambda_Aurigae: night! 4am here, so soonish I need to sleep too
[20:31:19] <Jartza> lald: interrupt vectors are two bytes, one word
[20:32:33] <lald> Jartza: Hmm. Pretty sure my datasheet says to use a nonrelative jump.
[20:32:37] <lald> checking again.
[20:33:43] <Jartza> yes, rjmp
[20:34:16] <Jartza> which is one word
[20:34:17] <lald> Nonrelative
[20:34:20] <Jartza> 16 bits
[20:35:41] <Jartza> really getting tired it seems as I can't even make sense myself what I'm talking :)
[20:35:58] <lald> okay, I didn't read it carefully enough. only RESET uses jmp.
[20:36:22] <Jartza> yea, rjmp is the usual
[20:36:30] <lald> Cool, thanks :)
[20:38:25] <Jartza> anyhow. interrupt vectors are all word long.
[20:38:40] <Jartza> wow. comprehensive sentence :D
[20:41:07] <Jartza> and to my knowing there are only 4 opcodes that take two words
[20:41:18] <Jartza> jmp, call, sts and lds