Close

Contributing to Open Source Development HackChat Transcript

A event log for Contributing to Open Source Development

We'll be talking about how to contribute to open source hardware/ software development using 96Boards

shulie-tornelShulie Tornel 12/08/2017 at 20:560 Comments

Robert Wolff Hello @All - My name is Robert Wolff and I work Linaro on the 96Boards team!!!  I started off with Linaro as a Technical Writer, and now I am Community Manager for the 96Boards program. I maintain several org and repositories with my team and have pushed out several open source initiatives in the last year. Is everyone familiar with 96Boards? If you would like to read more visit https://www.96boards.org/about/ - here there is in depth description of our specifications and what we do.

KSwiton HI nice to meet You

ShaynaI think it would be great if you could tell us a bit more about 96Boards too :)

Robert Wolff @KSwiton nice to meet you too! :D

Robert Wolff @Ragnar is that OpenHour Ragnar

Manivannan Sadhasivam 
For all 96Boards related projects, please visit: https://github.com/96boards-projects

Shayna Excellent

Robert Wolff Does anyone have any questions about what we do at 96Boards? Or we can of course take questions about our Open Source initiatives or Open Source collaboration in general

Shayna We can start off with the couple of questions from the comment page if you're ready (https://hackaday.io/event/28431-contributing-to-open-source-development)

Shayna (So just a note for everyone who has joined us in previous Hack Chats, questions aren't posted on a spreadsheet this time -- you can post them directly on this page: https://hackaday.io/event/28431-contributing-to-open-source-development )

Robert Wolff I found this one: "Any tips for newbies who want to contribute to open source projects? Thanks." from @ptalianos I would suggest the first step is getting familiar with git, and in my opinion getting familiar with GitHub. A LOT of Open Source projects are collaborated on through GitHub. If you can master the GitHub workflow, you are in great shape!

Manivannan Sadhasivam Best tip: Persistence is the key. Don't get embarrassed with any review comments just take it positive and learn from your mistakes :-)

Robert Wolff There are plenty of resources out there for anyone interested in learning Git and using GitHub. 

Robert Wolff @Manivannan Sadhasivam Yes! :D its true

Robert Wolff Most people in Open Source want to help you learn, getting your feet wet and over coming that first contribution is key

Sahaj Sarup @ptalianos Even something as simple as submitting an issue or a bug report can count as a contribution. And that's where most people start.

Manivannan Sadhasivam Before contributing to any project, please do read the Contribution policy/Submission guidelines

Robert Wolff @Manivannan Sadhasivam if you are lucky enough to be working on a project that has "guidelines or a policy" :P

Todd Or contribute documentation. Most OS projects are sorely lacking in it.

Andrew I have a related question actually - for someone who's fairly confident in writing code and with git/github, what's the usual etiquette/process for figuring out what needs to be worked on

Robert Wolff @Todd Yes! Documentation is hugeeeeeeee. Most Open Source projects are seriously lacking in documentation

albedo.decero @Andrew Usually the Issues tab

Robert Wolff @Andrew It is nice when a repository posts a "to-do" list... But this is not always the case. The best thing to do here is to find out where there communication takes place. This could be in a mailing list, IRC, a forum, in the issues tab etc...

Todd sometimes the code has `@TODO`'s in it also

albedo.decero @Andrew, Some tag issues with PR (pull request) Welcome

Robert Wolff @Andrew You can establish a report with maintainers by simply joining their correspondence threads.

ptalianos @Robert Wolff @Manivannan Sadhasivam @Sahaj Sarup @Todd That was really helpful, thank you

Robert Wolff @albedo.decero yes, that too

Robert Wolff @ptalianos thanks for the question :)

Manivannan Sadhasivam @Andrew Poke into the source code and if you find anything wrong, submit an issue and if people agree submit a fix also :-)

Shayna So there was a question from Chris added from a few days prior that both @Robert Wolff and @Manivannan Sadhasivam (Applications Engineer with 96Boards) addressed. Would you like to comment on that one again or expand on it for the folks here with us now?

Andrew 
thank you, that was a good answer - I'll definitely try IRC and such

Shayna 
I'll paste out Chris's comment:

