Thursday, December 07, 2017

'Tinkering' Awareness in Kashmir Valley Schools

Background

I have been aware of the Atal Tinkering Lab (ATL) program by Niti Aayog since May 2016 or perhaps a little earlier. I had an opportunity to share the details of this scheme with the teacher participants of the
Workshop on Bringing Computational Thinking to Schools held at DPS RK Puram on 20th June 2016. Subsequently, I helped a few schools to formulate and submit their proposals to Niti Aayog. By the end of 2016, 257 schools had been selected for the ATL grant. In early 2017, further ~700 schools were selected. 

Fast forward to August 2017, when it appeared to me that operating an ATL is a tough challenge for a school and that the benefits that one would have expected from an ATL would not fructify unless a strong and sustained mechanism to offer technical help to run the labs, is provided to the schools. The current ATL model does not allow for any such mechanism and expects the schools to manage their lab on their own. I wrote an article Atal Tinkering Lab: Building Inventors In Classrooms highlighting the issues, problems and possible solutions.

'Tinkering' for Army Goodwill Schools

Someone in the Indian Army was taking note of these developments and they contacted me to introduce this concept of tinkering to the many 'Army Goodwill schools' that Indian Army runs in the state of Jammu and Kashmir as part of Operation Sadbhavana.

Eventually, a three day event was planned at Army Public School, Srinagar from 4th to 6th December 2017. A total of 14 schools with their teachers and students were expected to participate. The event had two components: a tinkering sensitization workshop for students and teachers for the first two days and later a day with the teachers and Army officers in charge of each goodwill school to understand the ATL application to be submitted to Niti Aayog to get the ATL grant at a future date.

We were to be the guests of the XV Corps of the Indian Army in Srinagar.  We (Me, Sangeeta and two of my students - Akshay Goyal and Nishant Arora) planned to take all our embedded electronics projects for demonstration as well as a gift box, for each of the participating schools. This took up two large suitcases as seen in the following pictures.


The gift box had several individual project kits as seen in the pictures below.

Arriving in Srinagar

We arrived on Sunday, the 3rd December at the Holiday Home in Badami Bagh camp. It was bright and sunny with fresh air, so unlike Delhi! The camp is self contained with shopping malls, parks, cinema theater etc. and one does not need to venture out in the city except for a few touristy things. The mess assigned for our meals had excellent cooks and we enjoyed every single meal.

The first day of the workshop on 4th December started slow but it was amazing. The host school, the Army Public School from Srinagar had, understandably, the biggest turnout of teachers as well as students at the workshop but the rest of schools were from small towns and rural areas of north Kashmir and were represented by a teacher a few students each. At the beginning of the workshop, I suspected that language could be a problem so I decided to switch between English and Hindi as required.

The Workshop and the Meetings

Introducing myself, my team and NSIT was followed by a customary question - What do you want to be, when you grow up? 'Corps Commander, IAS officer, IPS officer, Engineer, Journalist, Doctor...!' a wide variety of choices and options, unlike what you may hear from most city kids. I was touched by the kids' curiosity, innocence, simplicity and absolute absence of guile even in these trying times!

We could only demonstrate 50% of our projects on the first day. Also, one of our suitcases which contained the gift boxes had been held up at the Delhi airport due to our own mistake - it had a power bank that is not allowed on checked in luggage any more! Thankfully, It still arrived later on the first day of the workshop itself, courtesy, the skillful handling of the situation by the involved Army officers!

For the day, the icing on the cake was that even after the workshop closed for the day, host school kids kept bringing their classmates in droves to see and play with the projects on display!



