Softwares and Practicals


Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.

--- Brain Kernighan



Electronic Simulation & PCB Design Software

Electronic circuit simulation uses mathematical models to replicate the behavior of an actual electronic device or circuit. Simulation software allows for modeling of circuit operation and is an invaluable analysis tool. These kinds of interactions actively engage learners to analyze, synthesize, organize, and evaluate content and result in learners constructing their own knowledge. Simulating a circuit’s behavior before actually building it can greatly improve design efficiency by making faulty designs known as such, and providing insight into the behavior of electronics circuit designs. In particular, for ICs, the tooling (photomasks) is expensive, breadboards are impractical, and probing the behavior of internal signals is extremely difficult. Therefore, almost all IC design relies heavily on simulation. The most well known analog simulator is SPICE. Best known digital simulators are those based on Verilog and VHDL.
1 / 4

Circuit Maker 2000

Below is a video on Circuit Maker 2000 circuit simulator tutorial.


CIRCUIT MAKER

2 / 4

Multisim

NI Multisim is an electronic schematic capture and simulation program which is part of a suite of circuit design programs, along with NI Ultiboard. Multisim is one of the few circuit design programs to employ the original Berkeley SPICE based software simulation.

Multisim

3 / 4

Fritzing

Fritzing is an open-source initiative to develop amateur or hobby CAD software for the design of electronics hardware, to support designers and artists ready to move from experimenting with a prototype to building a more permanent circuit.

Fritzing

4 / 4

Modelsim

ModelSim is a multi-language HDL simulation environment by Mentor Graphics,for simulation of hardware description languages such as VHDL, Verilog and SystemC, and includes a built-in C debugger.ModelSim can be used independently, or in conjunction with Intel Quartus Prime, Xilinx ISE or Xilinx Vivado.Simulation is performed using the graphical user interface (GUI), or automatically using scripts.

Modelsim with QuartusPrime

Click once to pause slideshow

Printed circuit board (PCB) design brings your electronic circuits to life in the physical form. Using layout software, the PCB design process combines component placement and routing to define electrical connectivity on a manufactured circuit board.Various PCB tools are available, Eagle PCB, Proteus, ORCAD, EasyEDA, Altium, KiCad, Sprint Layout, PCB Wizard, Diptrace,Express PCB,Design Spark, etc. Recently many software provides 3D view of the finished design










MIT App inventor


Open source Android app maker web tool

MIT App Inventor is a web application integrated development environment originally provided by Google, and now maintained by the Massachusetts Institute of Technology (MIT). It allows newcomers to computer programming to create application software(apps) for two operating systems (OS): Android (operating system)|Android, and iOS, which, as of 8 July 2019, is in final beta testing. It uses a graphical user interface (GUI) very similar to the programming languages Scratch (programming language) and the StarLogo, which allows users to drag and drop visual objects to create an application that can run on mobile devices.


LINK TO MIT APP INVENTOR

Video tutorials



Cloud & Dashboard for Embedded Systems and IoT

In the simplest terms, cloud computing means storing and accessing data and programs over the Internet instead of your computer's hard drive. The cloud is just a metaphor for the Internet. It goes back to the days of flowcharts and presentations that would represent the gigantic server-farm infrastructure of the Internet as nothing but a puffy, white cumulus cloud, accepting connections and doling out information as it floats.
There are various online clouds available.Most famous cloud platforms for IoT and Embedded Systems are Thingspeak,Blynk & Ubidots. Student versions are availble and can be used for free. Also they provide Online Dashboard for observing cloud data and controlling actuators wirelessly over internet. NodeMCU, ESP32, GPRS Modules, Pi, etc are extensively used with such cloud platforms.

Aamazon Web Services, Google Cloud Platform, Microsoft Azure, Adafruit MQTT are also used extensively for online datalogging systems.




HTML,CSS,Javascript

HTML provides the basic structure of sites, which is enhanced and modified by other technologies like CSS and JavaScript.HTML is not a programming language.
CSS is used to control presentation, formatting, and layout. It is not a Programming language either.
JavaScript,a programming language, is used to control the behavior of different elements.
Do you realize that the only functionality of a web application that the user directly interacts with is through the web page? Implement it poorly and, to the user, the server-side becomes irrelevant! Today’s user expects a lot out of the web page: it has to load fast, expose the desired service, and be comfortable to view on all devices: from a desktop computers to tablets and mobile phones.




Here you can watch videos on sample HTML,CSS and Javascript tutorials

Do check out W3 schools for web designing tutorials.

Simple Web Projects:Click the below button to check out Github Repo:



Text Editors

A text editor is a type of computer program that edits plain text like Notepad. Text editors are provided with operating systems and software development packages, and can be used to change files such as configuration files, documentation files and programming language source code. Various well known editors are Sublime Text, Atom, Visual Studio, Editors from JetBrains,Jupyter,Notepad++,Eclipse,MATLAB,etc.

Also there exist various editors which are dedicatedly used for Embedded Programmings. Some of them are Arduino, Atmel Studio, MPLAB, Keil, Energia, Code Composer Studio,etc.

  1. Editors for C,Java,Python,HTML,CSS,JS,etc


  2. Editors for Embedded Programmings

Machine Learning and Data Visualisation

Machine learning is an application of artificial intelligence (AI) that provides systems the ability to automatically learn and improve from experience without being explicitly programmed. Machine learning focuses on the development of computer programs that can access data and use it learn for themselves

Python,MATLAB and R are widely used for such statistical machine learning based problems. Jupyter Notebook is a very popular platform for implementing python based machine learning algorithms

Data visualisation is widely implemented using python and MATLAB. Matplotlib is a very interesting library for data visualisation using python

Click on this link for getting into our Github repo for simple ML examples and Data visualisation.


Also you may like to watch some few tutorials based on these relevant topics.









Note:Designed by Team Watchdogs. Best viewed at Chrome and Mozilla. Thank You