"What is the easiest way to get set up to contribute patches? We hack up the Linux kernel a bit at work and I've found a few bugfixes that I'd happily contribute back upstream. I read through this: https://www.kernel.org/doc/html/v4.11/process/email-clients.html

The problem is, I only use outlook for work and gmail for non-work. Outlook isn't on the instructions and they say that gmail won't work...

The 'git send-email' man page shows instructions for using gmail, though. But if there are questions/feedback about the patches, will gmail mangle my replies?

Is there a recommended 3rd party email service to use that I can just set and forget?

I'd happily set up a new email account for this purpose. I'd prefer something web-based to avoid repeated installation/setup of clients. But I understand if using a Linux client is best -- but if that's the case, then a suggested client and setup instructions would be great. I probably wouldn't use this account for anything other than interacting with the open source community.

I thought I was maybe alone on this, but a coworker yesterday said he was trying to figure out the same thing."

Robert Wolff For anyone who is interested, our team hangs out in IRC #96Boards and #OpenHours - for after the chat is over

Robert Wolff @Shayna we will paste out previous answer, and I will add some stuff

Shayna super

Robert Wolff @Manivannan Sadhasivam will paste his answer, and I will add

Robert Wolff If you visit kernel.org there are many resources regarding this matter

Manivannan Sadhasivam You can use gmail client to send patches. You just need to turn off the HTML mode and switch to plain mode.

I personally use git send-email to send patches and mutt to reply to comments. Mutt always send emails in plain text mode, so developers often prefer it.

Robert Wolff You can find a list of email servers with pros and cons around which text bases service is best for this type of Open Source work: https://www.kernel.org/doc/html/v4.12/process/email-clients.html#email-clients

Robert Wolff I have seen some of my colleagues who do this kind of work (more often than some) talking about Mutt

Manivannan Sadhasivam One of the best resource on submitting patches to Linux kernel:

Robert Wolff @Manivannan Sadhasivam is that how you learned? :P

Robert Wolff Okay, I will share something crazy with everyone

Manivannan Sadhasivam @Robert Wolff Yes of course...

Shayna we love Crazy

Robert Wolff This is a anonymous challenge anonymous http://eudyptula-challenge.org/

Robert Wolff Anyone who really wants to dive deep into kernel work, you can follow these 10 challenges and you will be a master by the end... if you can complete it

Robert Wolff sorry, 20 challenges!

Shayna And if you happen to be curious about the namesake for "eudyptula"

Michael Welling sit is a little penguin

albedo.decero fairy penguins! :)

Shayna 

Robert Wolff I just looked it up

albedo.decero dawwww

Shayna hehe

Michael Welling the challenge is closed for new entrants now :-/

Robert Wolff The genus Eudyptula ("good little diver") contains two species of penguin, found in southern Australia, Tasmania, New Zealand and the Chatham Islands. They are commonly known as the little penguin, little blue penguin, or fairy penguin. Source: https://en.wikipedia.org/wiki/Eudyptula

Shayna Well, it looks like there might be a way in... if you *really really* want

Robert Wolff Kernel newbies

Michael Welling https://kernelnewbies.org/

Robert Wolff Yeah, well I am kind of interested in know what kind of Single board computers people are working with

Shayna So I'll be checking on the comments on the event page (https://hackaday.io/event/28431-contributing-to-open-source-development) if anyone is in the middle of typing something up -- but since we've covered what's there for the time being, we can open up the discussion if anyone would like to ask anything directly in the chat.

Andrew ooh - i have lots

Robert Wolff Have you done any work with 96Boards?

Robert Wolff @Andrew

Andrew i haven't, ARM is something i'm trying to get into but i haven't done much yet

Andrew i was one of the lucky few who got a CHIP for the original $9 in the kickstarter before the fulfillment issues started, but i've been using that essentially just as a linux system rather than messing with the lower level ARM stuff

Shayna And if @Robert Wolff and @Manivannan Sadhasivam have a hard stop coming up in the next while, we can wrap up then or otherwise within the next half-hour or so.

Andrew and i actually was just given an Android Things board, which is super cool but is again more about android app development in java than anything with ARM

Robert Wolff You sound busy with board! :P

Robert Wolff There are a couple 96Boards in AOSP right now, if you are into Android