On the second day, we completed the project demonstrations and then distributed the gift boxes to each school. I went through the list of component inventory in the box to explain the details of each and every component to the teachers and students. This was followed by a demonstration of the LED Kaleidoscope from this gift box and then we had each school perform all the three projects from the kits in the box: wind the long copper enameled wire on the thread spool to make a Faraday generator, test the homopolar motor and then build and test the DC motor. The DC motor was a bit of a challenge to get to work, but finally, everyone got every single project working. The joy, satisfaction and pride on the kids' faces was quite evident. Many participants wanted more kits. I promised to send them more, much more, once they gave me evidence of (i) using all the components from this kit through pictures and reports and (ii) teaching other students from their school in the process. All in all, a great learning and sharing experience. We bid goodbye to the student participants on 5th December, with a promise to meet again somewhere, somehow!







On 6th December, we had a quick meeting with the teachers and Army officers to explain the ATL grant application. Later, we had a meeting with our hosts to discuss the way forward and then we rushed to the airport to catch the early evening Vistara flight to Delhi.

My Assessment

In my assessment, the situation regarding science education and awareness in Kashmir is excellent. At no point, did I feel that the students assembled at the workshop were any less knowledgeable or less curious than students anywhere else. They were equally eager to work with their hands and build whatever we offered. They had as much glint in their eyes when their projects worked, as any other kid I have seen anywhere else! And all this, in spite of the current situation in the state of Jammu and Kashmir.

Kudos to the Indian Army for doing a commendable job in providing a healing touch through education for the local children. The way forward is for all the Army Public and Goodwill schools (as well as other schools too) to approach Niti Aayog to request an Atal Tinkering Lab in each of their schools. This will provide much needed material and encouragement to kids in far flung areas. It will bring them closer to technology that they can touch and feel and play with, in a fruitful manner to enrich their own understanding of science and compare favorably with whatever they get to read through social media.

I appeal to everyone involved in this ecosystem to help bring ATL to these schools!

Jai Hind, Jai Hind ki Sena!


_____________________________________________________________________

Post script: We came back on 6th December and Kashmir is calling again already! :)



Thursday, November 23, 2017

Microcontrollers With Embedded FPGA Cores - Old Wine In Old Bottle!

Tony Kozaczuk has written a blog "The Future of Microcontrollers" where in he argues that offering a wide variety of microcontroller variants is needed to enable the customer to choose an optimum part for a given application. But offering a large list is tough since mask costs are prohibitively expensive. He then makes a case for a product offering from his company that is targeted to ARM silicon vendors to integrate on their ARM offerings and the various applications these FPGA cores could be used for.

This is like old wine in a old bottle. In the early 2000s, Atmel had offered an AVR based product called FPSLIC that had up to 40,000 gates of SRAM based FPGA. That product never really took off, probably for many reasons, one of which could be the effectiveness and efficiency of the FPGA software tools. Xilinx and Altera both have had FPGAs with resident ARM cores but the pricing of these parts put it beyond hobby/educational use. It appears that Cypress too has a microcontroller offering that has an on-chip FPGA but sadly, I have never been a PSoC user, so that's that.

I think Tony is right. It is a mature time to make a fresh bid for vendors of ARM/AVR/PIC chips to offer resident FPGA cores to speed up functionality and/or add novel, on-chip functional units on the fly at the OEM or customer/user end. They could even take the opportunity to reeduce the chip variety since the on-chip FPGA could be called upon to provide the needed function. What needs to be very clearly sorted out, is the FPGA programming/simulation part of the ecosystem.

Saturday, November 04, 2017

The Ubiquity of the Embedded Computer

In 1943, Thomas Watson, the president of International Business Machines (IBM), estimated the world market for computers to be no more than 5 computers! Given that in the 40s, the electronic computers were made using vacuum tubes and tended to be huge in size, it was possibly a realistic judgement.

However, this market was soon disrupted with the invention of the junction transistor in 1948 and soon, the vacuum tube computers were replaced with smaller semiconductor based transistors. Justifiably, the 50s saw more than 1000 computers worldwide. The next disruption came in the form of the invention of the Integrated Circuit in 1959 which led to a much larger demand due to (a) reduced size resulting from the miniaturization of the circuitry in the form of the integrated circuits as well as reduced cost and higher reliability of an integrated chip.

