Embedded Systems course targeted towards women


Greetings all,
We want to conduct a focused program to teach practical embedded systems to women. I have been involved in a similar attempt (without the focus on the free aspect) last year. The website that we made is embeddedforher.com/ and the learning from that attempt is documented here https://medium.com/p/da465c83e6e8/

Here is a working draft of the program plan https://etherpad.fsmk.org/p/free-hw-program

One of the important tasks to be done is the website for the program. Tanvi and @Rahulkondi have graciously volunteered to build it. I feel that a website structure similar to embeddedforher.com/ would do. I hacked it together somehow and the source is available here github.com/embedded-for-her/ So, Tanvi and Rahul, can you please start working on creating a website and I’ll start working on its content?

Feedback and assistance in anyform is welcome. Cheers.


Dear women who love tech:
Would you like to learn how to build devices that dance to the tune of your ideas?
Free Software Movement Karnataka proudly presents ‘Embedded for Her’! We’re offering a hands-on embedded systems teaching program – exclusively for women. And you get hardware equipment worth the 5000 Rs fee for the program.
For more details and registration check embeddedforher.com
(Registrations open till 15th May)


EfH in news
The New Indian Express

The Hindu



Is this the software to be used for the workshop? Much of it is proprietary.


Thanks for looking into this Arun. So in this installation instructions there are primarily two sources of proprietary software. One for using the JLink debugger. And the other for the SDK provided by Nordic Semicounductors, which is mostly non-free.

If you see this commit https://gitlab.com/appiko/nrf5x-firmware/commit/883eee822e3a1fcdc5be5477efed2a95ebaa8bde you can see that the Black Magic Probe debugger is now supported in by this repository. Its a free debugging software that runs on multiple platforms. The native one is quite costly, so we’re using Stlink V2 clone. This is not free hardware, although its schematic has been reverse engineered, so it is as good as free.

For the SDK, we’re writing free software for all the drivers and examples that we’ll be using in the course. After the course, the only place that I can see where we could face trouble is the Bluetooth low energy (BLE) stack in case any one would like to use it in their project. There is a free (BLE) stack available - myNewt. I have only worked on the non-free but gratis BLE stack by Nordic Semi and I’m not sure if I or anyone else can get up to speed with myNewt by the time for the course.

Let me know what you think. We’ll be using different repo from this for the course and I’ll update the install instructions in this repo too.


I’m not too happy with this. It would have been better if there was full free software support for the hardware prior to the workshop. If it wasn’t a workshop, but a hackathon to write free software replacements for existing proprietary software, that would have been perfectly fine. But, introducing newcomers to proprietary and semi-proprietary software implies that it is ok to tolerate (some) proprietary software. Also, I feel that this board is too expensive, and too advanced for a beginner level course. Please reconsider.


You are bringing up a couple of things here, namely, the lack of free software support for all the features of the chip that we’ve chosen and the appropriateness of the chip and board that we’ve chosen.

For nRF52, the chip that we’ll be teaching with will have complete free software support for all the course material that we’re teaching. This will cover all the major peripherals (GPIO, timers, UART, I2C, ADC) of this platform. So no non-free software there.

Unlike x86 based computers, embedded processors have less free software support. This is an unfortunate state of affairs. If you take a time machine to the beginning of 2016, you’ll not find any free complete Bluetooth Low Energy (BLE) stack. And BLE is not simple, can’t write its stack over a weekend. Now its better, there’s myNewt and Zephyr. But both are so new that I don’t think we can get anyone to help us if any team wants to use them in their project. And I can assure you this is not something that we can learn in a workshop or a hackathon, it took me a master thesis to learn BLE. When I was jobless I wrote a tiny portion of BLE stack which contains the code for the often used broadcast mode. This is the only free software BLE code that any of the EfH organizers and instructors understand.

For a board, we had three objectives when choosing. One, it should be a good platform the learn all the intricacies of developing embedded firmware. Two, it should be useful for the participants for the project as well as in the future for any serious work. Three, it should be easy to learn. And additionally there must be free software to run on it for the course.

The board that we’ve chosen - Bluey is designed and manufactured locally and is quite a bang for the buck (Rs 1875). Do check what all it has and see if you can find a similar value for money elsewhere. It checks all the criteria we had for choosing a board.

I don’t think we can change the board now. From what I can see, the call that we have to make is if the participants choose a project that would need use of BLE (non broadcast mode), what do we say to the participants?


Hi, I would like to attend the embedded system course. May I know how to apply for the course since I joined FSMK newly. Can anyone please help me.


Hi Meghana, welcome to FSMK. We’ve already chosen the 12 participants. If any of them back off, there might be a place for you. Please send a mail to embeddedforher@fsmk.org with answers to these questions:

Email ID
Mobile Number
Resume as a url link or attachment
Describe briefly a technical project that you were involved in
What was the aim of the project? What was your contribution? What did your team achieve? (It’s okay if you haven’t done anything like this. You’re still eligible.)
Why do you want to participate in this program?
What do you want to achieve in this program?
Describe an embedded device that you want to build as a project. We cannot assure you that you can build this device as your project in the program.
This program will use a GNU/Linux-based environment. Are you comfortable with (learning and) using one on your machine?

  • Yes, I already use one.
  • I haven’t used one before but I am willing to try.
  • No, I prefer another environment.

Cheers, Prithvi


Hi folks,

With one week to go for “embedded for her” and most of the organising part is done, now it is the right time to update on the details about the program.

We have partnered with other organisations who are graciously offering their space abiding to our agreements. Following are the essentials of the agreement being made:

    1. Details of participants cannot be shared without the acceptance from them
    2. Non-free/non-libre product should not be promoted

Following are venue partners and their hosting dates

Date Location
10th June Workbench Projects (http://workbenchprojects.com/)
17th June LatLong (http://latlong.in/)
24th June Black Pepper Technologies (http://www.blackpeppertech.com/)
01st July Bangalore Alpha Labs (http://www.bangalorealphalab.in/)
08th July Black Pepper Technologies
15th July Workbench Projects
22nd July IKP Eden (https://ikpeden.com)
29th July Bangalore Alpha Labs
05th Aug LatLong
12th Aug HasGeek (http://hasgeek.com/)
13th Aug IKP Eden for the open day in the evening. Open day is not restricted to only participants. All women are welcome to showcase their project.

We have partnered with Electronut (http://electronut.in/) as our hardware partners. Bluey board (based on nRF52) developed by them will be the Hardware platform used for this program. https://github.com/electronut/ElectronutLabs-bluey

Following are the mentors who will be handling the technical sessions

10th June Nardini (Team Indus)
17th June Nirzaree Vadgama (Lumos)
24th June Nirzaree Vadgama (Lumos)
1st July Prithvi (Lofelt)
8th July Kameshwari (Ittiam semiconductor), Tanvi Bhakta (BMSIT student)
15th July Project
22nd July Project
29th July Project
5th Aug Project
12th Aug Project

During project sessions mentors will be guiding the participants to accomplish their projects. People having prior experience can mentor.

All the sessions are accompanied by other technical and non-technical talks. Following are the details on technical talks

1st July “Trend of connected devices and how it is impacting the design choices” by Ramesh N Raghavan, Chief Architect, Wipro
15th July “Art with Electronics” by Aravinth Panchadcharam, Senic
22nd July “Project to Product” by Mahesh Venkatachalam, Electronut

Following are the non-tech sessions

“Data commodification” by Rama
“Community centre - social need for free info world” by Shijil
“Knowledge commons” by Aishwarya
“Intellectual Property - specific refernce to hardware” by Nardini
“Intro to Free info world (Free hw and sw)” by Gunjan
“Gender discussion” by Hidden pockets

https://discuss.embeddedforher.com will be the platform for all discussions with participants and other interested women working on their project which they can showcase on the open day (August 13th) at IKP Eden Makerspace.

Monthly Meeting, June 2017

Were full free software replacements written for ALL the proprietary code used, as was originally promised?

There appear to be binary blobs in https://github.com/Appiko/nrf5x-firmware/tree/master/codebase/cmsis/dsp. Is that correct?


Oh right, these blobs.

So is there free software for everything in the Nordic nRF5 SDK? No. Is there free software for everything that the participants used for their course? Yes. Did the participants use any proprietary software to build their firmware for their project? No.

These blobs are given by ARM, not Nordic Semi and can be shared, that’s why they are not removed from the repo. They are not used in any way. The Makefile and the linker script needs to be modified to use them. Even if you delete these blobs, you can compile and run the course examples and project applications, because they are not used in any way.

The proprietary nRF5 SDK wasn’t used in the course or the project.


Unfortunately, the right to share alone is insufficient to guarantee the four software freedoms. Besides, if I understand correctly, even to download these CMSIS blobs from ARM’s website, you need to accept some kind of EULA (End User License Agreement), and I don’t know what that agreement says.

In that case, why not just delete them? Why distribute proprietary software?

Good to hear that.


I am reminded of these blobs for the first time with your post after I copied them to the repo long back. If this oversight on my part is sacrilegious for FSMK, I’m sorry. I don’t think there’s much that we can do now that the program is done. I’ll keep this in mind for future activities with FSMK.

Whether I’ll keep these blobs in my personal repo going forward or not, we can discuss when we meet.