Robert Wolff but not Android Things.... There was an effort back in the day when Android Things was called "Brillo"

albedo.decero What's the standard toolbelt for developing for ARM?

Manivannan Sadhasivam You can use IAR compiler for doing microcontroller programming

Radomir Dopieralski or just gcc :)

Robert Wolff @albedo.decero It will depend on your native development environment

Andrew yeah, i actually think low level ARM stuff on android is really cool

Radomir Dopieralski and a cheap stlink programmer

Robert Wolff @Sahaj Sarup does work with AOSP, there is a group of folk at Linaro who work on AOSP

Robert Wolff lots of fun stuff going on there...

Andrew maybe i'll try to put aosp on the things dev board

albedo.decero @Robert Wolff I can se any OS. Just looking for low cost to learn

Sahaj Sarup 96Boards Hikey and HiKey960 are already in the AOSP source https://source.android.com/setup/devices

albedo.decero @Manivannan Sadhasivam IAR has a "Request for Quote" form, which is where I hit a wall. :-)

Sahaj Sarup @Andrew I don't think a lot of android things devices will run AOSP, which board do you have?

Andrew it's the pico i.mx6ul dev kit, i doubt it'll run it too but it could be a fun project to try

Sahaj Sarup @Andrew I doubt it'll straight up run any recent versions of android

albedo.decero @Radomir Dopieralski Thanks for the st-link programmer pointer

Robert Wolff So just want to let everyone know, if you are ever interested in developing on ARM, you can consider 96Boards a resource for support :) We are always here to help, and our team plans on contributing throughout 2018 to Hackaday with some fun projects ! :D

Shayna :)

Andrew oh wait it might've been a i.mx7 @Sahaj Sarup

Andrew 
Robert Wolff thank you for the talk! definitely a lot of great info today

Robert Wolff oh! i.MX7 96Boards just became available through Arrow Electronics... but not so low cost ~ $100 USD

Andrew oh that's very cool!

Sahaj Sarup @Andrew there may be a chance then, I've see builds running with the mesa driver for imx7

Robert Wolff https://www.96boards.org/product/imx7-96/ It runs a vendor image of Linux desktop. for now, but future OS enablement is in the works, AFAIK. Fun little board to play with.

Sahaj Sarup @Robert Wolff for sure, I like the inclusion of the 200mhz cortex m4 MCU in the SoC

Andrew yeah, i'll definitely check the linaro stuff out

Robert Wolff @Andrew :) nice. We have a lot of fun at 96Boards

Andrew yeah - did you say you had an IRC channel? is that on freenode?

Robert Wolff Also, every week we do an Open Source video conference call were we have fun and hang out over coffee, interview people and talk tech. it's called OpenHours. https://www.96boards.org/openhours/ We are on IRC: #OpenHours and #96Boards

albedo.decero @Robert Wolff Which board would you recommend for a kiosk-style presentation running modest JS CSS sprite animation in a browser?

Robert Wolff my handle is sdrobertw

Robert Wolff 24/7 please reach out any time!

Robert Wolff hmmm @albedo.decero

albedo.decero hah

Robert Wolff Maybe @Manivannan Sadhasivam or @Sahaj Sarup can help me with this one... If you are running a browser, you will need a desktop environ or tablet environment like android / AOSP

albedo.decero yeah, that's what I was thinking too. Just don't know how powerful the boards with GPUs are...

Loic Poulain I would suggest the Dragonboard 410c which is pretty mature/stable, running debian for example

Robert Wolff DragonBoard will probably be the best 

albedo.decero cool, I'll test

albedo.decero thank you, both

Robert Wolff https://www.96boards.org/product/dragonboard410c/

Andrew bye everybody, i've gotta catch a train but thanks @Robert Wolff for the talk!

Robert Wolff You can also expect a bunch more work around DragonBoard as well, in near future.

Shayna Bye @Andrew

Robert Wolff Thanks, @Andrew for the questions. Safe travels

albedo.decero oh? What kind of "lot of work"?

Sahaj Sarup @albedo.decero yeah dragonboard has the gpu working with the opensource mesa driver so it would handle the animations well

ptalianos @Robert Wolff @Manivannan Sadhasivam @Sahaj Sarup Under what circumstances would one prefer a 96board over SBCs like a Raspberry Pi/BBB? Thank you