Even so, in the 60s and early 70s, no one had anticipated that a computer could even be a desirable item for home use but starting around 1973 with the development of Micral, computers started to find a place in a home, initially for hobby use.By the end of the 70s, hundreds of thousands of home computers were in use. Apple II, TRS80, Commodore became household names. The computer usage hit top gear in 1981 with the introduction of the IBM Personal Computer (PC). The 'open' nature of the PC led to many other manufacturers offering clones.

Till the 80s and 90s, the computer was still a visible, obvious device, if one was to notice it usually with a large keyboard, a display terminal and a mouse apart from the CPU box. Use of dedicated computers hidden inside everyday gadgets became popular from the mid 90s due to the availability, popularity and cost effectiveness of microcontrollers - a sort of computer on a single chip. Such computers embedded inside gadgets and instruments etc. were called 'embedded computers'.

Today, almost every device, household or in the office, factory floor or out on the road uses one or more of these embedded computers, silently performing a dedicated task as required by the device. Unlike general purpose computers - the desktop, laptop or your smartphone (yes! the smartphone is now a general purpose, computational device, a convergence gadget), the embedded computer boasts of a great variety in terms of size, features, computational abilities and cost all dictated by the requirement of the gadget or instrument that needs to be 'computerized'. Would you believe the small chip pictured below is actually a small embedded computer? Yes, they are!



Here is a list of items in a middle class home in India that uses an embedded computer!


Mobile phone, fixed phone, Modem, TV, Fridge, TV Remote!, Set top box, Washing machine, Microwave oven, Air conditioner, Mood lamp, Electricity (electronic) meters, water purifier, (Power) Inverter/UPS,  Noise cancelling headphones.

Even the following shaving razor boasts an embedded computer! Notice the included battery.


In a nut shell, an embedded computer is more ubiquitous than we imagine. If, in the 40s, the few computers in use in (mostly the western) world could be represented as a few discrete dots on the surface of the earth, what would today's situation be like? It would be no less spectacular than a fabric, say a saree, made up of such tiny small computers with which we have covered us all!


Saturday, October 21, 2017

The Ubiquitous Fridge Light

In this day and age, why is the fridge light the same old boring white?

Given how popular RGB LEDs are, it doesn't make sense to keep the fridge light color the way it is. I feel, it can be used to convey a lot of useful information.

Even if you do like the white color because it help you see what's inside the fridge very clearly and having any other color may mask visual inspection, you could still gently flash various shades to indicate birthdays of distant family members or anyone you care about but likely to forget.

You could program the fridge to indicate if the fridge door has observed lot of unusually high activity, like kids or flatmates opening the fridge far too often, with a chosen color.

Maybe the manufacturer could reserve color to indicate that the fridge is not working optimally and you should have it inspected and/or repaired?

Maybe you could even have the fridge light tie up with your Google calendar! 

Edit 1: Have a mat in front of the fridge with an integrated weigh scale and  that could be used  intelligently to convey to the fridge light about the nature of the person..

Thursday, January 05, 2017

Make Yourself an MSP430 LunchBox for 1$

Dhananjay V. Gadre,  Nikhilesh Prasannakumar and Divanshu Dodeja
NSIT
_________________________________________________


Microcontroller Kits for the Masses


Arduino is one of the nicest things to happen to the DIY community in the last 10 years. It brought microcontroller usage within easy reach of non-specialists (from a technical viewpoint) such as artists, tinkerers, architects and musicians. It’s low threshold of learning, simple and reliable programming environment brought it to the workbench of high school students as well. Apart from being a great, low learning-curve platform, what has helped Arduino to gain such traction worldwide, in no small measure, is the relative low cost too! Although the original Arduino boards cost tens of dollars, variants and knockoffs cost as little as $4! No wonder we find them popular with high and middle school students, everywhere.

