**** BEGIN LOGGING AT Mon Mar 14 02:59:58 2016 Mar 14 05:01:32 Hello Mar 14 05:16:51 If you have the time please go checkout my post on idea list, thanks Mar 14 13:35:49 jkridner: there? Mar 14 13:35:55 hi Mar 14 13:36:06 jkridner: can you tell me some drivers which have to be developed for blue? Mar 14 13:36:15 jkridner: mpu9250 is one.. Mar 14 13:36:28 jkridner: which baro btw? Mar 14 13:36:33 bmp280 Mar 14 13:37:18 jkridner: bmp280 is also there in 4.1 Mar 14 13:38:12 Main features used are: mpu9250, bmp280, pwm for motor drivers, eqep, quadrature encoder on PRU, PRU for servo motor drive Mar 14 13:38:51 https://github.com/StrawsonDesign/Robotics_Cape_Installer/tree/master/libraries has userspace libraries Mar 14 13:39:51 jkridner: yeah.. i got the strawson api's.. but can you tell me what all kernel drivers have to be implemented? Mar 14 13:40:15 anyway, the real trick isn't getting the basic drivers, it is making the performance higher than the userspace ones. Mar 14 13:41:56 jkridner: also.. for the standalone ros on blue.. Mar 14 13:42:31 jkridner: if I want to make sure that the functionalities of ros can also be extended to the devices on blue.. Mar 14 13:42:48 jkridner: should I be using the modified api's for blue to make it happen? Mar 14 13:43:17 jkridner: and should I be including some kinds of example nodes just like how victor did for black? Mar 14 13:46:49 is there a form/questionnaire for the student proposal? Mar 14 13:50:07 hpfmn: yes. Mar 14 13:50:14 hpfmn: it is on the organization page Mar 14 13:50:35 hpfmn: but you should read the instructions on the idea page as well. Mar 14 13:51:17 kiran4399: using the "Strawson" APIs makes some sense as we will support them, userspace or kernel wise. Mar 14 13:51:35 kiran4399: unless you can identify places where they are an impediment to performance. Mar 14 13:51:54 generally, since they use callbacks, I don't think they should be a performance issue in the APIs themselves. Mar 14 13:54:56 jkridner: also... there are kernel drivers for these new devices but are existing seperately.. Mar 14 13:55:12 jkridner: can these be reused? Mar 14 13:55:27 jkridner: for example mpu9250 has a driver by invesense.. Mar 14 13:55:45 jkrdner: and for the case of pru servo driver.. m_w has written this: https://github.com/diydrones/ardupilot/tree/master/Tools/Linux_HAL_Essentials/pru/pwmpru Mar 14 13:55:53 jkridner: but the project registration, video, blog etc. happens after one is accepted, doesn't it? Mar 14 13:56:25 jkridner: it's bassically just the proposal+cross compile? Mar 14 14:08:36 hpfmn: pretty much.... also engaging community to get feedback on why your project would be great. Mar 14 14:12:08 ok thank you jkridner Mar 14 14:14:24 jkridner: ^^ Mar 14 14:46:08 pmezydlo: how is your research into the SPI slave going? Mar 14 14:54:49 bradfa: i deal with now usb driver Mar 14 14:55:27 kiran4399: no reason existing drivers can't be reused, except performance requirement must be met. Mar 14 14:55:28 bradfa: i am writing application Mar 14 14:55:55 kiran4399: the balance.c routine is a nice proxy for performance. it has a 5ms balance loop. Mar 14 14:56:08 Something under 2ms is actually consumed.... Mar 14 14:56:32 so, you'd need to figure out how to make sure under the rt kernel it can be done. Mar 14 14:56:43 including calling a userspace routine. Mar 14 14:57:51 then again, much of it could be implemented as kernel modules, but we'd want to show how easy that can be and how it provides a large performance advantage.... and controls via ROS, etc. would still need to be available through userspace. Mar 14 14:59:29 bradfa: can i send tonight you my application? I would like know it is well written. Mar 14 15:03:00 pmezydlo: sure, I can take a look at it for you. I'm definitely not the decider on who gets into gsoc, just as an fyi Mar 14 15:07:35 bradfa:i think already I know a little about spi. I read drivers and checked registers in documentation. Mar 14 15:12:00 I'm not shure if I understand the point the application template about "include quotes from beagleboard.org community" - does that mean I should present the project and include quetes people made on that proposal? Mar 14 15:12:51 hpfmn: the idea is to reach out to people on #beagle and any other places you find BeagleBoard/BeagleBone users hanging out and get their feedback on your idea. Mar 14 15:41:00 jkridner: balance.c ? Mar 14 15:41:30 https://github.com/StrawsonDesign/Robotics_Cape_Installer/blob/master/examples/balance/balance.c Mar 14 15:49:34 jkridner: ok. I get it.. Mar 14 15:50:28 jkridner: One thing which I am not able to get is how can we use kernel drivers.. Mar 14 15:51:05 well, the API in userspace looks like: https://github.com/StrawsonDesign/BeagleBone_MMAP_IO Mar 14 15:51:10 that's what they are actually using. Mar 14 15:51:47 we want to replace with using the kernel drivers, but solve issues that might arise, including performance. Mar 14 15:55:33 jkridner: ok.. I understood how the API in userspace are used... Mar 14 15:56:19 jkridner: but can you show me some code where, for some devices the kernel drivers are built and then you write some program in userspace to access those devices?? Mar 14 15:58:32 that's what all drivers do, no? expose interfaces to userspace? Mar 14 15:59:42 the API to expose to userspace is the one defined by this userspace implementation. Mar 14 16:09:07 jkridner: alright.. I got it.. Mar 14 16:11:08 jkridner: now can you tell me...when you put something in the drivers directory... how does the interfaces connect to that thing.. Mar 14 16:11:51 jkridner: I am understanding the left side(writing kernel drivers) and the right side(how to access from userspace) but I am unable to understand how the communicate.. Mar 14 16:12:03 jkridner: namely the middle part Mar 14 16:14:10 jkridner: how do the interface connect to the built kernel drivers?? is it by sysfs interface or something? Mar 14 16:14:19 yes. Mar 14 16:15:42 https://lwn.net/Kernel/LDD3/ Mar 14 16:16:16 jkridner: ahhh!! just what I wanted :-P Mar 14 16:30:09 For the record to did not write the pwmpru driver, I just sent a link to it. :) Mar 14 16:32:13 which I got from jkridner in the first place Mar 14 16:36:57 I have a problem with setting CONFIG_FUSE_FS to yes. can you help me? Mar 14 16:37:31 make menuconfig Mar 14 16:42:16 It is somewhere script? Mar 14 16:43:10 it is built in the linux kernel source Mar 14 16:43:47 are you sure the module doesn't already exist on the target? Mar 14 16:45:43 I dont see anywhere: usb gadget Mar 14 16:46:07 ls /lib/modules/$(uname -r)/kernel/fs Mar 14 16:46:28 is there a directory called fuse? Mar 14 16:48:02 or just try running: Mar 14 16:48:09 modprobe fuse Mar 14 16:48:44 it works Mar 14 16:50:08 ;) Mar 14 17:13:25 is there anyone still waiting for answers/feedback? should be starting on application stuff if not... Mar 14 17:13:39 I am... Mar 14 17:14:03 jkridner: ping on victor/stephanie yet? Mar 14 17:14:17 is anyone blocked? Mar 14 17:14:36 nerdboy: didn't you give me an e-mail address for one of them? I sent an invite based on your prod. Mar 14 17:14:45 * nerdboy has too many fingers in the fire... Mar 14 17:15:22 * jkridner wishes we had a way to bridge into here from Slack for a broader audience. Mar 14 17:16:06 which one? Mar 14 17:16:19 you sent to stephanie? Mar 14 17:17:06 thought you had that one... Mar 14 17:17:30 * alexhiam still thinks getting a gitter or something up and running for beagleboard stuff might be a bit more welcoming than irc Mar 14 17:19:54 just had to figure out which Victor. :-) Mar 14 17:22:18 alexhiam: you'd need to explain gitter first... Mar 14 17:23:48 it's a slack-like chat thingy. Uses github oath to manage accounts and can be integrated with github orgs to have general public and private rooms as well as a room for each repo Mar 14 17:24:13 or something like rocket.chat, which is a FOSS and self-hosted "slack clone" Mar 14 17:25:33 things like code highlighting and image/text file embedding would be nice Mar 14 17:36:50 alexhiam: once I write the kernel drivers for the devices on blue.. will they start to show up in the /dev directory? Mar 14 17:40:14 jkridner: there? Mar 14 17:40:23 kinda Mar 14 17:40:52 kiran4399: if they create dev files when they're loaded they will Mar 14 17:41:32 alexhiam: for the mpu9250 and baro.. I think we should create dev files right? Mar 14 17:44:21 kiran4399: those would both fall under iio, so there'd be the directory /sys/bus/iio/devices/iio:deviceX and a /dev/iio:deviceX file Mar 14 17:44:44 alexhiam: ok.. Mar 14 17:45:43 alexhiam, Hal drivers are no longer a part of kernels in various linux distributions ? Mar 14 17:46:51 kiran4399: see the README in the current invensense driver: https://android.googlesource.com/kernel/tegra/+/74f15aa73e1d999368e3a8287cdb85718e987d48/drivers/staging/iio/imu/mpu/README Mar 14 17:48:14 chanakya_vc: different thing. I was just using HAL as an abstract term, then saw that in the Linux i2c system I think those are called the adapter drivers Mar 14 17:48:21 or maybe algorithm drivers... Mar 14 17:48:48 I forget, anyone have any in depth experience with the i2c system in Linux? Mar 14 17:49:51 alexhiam: how will we provide easy connectivity for dsm2, gps etc. on the blue? Mar 14 17:50:52 well I assume they're both just UART connections, and I'd imagine the gps at least would already have a driver Mar 14 18:02:03 yup Mar 14 18:05:07 nerdboy: yup to there being drivers? Mar 14 18:07:05 yup to gps Mar 14 18:07:17 yeah, I figured Mar 14 18:07:47 gps is serial, use gpsd as interface Mar 14 18:08:04 the latter speaks all the gps crap, NMEA, etc Mar 14 18:08:15 oh right, that's pretty darn standardized Mar 14 18:13:21 autopilots usually have uart pins/connector for gps Mar 14 18:13:45 it's just one of the available serial ports Mar 14 18:14:37 https://github.com/VCTLabs/elc2016-presentations/blob/master/drones/images/pixhawk_connectors_top.png Mar 14 18:15:22 pixhawk has at least 4 or 5 uarts Mar 14 18:42:49 Hello Beaglegroup! I am Raghav Jajodia, final year Computer Science Student at BITS Pilani. I am interested in "StratchX extension for BoneScript" for GSoc. Can someone connect me with the mentor? Mar 14 18:48:59 raghavjajodia: that would probably be jkrinder, but do feel free ask any questions here and others can probably help as well Mar 14 18:54:39 raghavjajodia: stick around! Mar 14 18:54:49 raghavjajodia: ah, thought you'd dropped. Mar 14 18:55:07 Thanks for the reply alexhiam! I am new at Scratch programming, but I have good experience with Javascript. I was looking at the documentation of Scratch, for making the extension. Mar 14 18:55:08 raghavjajodia: yeah, that'd likely be me to mentor. Mar 14 18:55:24 Oh no, actually lost internet connection, sorry for that Mar 14 18:55:38 Glad to meet you jkridner Mar 14 18:55:45 raghavjajodia: I started https://github.com/jadonk/scratchx-bonescript Mar 14 18:56:09 which allows for scratchx.org/?url=http://jadonk.github.io/scratchx-bonescript/scratchx-bonescript.js Mar 14 18:56:35 http://beagleboard.org/project/javascript-tricks/ will show you a bit about what is possible. Mar 14 18:56:55 bonescript.js can be included from your board to enable an RPC connection. Mar 14 18:57:15 http://jadonk.github.io/blockly-bonescript/static/tests/playground.html shows a similar integration in Blockly. Mar 14 18:58:09 https://beagleboard.org/static/bonescript.js provides the base bonescript include for browser pages. Mar 14 18:58:13 Oh thanks, I will checkout these links Mar 14 18:58:23 the setTargetAddress() function should establish the connection. Mar 14 18:58:39 you should provide handlers for managing error conditions. Mar 14 18:59:03 https support should eventually be worked out as well. Mar 14 18:59:40 I think scratchx.org doesn't support https right now. Mar 14 19:00:12 I'd suggest looking at https://github.com/LaboratoryForPlayfulComputation/blockytalky as well for inspiration on the API. Mar 14 19:00:59 raghavjajodia: ping me back again once you've read up. :-) Mar 14 19:19:21 student registrations have opened Mar 14 19:55:23 Hey alexhiam ! Mar 14 19:59:04 Hey m_w ! Need some help, you there ? Mar 14 19:59:41 what's up? Mar 14 20:00:03 I need some review. Mar 14 20:00:05 Can you please go through this once . Its still incomplete, but I want to make sure if I am moving in the correct direction. Mar 14 20:00:19 ZeekHuge: working but can help intermittently Mar 14 20:00:29 okay Mar 14 20:00:31 ohk m_w Can you please go through this once . Its still incomplete, but I want to make sure if I am moving in the correct direction. Mar 14 20:01:38 alexhiam, Could I put my timeline on the ml as a draft proposal? Mar 14 20:01:56 please do Mar 14 20:07:17 * ebadawy_ thinks current gsoc websit is way much better than melange! Mar 14 20:07:21 ZeekHuge: looks like a good start - still need some info on the Linux side, i.e. how the driver might work, and how this design would be saving overhead when you're reading the data real-time in, say, a userspace program Mar 14 20:08:10 thanks alexhiam . Ohk I will include that. Is there any limit on the size ? Mar 14 20:08:55 only the patience of the mentors reading it ;) Mar 14 20:12:55 alexhiam,https://docs.google.com/document/d/1ZmtRivnndmJknpugKxIRWzRrgx_V7yZ1stdPimkDYL8/edit?usp=sharing Mar 14 20:13:24 alexhiam, Please go through it. Mar 14 20:14:13 alexhiam, as this idea isn't on the idea page, should i post the content (as is in the current state ) on the ml ? allowing the community to see this idea, Or add more details (ass you said) and then do it ? Mar 14 20:14:44 alexhiam,It is the same as that on the ml. I would build upon your suggestions. Mar 14 20:14:54 I am sure alexhiam didn't say that on this channel ;-) Mar 14 20:21:52 Zeekhuge,Hey saw your proposal.It is very good! Mar 14 20:25:32 Thank you chanakya_vc . Anything you would like to suggest ? Mar 14 20:27:57 ZeekHuge, I think it is good enough.Which year are you in? Mar 14 20:28:09 of college? Mar 14 20:28:26 I am in 3rd year. How about you ? Mar 14 20:29:19 I am in my second year. Explains why I could not understand many things in your proposal :) Mar 14 20:29:43 :) Mar 14 20:31:39 I have posted my draft as well.I hope the mentors like it. Mar 14 20:34:17 Cool ! Good luck ! chanakya_vc . btw this is what I was doing last year at this time, https://www.youtube.com/watch?v=8q2SE9pB49k Mar 14 20:38:48 ZeekHuge: yeah, post it as is so you get more feedback Mar 14 20:39:07 and post it straight in the message, not a link to the google doc Mar 14 20:40:13 Will do :) Mar 14 20:43:18 chanakya_vc: I think the way to handle the CS signals would be for the user to configure the CS pins they need in the DT Mar 14 20:43:45 e.g. passing numbers of the PRU's digital outputs that would be used for the CS signals Mar 14 20:45:16 Okay so the user would have modify the DT right?Because I donot know if there is a way a passing arguments to the DT? Mar 14 20:45:35 a /dev/spidevX.Y would be created for each CS (where Y is the CS number), and the driver would pass that info to the PRU when it's probed and the firmware would act accordingly Mar 14 20:46:02 then when reading/writing it would tell the PRU which CS to use Mar 14 20:46:13 right, or do so with an overlay on the beaglebone Mar 14 20:49:40 So if I understand correctly,the user first modifies the DT or uses an overlay to tell the number of CS pins required.Then that many spidev files are exposed.Now if the user wants to use /dev/spidevX.y1,he would basically choose it and write/read from it Mar 14 20:50:44 *chooses it Mar 14 20:51:02 yeah, that's how spidev works in Linux, /dev/spidev0.0 corresponds to the first CS on the first SPI controller enumerated Mar 14 20:51:13 and /dev/spidev0.1 the second CS, etc. Mar 14 20:51:22 Okay got that. Mar 14 20:51:34 What do you think of the timeline? Mar 14 20:52:39 well, it depends on your PRU firmware and Linux driver skills, so getting some demos on github soon would be helpful in assessing the timeline Mar 14 20:53:29 What would you want specifically? Mar 14 20:54:10 a 'hello, world' driver and some PRU firmware to blink a USR LED would be a great start Mar 14 20:54:17 do you have a beaglebone? Mar 14 20:55:30 Yes I have.I told you about the experiment that I did in the TI lab in my college,comparing the response of PRU and the processor on an oscilloscope? Mar 14 20:55:57 But I used PRUspeak for coding the PRU's Mar 14 20:56:00 I think so... is the code for that on github? Mar 14 20:56:15 the more code we can see the better ;) Mar 14 20:57:14 No .I can try to repeat the same experiment by coding the PRU in assembly and and perhaps upload that to github? Mar 14 20:57:51 sounds great Mar 14 20:58:40 Okay.Do you want it before the 24? Mar 14 20:59:43 if you can get it done, but don't let it get in the way of your application Mar 14 21:00:35 Okay I will try my best to do that. Mar 14 21:03:04 Apart from that regarding the driver,I did some research.The I2C driver in linux consists of a core driver,a bus driver ,an algorithim driver and a chip driver. Mar 14 21:03:17 http://www.linuxjournal.com/article/7136?page=0,0 Mar 14 21:04:00 Were you talking about the algorithim driver mentioned over here? Mar 14 21:08:13 right, yeah, so you would need an algorithm and an adapter Mar 14 21:09:00 By an adapter driver you would mean the bus driver? Mar 14 21:09:40 right, and it seems like most people just have a single file that does both: https://github.com/beagleboard/linux/tree/4.1/drivers/i2c/busses Mar 14 21:09:57 like i2c-omap.c Mar 14 21:12:24 I'm still not sure what this file is though: https://github.com/beagleboard/linux/blob/4.1/arch/arm/mach-omap2/i2c.c Mar 14 21:19:35 alexhiam, Okay Will research on that.You would expect it completely explained in the proposal right? Mar 14 21:20:52 the more detail the better (as long as it's not many pages to read). Obviously there would be some things to figure out as the project progressed Mar 14 21:21:52 Okay.I think figuring out what kind of driver I would have to write and briefly explain how it would work would be okay? Mar 14 21:22:05 sounds good Mar 14 21:23:10 And I can use my current timeline as base right?I mean you told me that you would only be able to assess it once I showed the code. Mar 14 21:23:23 yeah Mar 14 21:23:51 Otherwise any other suggestions about the timeline? Mar 14 21:24:01 none at the moment Mar 14 21:24:48 Okay so I should currently focus on the codes or figuring out the driver bit is more important? Mar 14 21:25:44 hmm, I'm fine either way Mar 14 21:27:18 I guess I will focus on the driver .Cannot complete my application without that. Mar 14 21:29:29 I will try to upload the hello world driver by the end of this week.You would be only be expecting an init module printing Hello world onto the standard output right? Mar 14 21:29:51 Or something more? Mar 14 21:30:19 that would be a good start Mar 14 21:30:37 preferably with a README that explains how to compile and load it Mar 14 21:31:18 Okay will do that.I will get back to you with the driver bit as well. Mar 14 21:32:17 Nearly 3 am over here. Got to sleep :) Mar 14 21:34:03 Goodnight alexhiam ,Thanks for all the help! Mar 14 21:35:55 yikes! gn Mar 14 21:45:45 Hey jkrinder! There? Mar 14 23:20:34 #yolo :D Mar 15 00:41:35 morning Mar 15 00:41:51 I see that the proposals are not following the application template. Mar 15 00:42:47 (which is okay for now, but you'll have to answer all the questions as given at https://summerofcode.withgoogle.com/organizations/4817552005922816/) Mar 15 01:01:09 bradfa: I just finished writing application, Could you assess what I have to improve? Mar 15 01:02:12 bradfa: application posted on the mailing list Mar 15 01:04:22 pmezydlo: Consider posting it as a google doc so that we can leave comments Mar 15 01:09:31 https://docs.google.com/document/d/1Bp0QN7v_AXWWhBNbX2SzdPrpaVmat1RzTWUT2aVSltA/edit?usp=sharing Mar 15 01:10:13 comments welcome **** ENDING LOGGING AT Tue Mar 15 02:59:58 2016