Thursday, 2014-06-19

*** tpb has joined #timvideos00:00
shenkiayush3504: i had a read of the driver you pointed me to last night00:13
shenkiayush3504: it was quite complex and surprisingly long00:14
shenkiI would like to understand the problem a bit better00:18
shenkiWhat runs on the PC to control the devices attached via serial?00:19
*** CarlFK has joined #timvideos00:26
*** ChanServ sets mode: +v CarlFK00:26
*** FeltonChris has joined #timvideos01:06
*** skay is now known as sbot01:21
*** sbot is now known as skay01:21
*** skay has quit IRC01:36
*** skay has joined #timvideos01:36
*** skay has joined #timvideos01:36
*** ChanServ sets mode: +v skay01:36
*** skay has quit IRC01:38
*** skay has joined #timvideos01:38
*** ChanServ sets mode: +v skay01:38
*** tija has joined #timvideos02:24
*** CarlFK has quit IRC02:34
*** tija has quit IRC02:43
mithroshenki: the software on the computer is agnostic to the serial interface, it should just use ttys02:54
shenkiright, but the question no one will answer is "what is the software?"02:55
shenkiI belive that you are better off spenidng your time writing software do demux the serial streams and talk to this unnamed software than digging around with kernel drivers and the fx202:56
mithroshenki: software includes; libvisca, random python programs, etc02:56
mithroshenki: IE we don't control the software02:56
mithroas I said the software is agnostic to the serial interface hardware02:57
mithrothe way Linux exposes "serial ports" is via tty interfaces02:57
shenkiso you're only going for linux support?02:58
mithroshenki: Linux is our most important platform02:58
mithroMac uses ttys as well (being BSD based)02:58
mithroWindows uses "COM Port interface"02:59
mithrobut it's a bit less standard02:59
shenkii think the only way you're going to solve this properly is to move away from the fx202:59
shenkiso you can have a bunch of endpoints02:59
shenkiand therefore a bunch of devices02:59
shenkithings like the usb GSM modems expose many cdc devices03:01
shenkithat's what you need03:01
shenkiotherwise we're going to end up having to write drivers for the three platforms03:01
mithroshenki: in any case, you are restricted to quite a limited number of devices as USB can only have a maximum number 14ish03:02
mithroshenki: GSM modems tend to expose maximum of two that I've seen03:02
mithrothe ACM specification actually has a multiplexer support for ISDN type channels03:02
mithro3.7.1 Multi-Channel Model................................................................................................... 1803:03
mithroBut it unclear to me how that maps to "serial ports"03:05
*** Niharika has joined #timvideos03:06
mithroA Multi-Channel communication device is defined as a communication device having a number of channels multiplexed on the physical network interface, where each channel has independent call control.03:06
mithrobut it doesn't appear the Linux driver has any support for this anyway....03:06
*** CarlFK has joined #timvideos03:08
*** ChanServ sets mode: +v CarlFK03:08
mithroIf we emulate an existing usb-serial adapter supported via the usb-serial driver, then we should just need to add our information to that existing module (maybe with a few tweaks) right?03:08
mparuszewskimithro: I am sorry Tim, I am back, I just fell asleep, don't know when, but I just woke up :D03:32
mithro9:37 AM <•mithro> mparuszewski: I assume you fell asleep?03:33
techman83mparuszewski: careful, drool can be bad for keyboards :P03:34
mparuszewskitechman83: yeah, I know. I think I need to buy water resistant keyboard :p03:36
techman83mparuszewski: :D03:37
techman83mparuszewski: Lenovo Thinkpads have drain holes in the keyboards. I've spilt a glass of water on mine and kept working (I was debugging a massive issue when 4000ks from the office)03:38
mithromparuszewski: happy to continue talking about stuff, happy for you to try again in a couple of hours?03:38
mparuszewskitechman83, just in case I use external, wireless keyboard :D03:40
mparuszewskimithro, I am ready to talk :)03:41
mparuszewskiI am checking if we can have that structure in Jekyll03:41
mparuszewskiIt seems that its possible to have folders inside _includes directory03:44
mithroWell, you can do anything its just the matter of how much code it is to write :)03:44
mparuszewskiI am only limited to Jekyll restrictions, but that functionality is build-in into Jekyll so I don't have to write anything, just change structure a little bit. :)03:49
mparuszewskiI will do that now, and add Edit button to every panel03:50
mithromparuszewski: If jeykll rendered the snippets into their individual blobs, the editor could do the include those parts?03:52
mithromparuszewski: I also wanted to take a step back and look at what we want you to do03:54
mparuszewskimithro: I will check that, if not I will try to add that functionality, but that could be hard, is a huge project. :)03:57 isn't actually a very big project in the real scheme of things :P03:58
mparuszewskiOk, great03:58
*** sarwarc has joined #timvideos03:58
mithromparuszewski: so, I see your project has having a couple of major things we want to do (which are all related)03:59
mithromparuszewski: a) Make the website nicer looking and have better content (which is pulled from a bunch of different sources)04:00
mithromparuszewski: b) Make editing the website fun and easy04:01
mithromparuszewski: c) Create a better interface for "issue tracking" (starting from the interface I created for the GSoC "ideas" page)04:02
*** CARAM_ has quit IRC04:02
mithroa) could be split into two parts I guess "Making the website nicer looking" -- "Adding better content (which is pulled from a bunch of different sources)"04:04
mithroThe "Adding better content...." includes the things like planet, code stats, pulling people information from github, etc04:04
mithromparuszewski: does that all make sense?04:04
*** CARAM_ has joined #timvideos04:05
mparuszewskiYes, of course. :) What features would you like to have on issues page, I am sure that filter, but maybe something else.04:06
mithromparuszewski: before we get onto c) I was thinking more about a) and wanted to comment more04:08
mithroI think we want to divide the website into two parts04:10
mithro1) changes which are caused by "editing content"04:11
mithro2) changes which are caused by other actions04:11
mithroIE (2) would include things like pushing code, updating your blog, etc04:12
mithrowhere as 1) is when you click the edit button on the website and then change something that way04:12
mparuszewskiOk, I understand. I think we can talk about the sources for (2) part04:13
mithromparuszewski: and I think we have already started down this path with the planet verses website split04:13
mparuszewskiPlanet, code statistics from GitHub, people information from GitHub, what's more?04:15
shenkimithro: yeah. we could emulate an existing device. but we would want to be bug for bug compatable with existing drivers, or else we'd be better off just writing our own linux driver04:15
mithromparuszewski: I don't want to discuss the actual sources for this content at the moment04:16
mithromparuszewski: just talk about them abstractly04:16
*** slomo has quit IRC04:16
mithromparuszewski: the important fact is that one is triggered by changes to the website's code repository, the other one is triggered by "external factors"04:17
mparuszewskiOk, I understand04:18
mithromparuszewski: for the first one, we can just trigger off of commits to the correct repository04:18
mithromparuszewski: for the second one, we really need to do polling04:18
mparuszewskiAnd with GitHub source I should use API and downloading from that source or do the generation on server?04:18
mithromparuszewski: that is a good question, I'll answer what I think our guiding principles should be in a minute04:19
mithromparuszewski: so, are you happy with the idea of this split?04:21
mparuszewskiYes, of course, the split is abstract, user on our website won't know if content was downloaded from another source or written by developers04:23
mithromparuszewski: sure04:23
mithromparuszewski: as you pointed out we want a unified interface for users - they shouldn't really notice the difference between the two types of content (except they can't modify the "dynamic" sections by clicking edit)04:24
mithromparuszewski: Which brings up the question of, how to unify the interfaces04:24
mithromparuszewski: that seem to be two solutions04:25
mithrox) We generate the "static" bits with holes in it. The holes are filled in from the dynamic at a later stage.04:25
mithroy) The dynamic part pulls in the static part and renders the whole output.04:26
mithromparuszewski: does that make sense?04:27
mithromparuszewski: with x) the "top level" is the static content04:27
mithromparuszewski: with y) the "top level" is the dynamic content04:27
mparuszewskiYes, and the choice is not easy :)04:27
mithromparuszewski: yeah04:28
mithrox) has the advantage that most of the static content is cached for a long time and only the content inside the "holes" change04:28
mithroif the holes are implemented as iframes though, it means what use to be a single page request can become many04:29
mithroshenki: I'm unsure if its better to extend usb-serial to support a new device verse writing your own totally new driver.04:30
mparuszewskiYes, but also if we download a json from for example GitHub API it also will be a multiple connections04:31
shenkimithro: i would suggest making it a subset of cdc-acm04:31
mparuszewskiBut I think that's normal on modern websites, that content is loaded dynamically on client side from many sources04:31
shenkimithro: usb-serial is a bad idea, as it's all non-standard04:32
mithroshenki: looking at the cdc specification, it seems like you should be able to have a cdc device which is Multi-Channel Model which contains ACMs as sub devices04:32
mithromparuszewski: doesn't mean it's a good idea :P04:32
mithromparuszewski: it also sucks hugely for mobile04:33
mithromparuszewski: it also means we miss out on possible compression04:33
mithromparuszewski: y) has the advantage that we can do one single page without needed any client side includes (for example if we do the rendering at server time)04:33
mithroshenki: they define a model which means you just prefix each message with the sub-device ID04:34
mparuszewskiBut how about Issues, they should be rendered on client side or server side? :)04:34
mithroshenki: based around the OSI style model04:34
mithromparuszewski: the issue tracking interface is a seperate issue that I'll talk about in a bit04:35
mithromparuszewski: so ignore it for now04:35
mithroshenki: you should also reply with any more information you have to my reply to the "Frame rate tests" thread04:36
mithroshenki: but before we go down that route, I want to see if any other OS actually supports anything like that04:37
mithromparuszewski: y) has the disadvantage that any time a page changes, you have to redownload the whole page rather than just the part which changed04:38
shenkimithro: yeah, i am reading the spec atm too. i agree.04:38
mithroshenki: if nobody else has already done this, then its probably worth figuring out what they have done04:39
mparuszewskiHard choice, but it seems that doing as many as possible on server side has more advantages :)04:39
mithromparuszewski: the choice of doing the server side generation is separate from the choice of which part does the hosting04:42
mithromparuszewski: but a lot of the arguments are the same04:43
mparuszewskibut if it is possible to do server side generation I should do that, right?04:47
*** sarwarc has quit IRC04:48
mithromparuszewski: I think in our case, we want to try and keep our pages as static/basic as possible04:50
mithromparuszewski: so doing server side generation is the right solution04:50
mithromparuszewski: we also don't care deeply about having a 5 minute delay between the source changing and our website updating04:51
mparuszewskiOk great, I will start with People page generation :) How many information would you like to have on that page? We can get a lot of basic information ( from GitHub, but also we need to add something more, like description, like projects, etc.04:52
mithromparuszewski: it means that you can write the code in ruby instead of javascript04:53
mithromparuszewski: which I'm not sure is a good thing :P04:53
techman83mithro: :P04:53
mparuszewskiGreat thing! :D JavaScript is a great language, but Ruby is a.. Ruby :D04:53
mithromparuszewski: I think this all indicates that the planet should really be "website-dynamic-content" and "getting-started" should be "website-static-content"04:57
mithroI know javascript, I don't know ruby :P04:58
mparuszewskimithro: :p04:58
mithrowith one "part" of website-dynamic-content is the news/planet/stuff04:58
mithroso the GitHub people stuff should end up in website-dynamic-content rather than the getting-started repo?04:59
mithromparuszewski: does that make sense?04:59
mparuszewskimithro: Yes, I suppose.04:59
mparuszewskimithro: Yes, of course05:00
mithromparuszewski: at the moment, we decided to go the iframe "hole" route (IE We iframe in the news from the planet, right?)05:00
mithromparuszewski: we might need to re-evaluate that in the future?05:00
mithromparuszewski: because the front page sounds like it might end up with like 6 of these iframes?05:01
mparuszewskiYes, we iframed news into getting-started page :)05:03
mparuszewskiCould be05:03
mithromparuszewski: okay05:05
mithromparuszewski: so I think that covers everything I wanted to say about (a)05:06
mithromparuszewski: so there was one guiding principle I think that was hidden in that discussion05:08
mithromparuszewski: --> we should try and provide static HTML output as much as possible05:08
mparuszewskiOk, so I should avoid JavaScript as much as possible, right? :)05:09
mithromparuszewski: I think so, ignoring parts (b) and (c)05:10
mithroIE To *view* content shouldn't required javascript05:10
mparuszewskiOk, I undestand, great.05:13
mithromparuszewski: okay, so part (b) of your project is to replace the current horribly crap way we edit the website content (which is the github wiki interface) with something that integrates well with our website05:15
mithromparuszewski: if that ends up being, github editor, or something else is yet to be determined05:17
mithromparuszewski: ideally, the person clicks "edit" on some content, it pops up something which allows them to edit, they do there edit, it shows some type of preview where they can confirm the edit is correct and then they "save" their edit and anyone who now visits the site sees their change05:19
mparuszewskiOk, so probably I need to do 2 things, first: add edit button that redirects to edit interface and a github hook to make sure that generate will run after single commit05:20
mparuszewskiIt's pretty easy, maybe it can be done with Travis CI05:20
mithromparuszewski: it's not quite that easy :P05:22
mithromparuszewski: you missed the "shows some type of preview where they can confirm the edit is correct" part05:22
mparuszewskiYes, all content should be written in Markdown, so preview will be easier, but I am not sure if it can display preview in current layout in solution I've made, because of those 'includes'05:24
mithromparuszewski: yeah05:36
mithromparuszewski: ideally we'd like it to preview exactly as the page would appear when finally committed05:36
mparuszewskiI understand, I will do as much as possible to do that. :)05:39
mparuszewskiDo we have something to discuss on part (b)?05:39
mithromparuszewski: with this, we want as little server side support as we can05:44
mithromparuszewski: it should all be javascript and client side05:44
mithromparuszewski: the only reason needs something server side is for the authentication hack05:46
mparuszewskiYes, sure, but we can handle this little application and have it on Heroku like we have now and everything just works. :)05:48
mparuszewskiI will create a account on heroku just like I did for monitis05:48
mparuszewskiI will give you all access data05:48
mithroyes, but we want to avoid needing that as much as possible05:49
mparuszewskiOk, I will check how GitHub edit interface works, maybe that will suit our needs05:50
mithromparuszewski: the server side app thing is probably okay because it is so small05:52
mithromparuszewski: does that all make sense?05:55
mparuszewskiYes, I don't have any questions about (b) now. :)05:55
mithromparuszewski: so, now to (c)05:56
mithroI think of (c) like "" for github issues05:56
mithromparuszewski: so github's interface for viewing issues is kind of sucky05:57
mithroand very slow05:57
mithromparuszewski: so you can see my attempt at writing a better viewing interface in the ideas page.05:57
mithrosome important things is that it links between multiple issue repositories05:59
mithromparuszewski: for example, we have HDMI2USB repository verse the getting-started repository verses the streaming-system repository06:00
mithroand they can reference each other06:00
mithrobut the getting-started is probably the biggest offender in this regard06:02
mparuszewskiOk, so you want to have all issues from all TimVideos projects in one place06:02
mithroas it brings together the "getting-started" issues from all the other timvideos repositories06:02
mithromparuszewski: the issue tracker takes things like features, bugs, ideas, etc06:03
mithromparuszewski: it would be really nice if there where templates for creating each type of thing06:04
mparuszewskiOk, and of course ability to search and filter them by tag/tags06:06
mithromparuszewski: like the getting started repo, has the format
tpbTitle: Tim Videos - Live Event Streaming - Ideas! (at
mparuszewskihow can I know which one is feature/bug/idea, i don't see category on issue06:07
tpbTitle: Issues · timvideos/HDMI2USB · GitHub (at
mithrothat has a "bug" label and "enhancement"06:10
mithromparuszewski: getting-started repo has a whole bunch of labels in a more structured form06:11
tpbTitle: Issues · timvideos/getting-started · GitHub (at
mithroIE "Language - XXXXX"06:11
mithromparuszewski: so you might need to dictate the form of labels if we want to do something06:11
mithromparuszewski: IE it would be nice to have a "filter on language" type feature06:11
mparuszewskiOk, you are right, GitHub issues are a little bit sucky06:11
mparuszewskiOk, great, so almost everything is in tags06:12
mithromparuszewski: there is also the "milestone" stuff in issues
tpbTitle: Milestones - timvideos/getting-started · GitHub (at
ayush3504shenki / mithro: Just woke up. Thanks for looking into it.06:16
mparuszewskiGreat, milestones are just text with date? Can I add issues to milestone?06:16
ayush3504shenki / mithro: I'm looking at the ISDN model, and I see that this class multiplexes data channels and a call channel. The data channels are presented to host on separate Data Class interfaces. Data Class interface, by definition, uses a pair on In/Out endpoints. See the diagram at pg 6,
tpbTitle: imgur: the simple image sharer (at
ayush3504shenki / mithro: As I understand from seeing this diagram, I don't see it multiplexing data over endpoints. It still requires as many endpoint pairs as the no. of data channels to be seen by the host, which is analogous to serial ports in our case06:18
mithroayush3504: incorrect06:18
ayush3504mithro: how06:18
mithroayush3504: if you read the later sections it talks about the fact there are many mapping between the parts06:20
mithroayush3504: I'll have to go back to my desktop computer to point you to the section06:21
ayush3504mithro: ok, i'll check06:21
mithromparuszewski: we haven't used milestones at all06:25
mithromparuszewski: but it could be useful?06:26
mparuszewskiof course, if you want to prioritize things and keep working on features in order to make sure all work and integrates06:27
mithromparuszewski: order doesn't really matter at all06:27
mparuszewskiLeon told me about migrating from Producteev to GitHub Issues06:27
mithromparuszewski: things are just grouped together in a priority level06:28
mithroIE, does these first - then when nothing left here, do these next06:29
mithromparuszewski: I agree with Leon, is that using github issues to track your progress makes a lot of sense06:30
mithromparuszewski: the github issues tool is suppose to make github issues easier to use06:31
mithromparuszewski: so, "eating your own dog food" is a great way to help understand what the pain points are06:31
mithromparuszewski: it is also what we are using to track progress for everything else06:31
mparuszewskiOk great, I should add issue per feature, right, with short description and subtasks06:32
mithromparuszewski: yeah, that sounds like a good idea on how to do it06:32
mithroayush3504: looking it up now06:34
mparuszewskimithro: Ok, so I should work on planet now and create new subpages for people, code statistics, etc. Am I right? Could you tell me which features would you like to have first? On which part should I be focused?06:35
mithromparuszewski: so, I think we should look at trying to get the editing stuff working first06:36
mithromparuszewski: plus the revamped look06:36
ayush3504mithro: i'm looking at something interesting: Shared Endpoint specification -
mithroAppendix C: Multi-Channel Implementation Examples06:36
mparuszewskiAll right :)06:37
ayush3504mithro: ok06:37
mithroayush3504: I don't think you should be worrying about this part for the moment, getting the daughterboard design / mechanics working first are more important06:38
ayush3504mithro: yep i know, just looked up since you were discussing06:39
mithroayush3504: have you seen any implementation of that functionality specified in SharedEpFeature?06:39
ayush3504mithro: at first few pages of the document, let me check06:40
mithroayush3504: what is an "interface" in USB mean?06:42
mithroit's been a while since I looked at all this terminology06:42
mithroshenki: any thoughts on the possibility of emulating a virtual USB hub?06:43
ayush3504mithro: no idea. didn't look up that word alone :P06:44
ayush3504mithro: i doubt if its defined06:45
ayush3504mithro: terms like Data Class Interface are defined for sure06:45
mithroEndpoints are grouped into interfaces and each interface is associated with a single device function.06:47
shenkimithro: on the cypress?06:48
shenkii dont know much about usb hubs06:49
shenkihow does a hub differe from a composite device?06:49
ayush3504mithro: ah yes, i mentioned that once in my snippets06:50
mithroshenki: that is what I wondered06:50
mithrodoing a Google search doesn't turn up anyone trying it06:52
ayush3504shenki: I think using hub would create multiple devices, each of which can have their own 15-16 endpoints06:53
shenkiayush3504: devices are limited to 16 endpoints?06:58
ayush3504shenki: yes, and EP0 is always reserved for use by host for control messages06:59
ayush3504shenki: so 15 for our use06:59
mithroso, it looks like a HUB is just a USB device which has EP0 and EP1, EP1 is used to notify the host about changes in downstream devices07:01
mithroso, if we can get the cypress to respond to multiple usb device addresses and somehow forward that information we could emulate a hub07:01
* shenki wonders how composite devices work07:03
shenkido they show up to the host as seperate devices, and therefore you have n x 16?07:03
ayush3504shenki: yes07:04
mithroshenki: no07:04
ayush3504mithro: i think they do, each device can have it's own 16 eps, even if they're connected through hubs07:05
mithroIf I'm reading the specification correctly, composite devices basically just define "multiple interfaces" in their EP0 descriptors07:05
mithrointerfaces are made up of one or more end points07:05
*** tija has joined #timvideos07:05
mithroayush3504: composite devices are different from multiple devices connected to a hub07:05
ayush3504mithro: oh yes, i wasn't talking about composite devices07:06
mithroif we could get this to work, it would actually be a pretty good idea because it pushes most of the USB into the FPGA07:06
mithroso it makes replacing the Cypress chip easier in the future07:06
mithromparuszewski: you still around?07:14
mparuszewskiYes, I am. :)07:14
mithroThe EZ-USB provides "extensive hardware support for handling" blah makes me worried07:14
mithromparuszewski: so just to confirm everything07:15
mithromparuszewski: The number one task at the moment should be trying to get the editing stuff working07:15
mithromparuszewski: After that is working, the next part is doing the new look/feel07:15
ayush3504mithro: i'm looking at the shared endpoint specification, and it says it depends on "host software" and device to do the mux/demux. The term host software isn't defined clearly, but I guess it's the software which would use the ports. I suggest you take a look at it sometime because this is what's used in ISDN -07:16
mithromparuszewski: then concurrently together, you will implement the issue tool + more dynamic content for the website (as you'll be using the issue tool to manage the development of both the issue tool and dynamic content for the website)07:17
mparuszewskiOk, dynamic content should contain: issues, people (part of information from GitHub), code statistics07:18
mparuszewskisome information about projects07:27
mithromparuszewski: that is some ideas, I can rattle off a bunch more07:27
mithromparuszewski: which I'd like to dump into a github issue tracker for you :P07:27
mithromparuszewski: not all of them are good ideas either :P07:27
mithroWhen the firmware is in control of endpoint zero (RENUM=1), the EZ-USB handles only one of these requests (Set Address) automatically; it relies on the firmware to support all of the others.07:27
mparuszewskiAll right, great! :)07:27
mithroayush3504 looks like I found the issue which prevents the cypress acting as a hub07:27
mithroSet Address is implemented in hardware07:27
mithro2.3.9 - Set Address07:27
mithroWhen a USB device is first plugged in, it responds to device address 0 until the host assigns it a unique address using the Set Address request. The EZ-USB copies this device address into the FNADDR (Function Address) register, then subsequently responds only to requests to this address. This address is in effect until the USB device is unplugged, the host07:27
mithroissues a USB Reset, or the host powers down. The FNADDR register is read-only. Whenever the EZ-USB ReNumeratesTM (see Enumeration and ReNumerationTM, on page 51), it automatically resets FNADDR to zero, allowing the device to come back as new. An EZ-USB program does not need to know the device address, because the EZ-USB automatically responds only to the07:27
mithrohost-assigned FNADDR value. The device address is readable only for debug/diagnostic purposes.07:27
mparuszewskimithro: And there is a time for midterm evaluation, should I do somethings special or just follow the Google instructions?07:27
mithromparuszewski: the mid-term evaluations start on the 24th if seems07:29
mithromparuszewski: both yourself and your mentor will be asked to take surveys07:29
mithromparuszewski: both yourself and your mentor's surveys must be completed by the 27th07:30
mithromparuszewski: the mentor has a checkbox at the end of their survey which says something like "For the midterm evaluation, should this student pass or fail?"07:31
techman83mparuszewski: so best get to sending me some nice coffee ;-)07:32
mithromparuszewski: for students who's mentor answers fail don't receive the mid-term payment and their GSoC project stops07:33
*** tija has quit IRC07:33
mparuszewskitechman83: :D07:35
mparuszewskimithro: thanks. :)07:36
ayush3504mithro: hmm. how would hub emulation work in contrast to this?07:37
*** rohitksingh has joined #timvideos07:40
ayush3504mithro: i guess we won't be able to change function add. register to send data as different devices?07:42
mithroayush3504: with hub emulation we need to effectively respond to requests to multiple different USB addresses07:50
mithroayush3504: I'm trying to find if there is a way around this07:50
ayush3504mithro: ok07:51
mithroThe specification seems to clearly say it's impossible - still trying to find out if implementation matches specification :P07:57
mithroDuring the USB enumeration process, the host sends a device a unique 7 bit address, which the USB core copies into this register. There is normally no reason for the CPU to know its USB device address because the USB Core automatically responds only to its assigned address.07:57
mithroThat is the part that kills us07:57
*** tija has joined #timvideos07:58
ayush3504mithro: does this mean a usb hub would get multiple of these 'address' from host for each device connected to it?08:01
mithroayush3504: a USB hub normally just forwards any incoming message (not address directly to it) to all its output ports08:03
mithrobut as we want to pretend to be multiple devices on a USB hub, we need to respond to multiple addresses08:04
ayush3504mithro: and the host assigns these address right?08:05
mithroayush3504: yes08:07
mithroUsing a "Set Address" USB command08:07
mithrothe problem is this "Set Address" USB command is done in hardware08:08
ayush3504mithro: ah, now i understand08:08
mithroayush3504: on every other function of this chip you can override the behaviour of it by doing it in software08:10
mithroayush3504: this seems to be the *one* feature you can't :/08:10
shenkimithro: i was reading about some winde band SDRs (software defined radios) today, all of which have USB connectivity08:11
shenkimithro: two of them use the fx3 for USB308:11
shenkimithro: the third uses a cortex m3 for USB208:11
mithroshenki: the fx3 is kind of sucky for USB3 - the price is *way* to high08:11
shenkisure. not suggesting we use it - just interesting to see what other projects are gravitating towards08:12
shenkiinfact, i would suggest we stay away from usb3 until we can get a micro that has it08:12
shenkiif the digilent board had a real micro on it instead of the fx2 part, we wouldn't be backed into this corner that ayush3504 finds us in08:13
ayush3504shenki: yeah, happens :|08:14
ayush3504mithro: do micros have that part implemented in hardware too?08:14
ayush3504mithro: akaik they do have some serial engine implemented in hardare08:15
mithroshenki: I'm not so sure, if the micro has "USB acceleration functions" it is quite possible that it would have the same flaw / "feature"08:15
mithroshenki: got a link to the datasheet for a Cortex-M designed for (high speed) USB device functionality?08:16
shenkithat TI USB 3 to SATA bridge is still the only microcontroller/USB3 device out there08:16
shenkiform what i can find08:17
shenkimithro: sec08:17
mithroshenki: there is a standard for USB 3.0 "PHYs" chips08:17
mithroheading home, be back shortly08:17
mithroshenki: but the only device I've seen implement it is that TI chip (which isn't a USB3 to SATA)08:18
mithroshenki: it's actually kind of nice in that is uses the same interface as PCI-E (the PIPE3 interface)08:18
shenkimithro: this one?
tpbTitle: TUSB9260 | USB Peripheral | USB | Description & parametrics (at
shenkiSupports six logical endpoints including one control endpoint for a total of 12 physical08:30
*** Niharika has quit IRC09:00
mparuszewskimithro: I've added you to my fork of getting-started, you can see the results on, you can edit every panel by clicking on the top right button (will appear on hover). I didn't have autodeploy set to I just want to show you GitHub edit interface, so editing content works fine, but adding new would be a hard for12:20
mparuszewskinon-technical person with current solution (if someone wants to add new panel, so I think i will change that design a little bit, and on every site I will have only one panel with content (no 'static' pages, on dynamic I will use all features of that design, just like with news on planet).12:20
mithroayush3504: you still here?12:54
mithromparuszewski: a couple of issues with this12:55
mithromparuszewski: the github preview is substantially different from what the result would look like (it just renders the little markdown bit)12:56
mithromparuszewski: I dislike how it takes you away from the timvideos website12:56
mithromparuszewski: thoughts?13:00
mithromparuszewski: it looks like the "ace editor" has an embed API13:03
tpbTitle: Embedding API · ajaxorg/ace Wiki · GitHub (at
mithrobut that doesn't seem to cover the GitHub part13:04
*** FeltonChris has quit IRC13:09
ayush3504mithro: yes13:16
mithroayush3504: so where are you at? Do you have the daughterboard/motherboard stuff all sorted out?13:16
ayush3504mithro: was away, just came. i'll be doing some pen-paper stuff first13:17
mithroayush3504: have you filled in the spreadsheets yet?13:17
ayush3504mithro: nope13:18
mithroayush3504: what have you been doing then?13:18
ayush3504mithro: was physically away from the room. went to bank13:19
mithroayush3504: since our meeting on tuesday13:19
ayush3504mithro: since last discussion on usb, sorry i'm more focused on the schematic part which is a hard requirement13:20
mithroayush3504: you have now 5 days to finish the schematic and mechanical design for your system13:21
ayush3504mithro: trying best13:22
mithroayush3504: how are we closer then we where on Tuesday?13:22
mithroayush3504: where has the last 16 hours of effort gone?13:23
*** rohitksingh1 has joined #timvideos13:26
*** rohitksingh has quit IRC13:26
*** rohitksingh1 is now known as rohitksingh13:26
*** Niharika has joined #timvideos14:03
*** rohitksingh has quit IRC15:03
*** rohitksingh has joined #timvideos15:04
ayush3504mithro: what kind of connector would you be needing for IR daughter board?15:09
rohitksinghmithro: online?15:12
*** rohitksingh1 has joined #timvideos16:01
*** rohitksingh has quit IRC16:01
*** rohitksingh1 is now known as rohitksingh16:19
*** Niharika has left #timvideos17:01
*** Niharika has quit IRC17:01
*** mparuszewski has quit IRC17:11
rohitksinghany mentor online? I'd like to inform of a major improvement in VGA capturing. Although, it is still not perfect. Maybe  mentors can suggest the possible issue?17:21
tpbTitle: [GSoC Daily Log]: Major improvement! | Dreams eXtrinsic (at
ayush3504rohitksingh: looks great! :)17:37
rohitksinghayush3504: thanks! :) although I have to resolve flickers17:40
ayush3504rohitksingh: you're very close though ;)17:41
rohitksinghayush3504: yeah seems :) but one never knows, what problems can come :)17:43
ayush3504rohitksingh: true. so any suspect in your mind for these flickers?17:46
rohitksinghi think maybe be something wrong implementation in my code or incorrect syncs...I'll have to investigate more on that!17:47
ayush3504rohitksingh: are the flickers random in nature?17:50
rohitksinghayush3504: i think so...can't quantify their time...will have to see on this...17:56
ayush3504rohitksingh: have you ruled out circuit problems? checked waveforms?17:56
rohitksinghayush3504: yeah that too maybe the case or incorrect AD9984A's register settings or simply my incorrect code...who knows... :) will have to see everything :)17:58
ayush3504rohitksingh: sounds fun ;)18:01
rohitksinghayush3504: haha :D ...yeah, should be fun :)18:02
*** tija has quit IRC18:08
*** andi-m2 has quit IRC18:08
*** shenki has quit IRC18:08
*** tija has joined #timvideos18:10
*** andi-m2 has joined #timvideos18:10
*** shenki has joined #timvideos18:10
*** sets mode: +v shenki18:10
*** tija has quit IRC18:14
*** andi-m2 has quit IRC18:14
*** shenki has quit IRC18:15
*** tija has joined #timvideos18:16
*** andi-m2 has joined #timvideos18:16
*** shenki has joined #timvideos18:16
*** sets mode: +v shenki18:16
ayush3504rohitksingh: should I treat your SDA, SCL pins on VHDCI final as per the spreadsheet?18:37
rohitksinghayush3504: yeah pretty much...we don't have any other conflicting SDA/SCL pin on other expansion boards18:42
*** rohitksingh1 has joined #timvideos19:27
*** rohitksingh has quit IRC19:27
*** rohitksingh1 is now known as rohitksingh19:33
aps-sidsCarlFK: around?20:31
CarlFKaps-sids: 1/2 - setting up to record an event tonight20:31
aps-sidsoh. nevermind, I wanted to ask about replicating my results.20:32
aps-sidsCarlFK: anyway, would you be available for a VC in a day or two? We haven't had any of those.20:33
aps-sidsI mean if that's needed.20:33
*** slomo has joined #timvideos20:47
*** tija has quit IRC20:55
*** slomo has quit IRC21:17
*** mparuszewski has joined #timvideos21:31
mparuszewskimithro: I will use then and load a custom css for from website to preview parts of website, I will change the design a little bit to have one panel with content to make sure that editing is easy. Design and easy ability to edit and create content have to be a compromise.21:33
*** CarlFK has quit IRC22:17
*** rohitksingh has quit IRC22:26

Generated by 2.12.1 by Marius Gedminas - find it at!