[00:30] <Azelphur> ali1234: so, I've got this fan controller all up and running in a VM, care to give me a bit of guidance? :)
[07:45] <Legion5> dir
[07:45] <Legion5> list
[08:14] <AlanBell> raspberry jam \o/ http://www.eventbrite.com/event/3878091476
[08:43] <czajkowski> aloha
[09:40] <brobostigon> good morning everyone.
[09:41] <AlanBell> now do I have enough bits on my desk to build a new computer
[09:44] <gigix> AlanBell, what are the parts ?
[09:45] <AlanBell> several incomplete units
[09:45] <christel> bits \o/
[09:45] <AlanBell> I think I have one together, found some ram that fits, have loads of HDDs kicking about
[09:46] <AlanBell> yup, that boots
[09:47] <gigix> as long as it does not burn ;-)
[10:01] <AlanBell> dual core atom with 1GB ram and a 320GB disk now
[10:01] <AlanBell> just installing Precise
[10:04] <AlanBell> bother, the wireless card won't fit
[10:36] <gigix> AlanBell, ethernet otherwise ?
[12:44] <Azelphur> ali1234: you about to give me some help with this bitfenix fan controller? :)
[13:11] <ali1234> Azelphur: ok
[13:11] <Azelphur> ali1234: so I got it up in virtualbox, and I've been hacking away in python trying to get it to talk to me, no luck :(
[13:11] <ali1234> got dumps?
[13:11] <Azelphur> it should be broadcasting pings to tell me fan speeds and stuff, not sure if I have to request those pings
[13:11] <Azelphur> yea
[13:12] <ali1234> you do
[13:12] <ali1234> USB is entirely host controlled
[13:12] <ali1234> device cannot initiate comms
[13:12] <Azelphur> ali1234: https://dl.dropbox.com/u/3832397/misc/2012/July/recon it's a wireshark dump
[13:12] <ali1234> what about a lsusb -vvv
[13:13] <Azelphur> http://pastebin.com/0WSTQ2W6
[13:13] <Azelphur> it's a mouse! :D
[13:14] <ali1234> hid mouse wat
[13:14] <ali1234> that makes no sense at all
[13:14] <Azelphur> apparently it's a dirty hack to stop windows searching for drivers for it
[13:14] <ali1234> if you plug it in inux does the pointer mose right when the temperature goes up?
[13:14] <ali1234> well, anyway
[13:15] <Azelphur> haha
[13:15] <ali1234> you only have 1 endpoint there
[13:15] <ali1234> and it's interrupt
[13:15] <ali1234> so that's where the temperatre data will come from
[13:15] <ali1234> there's no EP OUT
[13:15] <ali1234> so most likely everything else is done using the setup EP
[13:15] <ali1234> which means making a driver is really simple
[13:16] <ali1234> you'll have to read the dump to find out the commands though
[13:16] <Azelphur> that's cool, my python code gets the right address then
[13:16] <Azelphur> my code tries to read from endpoint 0x81, but I just get operation timed out.
[13:16] <ali1234> dunno about that
[13:16] <ali1234> ah
[13:16] <ali1234> so interrupt end point is funny
[13:16] <ali1234> you read and it blocks until the the interrupt happens
[13:16] <ali1234> if you don't tell libusb it's an interrupt it will time out
[13:17] <ali1234> you might also increase the timeout
[13:17] <Azelphur> http://pastebin.com/iagv2d7R is what I have atm
[13:17] <ali1234> i've never used that stuff
[13:18] <ali1234> libusb looks a bit different to that
[13:18] <Azelphur> apparently it's more or less the same as the C libusb stuff just in a different syntax
[13:18] <Azelphur> oh
[13:18] <ali1234> let me show you a program that uses libusb to do setup requests
[13:18] <Azelphur> ok :)
[13:18] <ali1234> you want to figure that stuff out first
[13:19] <ali1234> so this is C http://al.robotfuzz.com/~al/s1mp3/unstable/hostapp/hostapp.c
[13:19] <ali1234> usb_control_msg
[13:19] <ali1234> timeout 5000
[13:20] <ali1234> and so on
[13:20] <ali1234> what you want to do is look in the dump for setup/control messages
[13:20] <ali1234> then try to replicate those
[13:21] <Azelphur> I see, still don't fully understand the dumps
[13:22] <Azelphur> looks like pyUSB has a controlMsg :)
[13:22] <ali1234> yeah it should
[13:22] <ali1234> ok let me install wireshark
[13:22] <Azelphur> :D
[13:23] <ali1234> hmm that dump is not helpful
[13:23] <Azelphur> :(
[13:23] <ali1234> ah
[13:24] <ali1234> you see where it says USB_CONTROL out
[13:24] <ali1234> URB_INTERRUPT in
[13:24] <Azelphur> oh yea :)
[13:24] <ali1234> well, source host means computer wrote to device
[13:25] <Azelphur> yea I gathered that
[13:25] <Azelphur> the data doesn't make much sense though
[13:25] <ali1234> it's hex
[13:26] <ali1234> it is going to be one of: char, short, int, long, possibly signed or unsigned
[13:26] <ali1234> 0010  83 93 f7 4f 00 00 00 00  2c 0c 02 00 8d ff ff ff   ...O.... ,.......
[13:26] <Azelphur> I see
[13:27] <ali1234> that's a dead giveaway for little endian signed
[13:27] <ali1234> 32 bit ints
[13:27] <ali1234> 32 bit because of 00 00 00 00 = 0
[13:27] <ali1234> little endian because you have a 00 in 4th position
[13:27] <ali1234> and smaller numbers more likely than big
[13:28] <ali1234> not sure about signed/unsigned
[13:28] <ali1234> so, 2c 0c 02 00 -> 0x00020c2c
[13:29] <ali1234> open a python shell and type 0x00020c2c and hit enter
[13:29] <ali1234> 134188
[13:29] <ali1234> does not mean much to me
[13:29] <Azelphur> me either xD
[13:29] <ali1234> there could be floats in there too
[13:30] <ali1234> so, what actual data does this thing send to PC?
[13:30] <ali1234> you have to think like the programmer. "if i wanted to send this data to PC, how would i do it?"
[13:30] <Azelphur> that's one I can answer, the stock driver shows debug output
[13:30] <ali1234> meaning?
[13:31] <Azelphur> meaning I can show you example decoded fan controller output :P
[13:32] <ali1234> great, let's see it?
[13:33] <ali1234> btw what controller chip does it use?
[13:33] <ali1234> i bet it's an AVR or a PIC
[13:33] <Azelphur> no idea
[13:34] <Azelphur> ali1234: http://pastebin.com/Hq1wxYHt
[13:34] <ali1234> SONiX USB Device
[13:34] <ali1234> i think you dumped the wrong device
[13:35] <Azelphur> no, virtualbox identifies it as a SONiX USB Device too
[13:35] <Azelphur> that's the device I passthrough to make it work
[13:35] <ali1234> then the Microdia thing is wrong?
[13:36] <ali1234> ah maybe not
[13:36] <Azelphur> I think it's more that the pci db is wrong or that they are misusing a pci id
[13:36] <ali1234> no, that data all comes from the device
[13:36] <Azelphur> because I used the vendor and product id from virtualbox to find it in lsusb
[13:36] <Azelphur> so it's definitely the right thing :)
[13:36] <ali1234> actually vendor id string doesn't come from device
[13:37] <ali1234> ok from the dump
[13:37] <Azelphur> the dump, I have one fan plugged in it's running at 1300 RPM on channel 0 and it's maximum RPM is 2800
[13:38] <Azelphur> so that's what that data is about :p
[13:38] <ali1234> so 5 channels?
[13:38] <Azelphur> yup
[13:38] <ali1234> the packet length is 72
[13:38] <ali1234> the response is 64
[13:39] <ali1234> 64/5 = 12.8
[13:39] <ali1234> so 4 byte header, and then 12 bytes per channel
[13:39] <ali1234> so in python shell do hex(1300), gives 0x514
[13:39] <Azelphur> fun, patched my code to match that :)
[13:40] <ali1234> in little endian thats 14 05
[13:41] <ali1234> but there's temperature sensors too
[13:41] <ali1234> and something that looks like a bitfield
[13:42] <Azelphur> I don't think it's actually reporting temperature, just the alarm temperature for that sensor (sadface)
[13:42] <ali1234> in dumps there is a field that = 200
[13:43] <Azelphur> yea, there's lots of 200's in the debug output too
[13:43] <Azelphur> that's the maximum RPM of a not connected fan \o/
[13:44] <ali1234> hang on, the dump is showing the whole packet
[13:45] <Azelphur> o.O
[13:46] <ali1234> so there USB packet headers are shown there
[13:46] <ali1234> the actual data starts at 0x28
[13:48] <Azelphur> I see
[13:48] <Azelphur> hmm, I think controlMsg() got removed in pyUSB 1.0
[13:48] <Azelphur> and now there's just write.
[13:50] <ali1234> ah found it
[13:50] <ali1234> so the sequence goes like this
[13:50] <ali1234> host sends setup->device
[13:50] <ali1234> device acks setup
[13:51] <ali1234> device sends interrupt to host
[13:51] <ali1234> host acks interrupt
[13:51] <ali1234> so on the interrupt packets sent from device to host
[13:51] <ali1234> if you go to packet 31
[13:52] <ali1234> 0x44 = 00 c8
[13:52] <ali1234> 0x45 = 0xc8 = 200
[13:53] <ali1234> there isn't much data here
[13:53] <Azelphur> fun
[13:53] <Azelphur> yea, I figured it'd be pretty simple
[13:54] <ali1234> you should write a python script to dump it rather than using wireshark
[13:54] <Azelphur> I can't even get my python script to talk to it at all right now :(
[13:54] <ali1234> you don't use usblib for that
[13:54] <ali1234> you just read from debug device
[13:55] <Azelphur> I see
[13:55] <Azelphur> re controlMsg, I found device.ctrl_transfer in the docs, does that sound like what I want?
[13:55] <Azelphur> ctrl_transfer(0x40, CTRL_LOOPBACK_WRITE, 0, 0, msg) is an example call
[13:55] <ali1234> don't worry about that yet
[13:55] <Azelphur> oh ok
[13:57] <Azelphur> ali1234: but surely if I just get the control message working, my code should just start working
[13:57] <ali1234> no
[13:57] <Azelphur> all my read stuff is good, it's just there's nothing for it to read yet since the device isn't pinging
[13:57] <ali1234> not by a long way
[13:57] <Azelphur> :(
[13:57] <Azelphur> what should I be doing then?
[13:57] <ali1234> the control message is arbitrary data
[13:58] <ali1234> you need to determine what the different values do
[13:58] <Azelphur> the different values in the control message you mean?
[13:58] <ali1234> yes
[13:59] <Azelphur> I'd imagine for ping requests they are static
[13:59] <ali1234> so, if you do lsusb -d 0c45:7100
[13:59] <ali1234> you see it is on bus 5
[13:59] <Azelphur> yup
[13:59] <ali1234> go to /sys/kernel/debug/usbmon
[13:59] <ali1234> cat 5u
[13:59] <ali1234> watch usb packets in real time
[13:59] <MartijnVdS> ooh
[13:59] <MartijnVdS> can wireshark handle those?
[14:00] <MartijnVdS> apparently it can
[14:00] <ali1234> yes it can
[14:00] <ali1234> however it isn't very helpful when looking for something
[14:00] <Azelphur> righto, I'm doing that
[14:00] <ali1234> so on lsusb again
[14:00] <Azelphur> and i see lots of pretty packets.
[14:00] <ali1234> you see it is device 2
[14:01] <ali1234> ffff880419515f00 143202048 C Ii:3:002:1 0:8 4 = 00fdff00
[14:01] <ali1234> Ii:3:002:1
[14:01] <ali1234> the 002 is the device
[14:01] <MartijnVdS> ali1234: Hmm.. that would work with USB ports passed into VMs? Probably?
[14:01] <Azelphur> ok
[14:01] <ali1234> so first thing you want to do is filter out the lines that aren't 002
[14:01] <Azelphur> MartijnVdS: yea it does
[14:01] <ali1234> MartijnVdS: that's exactly what we are doing right now
[14:02] <ali1234> "how to reverse engineer USB device with windows drivers in virtualbox"
[14:02] <Azelphur> that was easy, they are all 002
[14:02] <Azelphur> :D
[14:02] <MartijnVdS> ali1234: ah, didn't read enough scrollback :)
[14:02] <ali1234> Azelphur: if it is the only device on that bus they will be
[14:02] <MartijnVdS> 002?
[14:02] <Azelphur> yea, the fan controller connects directly to 2 motherboard headers.
[14:03] <ali1234> it only appears as one device thugh right?
[14:03] <Azelphur> not sure, I think so
[14:03] <ali1234> so t just takes power from the others
[14:03] <Azelphur> I guess so
[14:03] <Azelphur> that whole setup is a bit weird though, because it takes power from a molex as well
[14:03] <ali1234> does it have a pass through usb port on the front or something?
[14:03] <Azelphur> nope
[14:03] <ali1234> well, that is odd
[14:04] <Azelphur> indeed
[14:04] <ali1234> maybe one of the connectors is optional
[14:04] <Azelphur> my best guess is that it's doing something like powering the LCD screen off USB
[14:04] <Azelphur> and the fans off the molex
[14:04] <ali1234> couldbe
[14:04] <ali1234> fans need 12V
[14:04] <Azelphur> :)
[14:04] <ali1234> anyway, please show me some raw dump from usbmon
[14:05] <Azelphur> ffff8802a81649c0 309250180 S Ci:5:002:0 s 80 06 0301 0409 0102 258 <
[14:05] <Azelphur> ffff8802a81649c0 309252462 C Ci:5:002:0 0 12 = 0c035300 4f004e00 69005800
[14:05] <Azelphur> ffff8802a81649c0 309253959 S Ci:5:002:0 s 80 06 0302 0409 0102 258 <
[14:05] <Azelphur> ffff8802a81649c0 309255386 C Ci:5:002:0 0 22 = 16035500 53004200 20004400 65007600 69006300 6500
[14:05] <Azelphur> ffff8802a81649c0 309256422 S Ci:5:002:0 s 80 06 0300 0409 0082 130 <
[14:05] <ali1234> smooth
[14:06] <Azelphur> oops, accidentally pasted the dump instead of the pastebin link \o/
[14:06] <Azelphur> http://pastebin.com/CEZcqqqC
[14:07] <ali1234> ok, see that column that is 0 or s
[14:07] <ali1234> that means endpoint number or setup endpoint
[14:08] <Azelphur> I see
[14:09] <ali1234> the parts after the = are the actual non-protocol data
[14:09] <ali1234> Ii and Co - the lower case i or o means in or out
[14:09] <ali1234> in or out to or from the host that is
[14:10] <MartijnVdS> I and C are "interrupt" and "Control"
[14:10] <MartijnVdS> or isochronous?
[14:10] <MartijnVdS> and then there's "bulk"
[14:11] <ali1234> not sure, but it doesn't really matter
[14:11] <Azelphur> cool
[14:11] <ali1234> they are all pretty much the same at a high level
[14:11] <Azelphur> ah, now I'm starting to understand why I need to understand what the numbers are \o/
[14:11] <ali1234> now, when it says 8 >
[14:11] <ali1234> that means "i am going to send 8 bytes"
[14:11] <ali1234> and when it says 8 < it means "please send me 8 bytes"
[14:12] <Azelphur> cool
[14:12] <ali1234> only the host can send such messages
[14:13] <Azelphur> fun
[14:13] <ali1234> so really the only interesting part right now is the lines with an = on
[14:14] <ali1234> so first figure out what the device is saying
[14:15] <ali1234> so filter out everything except lines with lower case i and =
[14:15] <ali1234> should leave just these lines: ffff8802c3e23200 315391401 C Ii:5:002:1 0:1 8 = 05839e00 00da0000
[14:15] <ali1234> i can already see some data
[14:15] <ali1234> looks like it is big endian
[14:15] <Azelphur> hmm
[14:16] <Azelphur> well the first few lines are no doubt it sending the config (auto/manual, F/C) back
[14:16] <Azelphur> and then the rest of those lines follow a format so those are gonna be the fan speed replies
[14:16] <ali1234> so 5 consecutive packets contain 0x5c4, 0xc8, 0xc8, 0xc8, 0xc8
[14:16] <Azelphur> indeed
[14:16] <ali1234> so that field is fan speed for one channel
[14:17] <ali1234> ah there is our 6 bits bitfield and channel number
[14:18] <ali1234> you should be able to write a python program which reads lines from usbmon, and prints out exactly what you see in the debug log
[14:18] <ali1234> when you've done that you have deciphered the device->host protocol
[14:19] <ali1234> next step is to figure out the outgoing packets
[14:19] <ali1234> that is harder as you will need to mess with the UI while watching the dump
[14:19] <Azelphur> I see
[14:19] <Azelphur> righto then, I shall try and write that :)
[14:20] <ali1234> so yeah the process here is first to document the protocol, then you start writing usb code
[14:21] <ali1234> 05819e00 00dc0000 -> 058 is the ==M[14:21] <ali1234> if you sit and watch the dump long enough you should figure out what all the bytes mean
[14:23] <Azelphur> hehe
[14:26] <ali1234> there's just enough space in there for 12 bits, 4 bit channel number, and 3 shorts
[14:26] <ali1234> can you do a long capture (couple of megs) and put it on dropbox?
[14:27] <Azelphur> sure
[14:27] <Azelphur> ali1234: shall I fuck with the fan speed too?
[14:29] <ali1234> ok, but note the changes
[14:29] <Azelphur> ok
[14:36] <Azelphur> ali1234: https://dl.dropbox.com/u/3832397/misc/2012/July/recon.txt
[14:37] <Azelphur> ali1234: I notice in the fan controller it shows voltage too, so one of the numbers it throws out will be voltage (5 or 5.6V)
[14:37] <ali1234> ok
[14:37] <ali1234> so i do: cat recon.txt | grep i | grep =
[14:38] <ali1234> ah
[14:38] <Azelphur> :)
[14:39] <ali1234> this gives the host->device msgs cat recon.txt | grep o | grep =
[14:39] <ali1234> doing that we see only a couple packets that aren't 00000000 at the end
[14:39] <ali1234> cat recon.txt | grep o | grep = | grep -v 00000000
[14:39] <Azelphur> I guess those are the "me messing with it" ones :)
[14:40] <ali1234> 0xae3 = 2787
[14:40] <Azelphur> although, there are only 5 events there, I made 7 adjustments
[14:41] <ali1234> C/F is a UI thing
[14:41] <ali1234> it will always report same format
[14:41] <Azelphur> the PC sends a signal to the fan controller changing the readout on the LCD display
[14:41] <ali1234> perhaps
[14:42] <Azelphur> well, it does, I watched it do it :P
[14:42] <ali1234> that could be in the other part of the message though
[14:42] <Azelphur> ah
[14:42] <ali1234> like it updates the display continuously
[14:43] <ali1234> anyway it's safe to assume that 0x5c6 = 69 somehow
[14:43] <ali1234> and 0x5c4 = 70 somehow
[14:43] <Azelphur> :P
[14:43] <ali1234> what is the maximum range?
[14:44] <Azelphur> on what?
[14:44] <Azelphur> the temp?
[14:44] <ali1234> the temperature
[14:44]  * Azelphur finds out
[14:44] <Azelphur> 90
[14:44] <ali1234> actually
[14:44] <Azelphur> 90C, 194F
[14:45] <Azelphur> oO, I haxed it
[14:45] <ali1234> cat 2u | grep o | grep = | grep -v 00000000
[14:45] <Azelphur> turn it up to 194F, switch to C, C drops to 124 :P
[14:45] <Azelphur> you mean 5u right?
[14:45] <ali1234> you should only see packets when changing stuff
[14:45] <ali1234> yeah
[14:46] <ali1234> so now now try all temps and figure out the relatin
[14:46] <ali1234> i'm going to look at the output fields
[14:47] <Azelphur> don't get anything out of it really when things are changed
[14:47] <Azelphur> I got a couple of lines out of it at the beginning, and a couple random lines, apart from that nothing
[14:51] <Azelphur> I have to go to some meeting thing, when I come back I'll work on parsing the debug output :)
[14:51] <Azelphur> ty for your help, will be back around 9ish
[15:29] <bjb> Getting frustrated here.  Trying out Linux Mint  Xchat for a someone [hoping to convert her across from "the dark side"].  Trying to use two servers so I can actually log into #ubuntu-uk via freenode [as well as Mint channels via mint server] to show a community comparison.  Using same nick for both or different nicks - I still get  "This nickname is registered" on freenode [both nicks fully registered ok, same pwd for each].
[15:29] <bjb> Were am I going wrong?
[15:29] <bjb> *Where
[15:36] <ali1234> you're using xchat
[16:20] <SuperEngineer> oh so nice to be back - first full weekend off off in 3 weeks - get out of the way, I'm heading for the bottle opener ;)
[16:21] <SuperEngineer> [& no, I don't know what an "off off" is]
[16:36]  * AlanBell takes a broken ironing board to the dump
[16:38] <christel> oh i've just been to the dump!
[16:38] <MartijnVdS> speaking of dumps..
[16:39] <mattt> the recycling centre in reading is always so busy on weekends
[16:39] <MartijnVdS> mattt: because normal people have jobs on other days :P
[16:39] <mattt> kinda scary to see how much crap doesn't get recycled and goes to the dump :(
[16:39] <mattt> MartijnVdS: they stay open late during the week tho, i think they close at 8 :P  but on weekends it takes like an hour just to get in
[16:40] <MartijnVdS> mattt: Recycling and dump are the same place here.. just different bins ;)
[16:40]  * bigcalm awakens
[16:41] <popey> afternoon
[16:45] <SuperEngineer> Any trading bankers here? I'd hate to think the channel had been polluterd with evil while I've been away
[16:45] <Darael> Would they confess?
[16:45] <SuperEngineer> ;)
[16:46] <bigcalm> I've been called a banker before now
[16:46] <SuperEngineer> bigcalm: ditto
[16:46] <SuperEngineer> but never a trading bnanker - I'm too honest
[16:48] <SuperEngineer> hmm - what's a bnanker I asume u ask? It's 'polite' word for trading banker methinks
[16:51] <SuperEngineer> Is it impolite to ask why a man just won the ladies tennis singles?
[16:51]  * SuperEngineer slaps own wrist
[16:55] <SuperEngineer> Some headlines make me sad - e.g. Parachutist found dead in field [ http://tinyurl.com/6s9rtsv ]
[16:56] <MartijnVdS> SuperEngineer: Well he was the best parachutist in his field
[16:56] <MartijnVdS> SuperEngineer: Maybe he needed a field engineer
[16:57] <SuperEngineer> MartijnVdS: ooo - naughty
[16:57] <MartijnVdS> SuperEngineer: [too soon?]
[17:14] <SuperEngineer> Is it just me or has anyone else found recent updates slow grub to desktop startup times?
[17:16] <SuperEngineer> ...& no - I have not any package called "please slow down my startup times"
[17:17] <brobostigon> http://taylorworld.me.uk/wiki/doku.php/taylorworld_wiki now there a theme. :)
[17:21] <SuperEngineer> Once at password dialogue screen it used to be a few seconds to be at desktop... now I tap fingers waiting
[17:22] <ali1234> SuperEngineer: that happened to me too
[17:22] <penguin42> SuperEngineer: bootchart is supposed to help find that out a bit - it can be quite difficult to track that type of thing down, but stuff is getting slow
[17:23] <SuperEngineer> ali1234: hmmm... at least I'm not alone in this
[17:23] <SuperEngineer> tried bootchart as well - still hunting!"
[17:24] <ali1234> bug 1001138
[17:24] <ali1234> read all the comments
[17:25] <SuperEngineer> ali1234: priority "low" ??? wtf?
[17:25] <ali1234> it onyl happens if you log in to gnome classic
[17:25] <penguin42> SuperEngineer: There are a set of rules for priorities - it's probably technically right
[17:25] <ali1234> once you have logged into gnome classic it affects all compiz based desktops though
[17:25] <penguin42> SuperEngineer: I mean it's lower than a crash or it turning your computer into smoke
[17:25] <ali1234> it doesn't cause a crash or data loss so yeah
[17:26] <SuperEngineer> ali1234:  ...but I'm on standard unity here
[17:26]  * penguin42 looks at his bootchart for the 1st time in ages and wonder what colord is doing taking a few seconds of cpu
[17:26] <ali1234> like i said
[17:26] <SuperEngineer> ..and thanks for ythe priority listing;)
[17:26] <ali1234> if you ever log into gnome classic, it affects all desktops from that point on
[17:27] <penguin42> SuperEngineer: https://wiki.ubuntu.com/Bugs/Importance is the real list
[17:28] <SuperEngineer> oh buhga!
[17:28] <SuperEngineer> :)
[17:30] <SuperEngineer> shouldn't there be an update then to simply "refresh".... or os that too simple a solotionn?
[17:31] <SuperEngineer> I'll rephrase that..
[17:31] <SuperEngineer> shouldn't there be an update then to simply "refresh".... or is that too simple a solotion? doh!
[17:32] <SuperEngineer> *soloution
[17:32] <MartijnVdS> Weird
[17:33] <MartijnVdS> Thunderstorms approaching and signal strength gets _better_
[17:34] <SuperEngineer> arsen: electrons travel better in wet atmospshere?
[17:35] <MartijnVdS> they tend not to
[17:35] <MartijnVdS> Maybe thunderstorms calm the ionosphere or something
[17:35]  * penguin42 would have thought they would be below the ionosphere
[17:35] <penguin42> MartijnVdS: Reception on what?
[17:36] <SuperEngineer> MartijnVdS: known fact: radio reception poorer on sunny days than rainy days
[17:36] <MartijnVdS> penguin42: satellite TV
[17:36] <penguin42> MartijnVdS: OK, so in that case you want you're ionosphere to be more transparent; is it you're signal strength that's got better or your error rate that's dropped?
[17:37] <MartijnVdS> penguin42: status 1f | signal 014f | snr 0077 | ber 00000000 | unc fffffffe | FE_HAS_LOCK
[17:37] <MartijnVdS> penguin42: "signal" is usually around 130ish
[17:37] <MartijnVdS> BER is always 0
[17:37] <penguin42> ok, so it's actual signal increased
[17:38] <MartijnVdS> yeah
[17:39] <SuperEngineer> hmmm.. atmospheric electronic interference with signal clarity apoplies - global warming, stop it or I'll kick your teeth in!
[17:40]  * SuperEngineer curses human race [excvept for U-UK'er's]
[17:42] <SuperEngineer> where do all these extra letters come from? I'm not typing them!
[17:42] <SuperEngineer> wanted - new keyboard!
[17:46] <directhex> Fentiman's Cherrytree Cola - much better than their regular cola
[18:09]  * SuperEngineer watrches mysterious Dr. Who
[18:10] <dwatkins> SuperEngineer: a random episode?
[18:10] <SuperEngineer> Beeb 3 - old episode - but good one
[18:11] <directhex> the movie! starring the 8th doctor!
[18:11] <dwatkins> no, there was no movie
[18:11] <SuperEngineer> ...and only a mere 50 mins
[18:13] <SuperEngineer> Demons Run
[18:14] <SuperEngineer> a.k.a A Good Man Goes Goes To War
[18:14] <dwatkins> ah yes, a child is born etc.
[18:14] <dwatkins> I never quite understood the point of all that warring in that episode, supposedly it was a circular argument
[18:15] <SuperEngineer> dwatkins: yup
[18:15] <dwatkins> anyhoo, time for food, happy doctoring :)
[18:15] <SuperEngineer> dwatkins: for recurring - see recurring ;:
[18:16] <SuperEngineer> dwatkins: happy noshing
[19:06] <andylockran> woop, just wrote a captive portal using ufw
[19:06] <andylockran> happy days!
[19:58] <gnuisnotlinux> What sort of activities do people do on 1st line support? I have an interview as a 1st line support person
[19:58] <gnuisnotlinux> what's it like?
[19:58] <gnuisnotlinux> how much do they 'know'?
[19:59] <gnuisnotlinux> is it more about customer service or technical knowledge?
[20:00] <penguin42> 1st line is very basic
[20:00] <penguin42> gnuisnotlinux: It depends on the organisation though, but it's the simpler problems mostly following a script I would have thought
[20:01] <MartijnVdS> GNU iSnot Linux?
[20:01] <penguin42> MartijnVdS: It's the hayfever
[20:03] <gnuisnotlinux> yeah I know it's supposed to be unix
[20:03] <gnuisnotlinux> But, I am in my rebellion stage
[20:04] <gnuisnotlinux> so nothing like bash, powershell, python or anything like that would help me?
[20:05] <penguin42> gnuisnotlinux: It depends on what it's 1st line support for!
[20:05] <penguin42> gnuisnotlinux: Some companies 1st line support could be handled by a cabbage, others actually know stuff
[20:06] <gnuisnotlinux> alright cheers!
[20:06] <gnuisnotlinux> very excited about this
[20:06] <penguin42> gnuisnotlinux: But ideally if you know stuff you could end up being 2nd line
[20:09] <SuperEngineer> on thwe other hand - if you know nothing at all - you could end up managing the whole support group
[20:10]  * SuperEngineer slaps own wrist [for the 2nd time tonight]
[20:10] <gnuisnotlinux> Well I have no experience
[20:10] <gnuisnotlinux> but I think I can progress quick
[20:10] <gnuisnotlinux> love tech
[20:11] <SuperEngineer> gnuisnotlinux: know nothing at all?... your're bound to end up at board level
[20:11] <SuperEngineer> however -if you're inclined to dishonesty - take up banking :)
[20:11] <gnuisnotlinux> ha!
[20:12] <gnuisnotlinux> I'm guessing your an engineer, what field of engineering are you employed in?
[20:13] <SuperEngineer> field servixce of a technical nature - I service fields
[20:13] <gnuisnotlinux> not sure if serious
[20:15] <SuperEngineer> ok - I don't dervice fields - darn you're goog, caught me there :)
[20:15] <SuperEngineer> * service
[20:18] <SuperEngineer> btw - I'm also a cynic, a sarcast, a philanthropist - & a darn good engineer
[20:18] <SuperEngineer> [& modest]
[20:21] <gnuisnotlinux> A person of many trades
[20:21] <SuperEngineer> gnuisnotlinux: ;)
[20:22] <SuperEngineer> seriously though - if the job suits... go for it & push hard but wisely to progress
[20:25] <gnuisnotlinux> Using it as an entry
[20:25] <gnuisnotlinux> as an aside, I am trying hard to develop my programming skills more
[20:26] <gnuisnotlinux> perhaps I may get a developers job
[20:26] <gnuisnotlinux> eventually....not soon
[20:26] <gnuisnotlinux> :D
[20:28] <gnuisnotlinux> When developers get jobs as developers do they get bored of coding?
[20:28] <gnuisnotlinux> Some must do
[20:28] <SuperEngineer> in which case my last very much applies - ask, listen, learn from & then excel those on the job for the money only
[20:29] <gnuisnotlinux> SuperEngineer your name should be used in a comic book
[20:29]  * Darael has his name (but not his nick) used in a comic book.
[20:29] <SuperEngineer> gnuisnotlinux: I live in hope
[20:40] <gnuisnotlinux> How can you spot a vegan?
[20:40] <Azelphur> look under a table and you'll find them eating a cheese burger?
[20:40] <brobostigon> lol
[20:40] <gnuisnotlinux> Don't worry, they'll tell you
[20:41] <Azelphur> :p
[20:41] <popey> Meat is murder!
[20:42] <popey> Tasty, tasty murder.
[20:42] <SuperEngineer> if they don't tell you - the passing "winds of thyme" will
[20:43]  * SuperEngineer congratulates self for not using "farts"
[20:44] <brobostigon> reminds me of john simm as the master, popey's statement.
[20:44] <SuperEngineer> [& slaps wrist for third time tonighT!]
[20:47] <SuperEngineer> ...& meat is not murder - it's killing the atmoshere. So perhaps it's self defence.
[20:51] <gnuisnotlinux> The thing is, vegans eat quite a bit of veg and fruit anyway. This food could provide animals with something to eat
[20:53] <SuperEngineer> it does - I'm a total animal when needed - yum yum [btw, cows don't eat oranges]
[20:53] <gnuisnotlinux> dogs don't eat oranges either
[20:54] <SuperEngineer> they do if you place one between their legs & kick hard enough
[20:54] <SuperEngineer> ;)
[20:54] <gnuisnotlinux> D: Monster!
[20:57] <shauno> I haven't found anything my dog won't eat.  he's particularly partial to hardback books lately though
[20:57] <gnuisnotlinux> Try potatoes
[20:58] <SuperEngineer> shauno: buy the dog a kindle
[20:58] <Pendulum> shauno: any specific genre or any hardcover book?
[20:58] <gnuisnotlinux> when ever I put potatoes in my dogs bowl he throws them out
[20:58] <Pendulum> gnuisnotlinux: really? we had a dog who loved them
[20:58] <Pendulum> my cat likes potato
[20:58] <brobostigon> lol. this is getting very weird.
[20:58] <SuperEngineer> whenever I put potatoes in my dogs bowel he throws them up
[20:59] <SuperEngineer> ...& now even wierder
[21:00] <SuperEngineer> sooner or later someone's gonna spoil it & ask for the way out of a technical problem ;)
[21:01] <brobostigon> certainly.
[21:04] <SuperEngineer> I need help - ever since I moved to 12.04 my cow won't oranges.  I've inspected all of its logs.
[21:05] <shauno> I agree with your initial prognosis.  I also believe you need help :)
[21:05] <SuperEngineer> *won't eat [doh]
[21:07] <Darael> I know a dog that lives on white rice, yoghurt, milk, egg, and bannana.
[21:07] <SuperEngineer> shauno: I sought professional help a long time ago - but they all came to the same conclusion after a while in my company... they needed help
[21:07] <gnuisnotlinux> no meat
[21:09] <Darael> gnuisnotlinux: No.  Lives in a vegetarian South-Indian household.  Appears perfectly healthy, against all logic considering his species.
[21:18] <gazm> hiya
[21:22] <gnuisnotlinux> bye
[21:22] <gnuisnotlinux> gazm
[22:10] <ali1234> Azelphur: http://paste.ubuntu.com/1080403/
[22:10] <ali1234> this should give you output which is very similar to the debug log
[22:10] <Azelphur> ali1234: awesome :D
[22:10] <Azelphur> looks simple enough
[22:11] <ali1234> yes
[22:11] <ali1234> if you run it as root you could change "recon.txt" to "/sys/kernel/debug..."
[22:11] <ali1234> to read directly from the debug nodes
[22:12] <ali1234> so at this point i would extend that to understand all packets (all lines with '=')
[22:12] <ali1234> when you understand all those you can write the driver
[22:13] <Azelphur> :D
[22:15]  * Azelphur fires it up pointed at /sys/kernel
[22:15] <ali1234> you#ll see two lines for channel 0
[22:16] <ali1234> i think the first of those lines is the "common config" from the debug log
[22:16] <ali1234> probably contains a bitfield
[22:16] <ali1234> one of which if the celsius/farenheit
[22:17] <Azelphur> sounds right :)
[22:19] <Azelphur> ali1234: hmm, not sure the numbers are right
[22:20] <ali1234> they look to be offset somehow
[22:20] <ali1234> i'm sure you can figure it out though
[22:20] <ali1234> just keep doing dumps and watchng the debug log, and you can figure out the relationship
[22:20] <Azelphur> guess so
[22:20] <Azelphur> it's odd the number keeps changing even though according to the software the fan speed is constant
[22:20] <ali1234> this is what RE is all about :)
[22:20] <Azelphur> maybe it just rounds, haha
[22:21] <ali1234> yes, possibly
[22:21] <ali1234> or averages over time
[22:21] <Azelphur> seems to alternate between 1520 and 1462 for my fan running at 1300RPM
[22:24] <penguin42> Azelphur: I bet because it doesn't sample for a minute
[22:24] <Azelphur> hehe
[22:25] <penguin42> Azelphur: I bet it samples for say a second and multiplies up - or something like that
[22:26]  * Azelphur shrugs
[22:26] <penguin42> which thing are you reading to get the fan speed?
[22:26] <Azelphur> penguin42: the output from a BitFenix Recon fan controller :p
[22:27] <Azelphur> ali1234: at least off is 0, \o/
[22:27] <penguin42> hmm
[22:27] <Azelphur> ...sometimes
[22:27]  * Azelphur facedesks
[22:28] <Azelphur> ali1234: ok so we've got the output parsed anyway, what next? :p
[22:28] <ali1234> not all of the output
[22:28] <Azelphur> oh, just some
[22:28] <Azelphur> so I do the rest, righto :P
[22:28] <ali1234> and the input is not looked at
[22:29] <Azelphur> fun
[22:29] <Azelphur> so I want to aim to understand all messages, basically
[22:29] <ali1234> yes
[22:30] <Azelphur> did you handle all of the line your capturing, or is there more undecoded data in that line?
[22:31] <ali1234> there is more undecoded data
[22:31] <Azelphur> ok
[23:11] <brlabs> hi
[23:30] <Curbuntu> I've been trying all week to upgrade an Ubuntu 10.04 laptop to 12.04.  Nothing later than the 10.04.3 live CD (or the USB equivalent) will boot on this machine.  I've had considerable help and input over at http://ubuntuforums.org/showthread.php?t=2015447, but the end result is failure.  Is it possible that this thing is just too older -- or worse, peculiar -- that it won't be able to run 12.04?
[23:30] <Curbuntu> That should have been "too old"...
[23:31] <penguin42> Curbuntu: What hardware do you have, how are you upgrading?
[23:31] <penguin42> Curbuntu: I've got 12.04 running on some pretty old hardware
[23:32] <Curbuntu> Compaq Presario R3399CL, AMD 64 3200+, 2 Gb RAM, 120 Gb HDD.  10.04 runs fine on it.  Just trying to upgrade via some Ubuntu-provided option (including alternate CD).  Nothing after 10.04.3 will boot.
[23:32] <Curbuntu> There aren't that many settings in BIOS to change, but can be changed (mainly boot order) has been.
[23:34] <Curbuntu> Oh, GPU is nVidia GeForce4 440 Go 64 M.
[23:35] <penguin42> Curbuntu: I've been reading through the forum - hmm
[23:36] <penguin42> Curbuntu: I've got 2 old machines of my dads running various hacked 12.04s - they took a bit of a fight to get installed
[23:36] <ali1234> bios settings are unlikely to help you
[23:36] <penguin42> Curbuntu: One is a ~1GHz Athlon, the other is a Athlon XP2200 (1.8GHz) - I think the 1GHz has a Geforce2
[23:37] <penguin42> Curbuntu: Will a text mode install work for you - one with no graphics at all?
[23:38] <Curbuntu> penguin42: Yes, I've gotten 12.04 to work -- and quite well -- on something as old as Eee PC, one of the early ones with the tiny screen and a 4 Gb "HDD."
[23:38] <penguin42> Curbuntu: Have you got a text mode 12.04 to work on that problematic machine?
[23:39] <Curbuntu> I've tried the alternate CD.  Was also asked to try knoppix 7.0 as well as 6.7.
[23:39] <Curbuntu> So far, nothing has worked.  I keep thinking I'm missing something simple...
[23:39] <penguin42> Curbuntu: Try the ubuntu-server install, and you should be able to boot off USB so don't need to bother with actual CD burns
[23:40] <Curbuntu> So you're saying, install server to the /root partition (/home is separate on all my machines), then sort of upgrade it with the Unity GUI?
[23:41] <penguin42> Curbuntu: Well don't even worry about the GUI at first - just see whether you can get it to boot stabily to a text login - then worry about the GUI
[23:41] <Darael> Curbuntu: I'm going to assume you mean / rather than /root; having /root on a dedicated partition would be somewhat unusual ;)
[23:43] <Curbuntu> Yes, /, not /root.  Sorry.  Trying to do too many things at once.  Meanwhile, I've started a torrent download of server 32-bit for 12.04.
[23:45] <Curbuntu> I keep wondering -- what would have changed after 10.04.3 that would keep live CDs from working?  Everything from 10.10 onwards fails on this machine.  And the CDs are "known good," since they work in other machines.
[23:45] <penguin42> Curbuntu: Ah there is so much that has changed in many places
[23:46] <penguin42> Curbuntu: It'll probably be some trivially tiny bug fix for something
[23:48] <Darael> Curbuntu: Have you tried installing Lucid, upgrading to Precise, and booting with "quiet splash" removed from the GRUB command line, so you can see where it stops?  Wouldn't help fix the issue directly, but might help with diagnosis.
[23:49] <Curbuntu> Admittedly, since it runs 10.04, I don't HAVE to upgrade it.  But I was hoping to get ALL of our machines running 12.04.  I have two 10.10 desktops that aren't getting updates any more.  But in our daily routine, this 'problem' laptop is the most expendable at the moment.
[23:51] <penguin42> Curbuntu: 12.04 was the 1st one which got the graphics working for my Geforce2 machine, and that's without Nvidias driver
[23:53] <Curbuntu> For instance, in trying to test with a Lubuntu live CD, nomodeset, acpioff, and splash and quiet removed, thing hung right after "Starting CUPS printing spooler/server    [OK]"
[23:53] <penguin42> Curbuntu: Yeh I read your forum posts
[23:53] <penguin42> Curbuntu: I suspect that's a red-herring
[23:54] <Curbuntu> No matter what color that herring is, something smells fishy about this machine!  ;-)
[23:54] <penguin42> Curbuntu: I suspect what's really happening is that whatever happens next (starting X maybe?) is the thing that fails, so it just comes down to what happens to be the last thing displayed that you see there
[23:54] <Curbuntu> Yes, that's what I suspected -- the failed item never gets a chance to report.
[23:55] <penguin42> Curbuntu: Try to get a plain text mode going where you can get to a text mode login: prompt reliably, then add X
[23:56] <Curbuntu> When you say "plain text mode," are you referring to an alternate-install CD or something else?
[23:56] <penguin42> Curbuntu: I can't remember what each version ends up as, but certainly the server install used to never even do X or anything graphical - you just got a text login: prompt
[23:57] <penguin42> Curbuntu: I thought there was a way to do that with the alternate CD as well but I might be wrong
[23:58] <Curbuntu> I have to step away for 30 minutes.  Sorry...
[23:58] <penguin42> I may be gone by the time you return