A large majority of Arduino variants feature microcontrollers from the AVR family of Atmel (now acquired by Microchip). Some variants using the ARM Cortex M0 microcontrollers as well as higher end Intel processors are also available. Although TI’s MSP430 is a strong competitor to AVR, boasting of superior features such as a 16-bit CPU, significantly lower power consumption and versatile peripherals, it doesn’t have a presence in the Arduino ecosystem. Even with significant software support in terms of the Energia (a fork of the Arduino IDE) which extends the simplicity of Arduino programming to TI microcontrollers, MSP430 has not been able to gain the same popularity as Arduino among enthusiasts. The relatively high cost of the MSP430 LaunchPad development kit ($10 and above) with no corresponding lower cost variants (as with Arduino family) is a likely deterrent.

What the MSP430 ecosystem needs to reach the masses is an extremely low cost entry-level platform which can stand up to the $3 Arduino variants. Such a platform is what we set about trying to design.
 

Microcontroller Essentials

Typically, a microcontroller system requires 4 support elements – power supply, clock, reset and code download ability. Let’s take the example of the Arduino: It is powered by a 5V supply, either provided directly through a USB port, or from an external DC source via an onboard voltage regulator. It uses a crystal oscillator (8/16 MHz depending on the variant) for the system clock. It has a push button switch as well as a clever mechanism attached to the USB to Serial converter chip to reset the microcontroller. The user program is downloaded on to the chip from the Arduino IDE using the above mentioned USB to Serial Bridge, aided by a bootloader program which has to be manually loaded into each fresh chip.

Inexpensive MSP430 Evaluation Kit: The MSP430 LunchBox

With the MSP430, the job is a whole lot easier. Turns out, the MSP430 already has a built-in bootloader on-chip. All that is required is a mechanism to invoke the bootloader and send serial data to it – both of which can quite easily be achieved by a USB to UART Bridge. One of the cheapest USB to UART Bridge chips available in the market today is the CH340G – a full speed USB device that emulates a standard serial interface with speeds up to 2 Mbps and support for all modem handshaking signals – which costs less than half a dollar! CH340 is also one of the major reasons for the 4$ Arduinos. 
All this brings us to this – A $1 (conditions apply) MSP430 LunchBox – a low cost, maker-friendly microcontroller development platform featuring the 20-pin MSP430G2553 Value Line controller. The board supports any 14-pin or 20-pin DIP package MSP430 G series microcontroller, which a hobbyist can obtain for free through Texas Instruments’ free sample programme. The entire bill of materials of the board, excluding the controller, is under $1. The PCB has been designed to be a single sided, toner transfer friendly one, allowing enthusiasts to fabricate one for themselves at little or no cost. The photograph in below shows the early lab prototype of the MSP430 LunchBox.
Figure 1: Lab prototype of the LunchBox 
 

Comparing Various Variants of 'Apples'

The MSP430 LunchBox has a feature set comparable to that of TI’s own MSP430 LaunchPad Development Kit and can quite easily rival Arduino. Here’s a side by side comparison of the $1 MSP430 LunchBox, TI’s MSP430 LaunchPad and an Arduino Nano. 
Feature
$1 MSP430 LunchBox
MSP430 LaunchPad
Arduino Nano
Microcontroller
MSP430G2553 & others
MSP430G2553 & others
ATMega 328
CPU Architecture
16-bit
16-bit
8-bit
Operating Voltage
3.3V
3.3V
5V
Operating Clock
10 kHz to 16 MHz
10 kHz to 16 MHz
10 kHz to 16 MHz
Operating Current
4.5 mA @ 16 MHz
4.5 mA @ 16 MHz
15 mA @ 16 MHz
Programming
Factory UART BSL
Onboard Spy-Bi-Wire
Custom Bootloader
Debugging
Not supported
Spy-Bi-Wire debugger
Not supported
Supported IDEs
CCS, Energia
CCS, Energia
Arduino, Atmel Studio
Available I/Os
14
16
20
Analog Inputs
8
8
6
PWM Outputs
6
6
6
Peripherals
1 LED, 1 Switch, UART
2 LEDs, 1 Switch, UART
1 LED, UART
Cost
$1
$10
$4