albedo.decero @Sahaj Sarup Thanks

Robert Wolff @ptalianos There are several circumstances.

Robert Wolff 1) Path to product: Some of our boards make the onboard SoC available for chip down design.

Sahaj Sarup @ptalianos 96Boards aim for armv8. both rbp and bbb are fairly old chipsets

Robert Wolff This will allow you to develop a product, and bring it to production without having to put the entire board inside your product.

Manivannan Sadhasivam @ptalianos My take is everything is opensource: Right from board design to boootloader/OS

Sahaj Sarup @ptalianos also considering the raspi3 is technically armv8, you can't really buy that chip without the raspi if you are designing a product around it

albedo.decero @Manivannan Sadhasivam That's a big deal

Manivannan Sadhasivam @albedo.decero Yeah. You can use 96Boards for learning as well as contributing to Opensource. Learn by doing :D

Robert Wolff 2) Developing on 96Boards gives you options under the same ecosystem. If you want to work on Snapdragon one day, then Huawei or ActionSemi another, you have the option. All our boards follow the same form factor, all your mezzanines (Add on boards) are compatible and your development doesnt stop. You can transfer your work from one SoC to another.

A big push we are trying to make at 96Boards is universal library support. @Manivannan Sadhasivam is working on unifying our boards under the libmraa and libupm libraries, among others.

Sahaj Sarup @ptalianos if you take a closer look rpi and 96boards are not on the same playing field, their goal is more focused towards educating kids, 96boards focus towards prototyping for products using the chipsets we feature, pretty much what @Robert Wolff just said

Robert Wolff In essence, you are working with interchangeable SoC on a universal form factor with industry support and a strong path to product. However, you can still use 96Boards for educational purposes too... the cost is usually just slightly higher. On the bright side, you always get what you pay for.

albedo.decero Gotta bounce folks Thanks for the hospitality! I'll check out the Dragonboard!

Robert Wolff 3) Key open source developers: 96Boards is backed by some of the big names in open source development. Many of the big Arm developers use 96Boards for their work.

Robert Wolff thanks, @albedo.decero Have a nice day!

Shayna I think this might be a good moment to ""officially"" wrap up though of course, everyone is welcome to stay and continue chatting :)

ptalianos Good information there that cleared things out, thank you.

Well they are really promising, especially if a community grows and is established. It could lower the barrier to entry for people.

Robert Wolff @ptalianos we are really trying to do this with several of our initiatives

Shayna Thank you so much to @Robert Wolff as well as @Manivannan Sadhasivam, @Sahaj Sarup and the 96Boards team for participating in today's Hack Chat

Robert Wolff @Manivannan Sadhasivam maintains a projects org and @Sahaj Sarup help to run an open source hardware initiative for mezzanine enthusiasts with @Michael Welling as our lead maintainer

Shayna Again, you're all of course welcome to stay as long as you'd like :)

ptalianos @Robert Wolff good to hear :)

Shayna Thanks to everyone who submitted questions and participated in the discussion!

Manivannan Sadhasivam Thanks @Shayna for hosting us :-)

Robert Wolff Thank you @Shayna and @Hackaday very much for hosting us! This was a lot of fun!

ptalianos @Shayna Thank you for hosting us :)

Shayna Anytime!

Robert Wolff and @James Lewis and @Sophi Kravitz for helping up to set everything up!

Shayna A transcript will be forthcoming in a short while

Robert Wolff also one last thanks to @Benchoff for the well worded blog about this hack chat :D

Shayna yay @Benchoff !

Robert Wolff :) We will hang around the chat for a while longer. If anyone wants to join us throughout the week we are always hanging in our IRC channels:

#OpenHours and #96Boards

All other inquiries and resources can be found on the 96Boards website and GitHub orgs:

https://www.96boards.org/

https://github.com/96boards

Have a nice weekend, @all !

Ragnar @Robert Wolff yes, the same Ragnar. For those not so familiar with OpenHours: I've joined often enough to get some free goodies, like a DragonBoard for example.

Robert Wolff @Ragnar cause you're awesome :P We will be doing some more community giveaway very soon. With the new year and Christmas coming up, it seems fitting !

Discussions