diff --git a/docs/Electronics Design.md b/docs/Electronics Design.md
index c04e3a2a2bc8f8989b80fcd019352e7d32b4c944..4d43124b73b6b14000b5d2d2c8f99191755b9f3e 100644
--- a/docs/Electronics Design.md	
+++ b/docs/Electronics Design.md	
@@ -6,16 +6,17 @@ Contents
 ---
 1. Using test equipment
 2. Redraw a hello board  
-3.
+3. References
+4. Design Files
 
-
-#### Testing
+1. Using test equipment
+---
 Using the test equipment in the lab to observe the operation of a microcontroller circuit board.  
 
 I used my hello board for this task. This tutorial on [How to use a multimeter](https://learn.sparkfun.com/tutorials/how-to-use-a-multimeter/all) is a good resource.  
 A multimeter is a handy piece of equipment used for measuring voltage, current, resistance and continuity.  
 
-1. Operating voltage, resistance and continuity on the board with *multimeter*   
+#### Operating voltage, resistance and continuity on the board with *multimeter*   
 
 To measure Voltage:
 Plug the black and the red probe into corresponding ports (depending on the model of multimeter).  
@@ -40,23 +41,20 @@ This is the most useful to check connections  and solder joints between microcon
 Set the multimeter to 'Continuity' - a diode symbol with propagation waves around it.  
 Touch the two probes on the two points to be checked and beep will give the feedback.
 
-2. Use *oscilloscope* to check noise of operating voltage  
+#### Use *oscilloscope* to check noise of operating voltage  
 ![](./images/ed/machine.jpg)   
 
 This tutorial on [How to use a oscilloscope](https://learn.sparkfun.com/tutorials/how-to-use-an-oscilloscope/all) is helpful.  
 ![](./images/ed/osc.jpg)  
 
-3. Interpret a data signal using a *logic analyser*  
+#### Interpret a data signal using a *logic analyser*  
 [Introduction](https://www.baldengineer.com/logic-analyzer-tutorial-introduction.html)   
 
-
-
-
 If this equipment is not available, another way to test microcontroller circuit boards is by making a simulation in web-apps like [TinkerCAD](https://www.tinkercad.com/) or the open-source Arduino simulator, [Wokwi](https://wokwi.com/).  
 
 
-#### Designing
-
+2. Redraw a hello board  
+---
 I chose a hello.echo board based on ATtiny44 as it has the most available documentation.
 
 Here is what the actual board looks like  
@@ -165,8 +163,7 @@ But this time I used [Mods](http://mods.cba.mit.edu/) instead of Fabmodules. Her
 
 ![](./images/ed/ss/mods.gif)  
 
-#### At the lab
-
+#### Milling and Stuffing
 I started to mill the board, solder the components by following the workflow described in [Electronics Production week](./Electronics Production.md).  
 
 On the first attempt, the I found that the edges of outline were too close to the traces, and they were fragile.  
@@ -183,13 +180,13 @@ And after soldering all components, here is how the final board looks:
 
 Programming and testing of the board is done during the [Embedded Programming](./Embedded Programming.md) week.  
 
-#### References
-
+3. References
+---
 [Sparkfun KiCad beginners guide](https://learn.sparkfun.com/tutorials/beginners-guide-to-kicad/all)  
 [Reference Documentation](http://archive.fabacademy.org/2016/fablabsingapore/students/98/exercise06.html)  
 
-#### Design Files
-
+4. Design Files
+---
 [KiCad Schematic](./images/ed/attiny44.sch.zip)  
 [KiCad pcbnew](./images/ed/attiny44.kicad_pcb.zip)  
 [SVG](./images/ed/attiny44-brd.svg)  
diff --git a/docs/Embedded Programming.md b/docs/Embedded Programming.md
index e4694180183d57006ae788d308bd694ada1f6f5c..caaa906d00d4499c318b4c6e78b2e40bcb0be6f7 100644
--- a/docs/Embedded Programming.md	
+++ b/docs/Embedded Programming.md	
@@ -1,5 +1,5 @@
 
- #Embedded Programming
+#Embedded Programming
 ---
 This week is about learning how to program a microcontroller.
 
@@ -7,8 +7,8 @@ This week is about learning how to program a microcontroller.
 1. Understanding a Datasheet  
 2. Comparing the performance and development workflows for different microcontroller families
 3. Programming with FabISP + Arduino IDE  
-4. Programming with ftdi  
-5. References
+4. Programming with avr-gcc   
+5. Programming with Atmel Studio    
 6. Code files
 ---
 
@@ -44,8 +44,6 @@ The first three chapters - pin configurations, overview and general information,
 
 2. Comparing the performance and development workflows for different microcontroller families
 ---
-
-
 Next task is to program the board you have made to do something, with as many different programming languages and programming environments as possible.
 
 3. Programming with FabISP + Arduino IDE  
@@ -86,8 +84,34 @@ I wrote a simple program to operate the led using the pushbutton.
 
 ![led-button](./images/empro/led-button.gif)  
 
+Next to read serial communication, I modified the code, to digitalRead and show indication of the state of the LED - ON or OFF.  
+For this after uploading the code using the FabISP, it needs to be removed and connected using an FTDI. This allows the serial communication to return to the Arduino IDE monitor. The FTDI also provides the power. So it basically connects - VCC, GND, TX, RX of the hello board to the FTDI board.  
+TX (hello) and RX(FTDI board) are connected and RX (hello board) to TX (FTDI board) are connected.  
+Basically when one transmits, the other receives.  
+
+FTDI is the protocol for communication. It can be connected in various ways.
+1. Through a commercial board like this:  
+![](./images/input/ftdi-com-board.jpg)  
+
+2. Through a cable like this:  
+![](./images/input/ftdi-cable.jpg)
+
+3. Through a DIY board like this:  
+![](./images/input/ftdi-diy-board.jpg)
+
+I use a DIY board I borrowed from Steven.  
+You can use this schematic to make a ftdi board.  
+![](./images/input/ftdi-schematic.jpg)  
+
+I used a t45 based hello board as well.  
+So after uploading the blink code + serial, connect the ftdi board to hello board, and on pening the serial monitor, it should show the status of the LED.  
+
+![](./images/input/screenshot.jpg)  
+
 4. Programming with avr-gcc
 ---
+http://archive.fabacademy.org/archives/2016/doc/makefile.html
+
 
 5. Programming with Atmel Studio
 ---
diff --git a/docs/images/input/ftdi-cable.jpg b/docs/images/input/ftdi-cable.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..ced47df8251e0628921cbd355a2c10a5dbced675
Binary files /dev/null and b/docs/images/input/ftdi-cable.jpg differ
diff --git a/docs/images/input/ftdi-com-board.jpg b/docs/images/input/ftdi-com-board.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..d2f47793fac6174232bf7f363c106aee0331bfcf
Binary files /dev/null and b/docs/images/input/ftdi-com-board.jpg differ
diff --git a/docs/images/input/ftdi-diy-board.jpg b/docs/images/input/ftdi-diy-board.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..4d2f0a2101660d9fd00ce27691776b2f799dd0a5
Binary files /dev/null and b/docs/images/input/ftdi-diy-board.jpg differ
diff --git a/docs/images/input/ftdi-schematic.jpeg b/docs/images/input/ftdi-schematic.jpeg
new file mode 100644
index 0000000000000000000000000000000000000000..b7bcf684831b75bfec5e271e45a2593c048c1de4
Binary files /dev/null and b/docs/images/input/ftdi-schematic.jpeg differ
diff --git a/docs/images/input/screenshot.jpg b/docs/images/input/screenshot.jpg
new file mode 100644
index 0000000000000000000000000000000000000000..062616733b9b2aac67d485ba497cc8e7c26a2b84
Binary files /dev/null and b/docs/images/input/screenshot.jpg differ