The LunchBox functionality as listed above, can be seen in a block diagram format here:
 
Figure 2: Block diagram of MSP430 LunchBox

The design of the MSP430 LunchBox was not without challenges. While the MSP430 has an in-built UART bootstrap loader (BSL), they are not brought out on the same pins as the standard UART interface of the MSP430. This meant that a provision for switching the CH340 USB to UART Bridge between the BSL UART and the MSP UART peripheral – implemented using a pair of shorting jumpers on board – had to be made. 
Another major challenge was on the software side – the UART BSL utility provided by Texas Instruments is quite outdated and contains a few bugs. One of the most critical is the issue with how the BSL Utility handles the flash memory. Graphics below shows the memory map of the MSP430 and it shows the flash memory on MSP 430 is divided into two parts – the code memory, which contains the user code and the information memory, which typically contains data such as calibration constants, Digitally Controlled Oscillator (DCO) settings etc. The calibrated DCO settings, which are required to generate accurate high speed clocks in the MSP are stored in Segment A of the Flash Information Memory (INFO-A).

 
Even though the BSL Software Utility provides an option to preserve the contents of the INFO-A segment, it does not seem to work properly and ends up erasing the entire information and code memory when invoked. Without the DCO constants, it is extremely difficult to implement UART communication due to errors in the system clock. As the bug fixes on an outdated software utility was quite a cumbersome task, we decided to implement a hardware solution to this issue – an external 32.768 kHz crystal oscillator which can be used as an accurate clock source for implementing UART communication. This ends up reducing the number of I/O pins available to the user by 2 pins, but also gives the advantage of having a crystal oscillator that can be easily used for real-time clock applications.
Here is the complete schematic diagram of the LunchBox. It shows the power supply for the MSP430 3.3V, derived from the 5V available on the USB connector and also available on the output headers. The clock for the microcontroller generated using an external crystal of 32.768 KHz frequency, connected to the Xin and Xout pins of the MSP430. The user interface peripherals are a simple pushbutton and an LED apart from the Reset switch. Jumpers J1 and J2 allow the user to switch the CH340 USB to UART bridge from the MSP’s UART peripheral pins to MSP’s BSL pins. These jumpers are manipulated manually. 




An image of the LunchBox PCB layout is seen below. As can be seen, the PCB can be fabricated as a single sided board with a few jumpers (represented in red color) or one can get the PCB fabricated as a double sided board through a suitable PCB manufacturer.


To enrich the learning experience, we also developed a simple and inexpensive I/O expansion board, the Mini-Voyager (a smaller version of the larger Voyager we have had for some time). As with the LunchBox, the Mini-Voyager is also a single sided PCB that can be fabricated at home or lab. The Mini-Voyager offers the user a 4-digit seven segment display, a set of charlieplexed LEDs, an RGB LED, a capacitive touch input, a potentiometer, an LDR and a thermistor as well as a navigation switch configuration. The picture here shows a Mini-Voyager in the company of a LunchBox, ready to be used.




The photograph below shows LunchBox and Mini-Voyager in action together. More than 50 experiments and small projects can be performed using this combination.



The MSP430 LunchBox and Mini-Voyager duo were recently used in a training program with 180 students of 5th semester of the Instrumentation and control division at NSIT and the experience with them was quite rewarding. See what they soldered and used!



We hope to use this platform as an inexpensive way to teach about the MSP430 family of microcontrollers in future and take this package to high school students as well. If you need further details and/or help with replicating the system at your end, we would be happy to hear from you.
 

Epilogue

How does one justify a BOM cost of 1$ for the LunchBox? The trick lies in ordering free samples from TI: the relevant MSP430 G series microcontroller and the LM1117 linear regulator. The only component you may need to purchase would be the CH340 USB to UART bridge and currently, this sells for 50 cents in volumes. The rest of the components are easily available in your, the electronics enthusiast's components box!