CAM, FreeBSD, Hardware, mmccam, SDIO, Software

Detailed SDIO protocol Implementation

Reference: Wikipedia, https://www.sdcard.org/developers/overview/sdio/sdio_spec/Simplified_SDIO_Card_Spec.pdf  SDIO cards are intended to provide high-speed data Input/Output on our regular sd card slot. SDIO cards are compatible with any sd card slot and will not cause any physical damage to the host if it’s not compatible with SDIO. When SDIO is plugged in an SDIO compatible host, in its early stage it is in low power mode and consumes very little current. The host identifies the SDIO card, it’s power requirement, it’s I/O capabilities, etc. If the host finds that the power requirement is manageable and there is a driver for the I/O functionality card…

Continue Reading

Hardware, RTEMS, RTOS, Software

Building and testing RTEMS-libbsd for BeagleBone Black BSP

———————————————————————— Building and testing libbsd for BeagleBone Black BSP ———————————————————————— == Installation overview == === Initial setup === – Jump into your workspace and make a directory named sandbox This folder will contain all our project files – cd sandbox/ – export sandbox=$PWD – git clone git://git.rtems.org/rtems-source-builder.git – git clone git://git.rtems.org/rtems.git – git clone git://git.rtems.org/rtems-libbsd.git === Building desired toolset for ARM === – cd rtems-source-builder/rtems/ – ../source-builder/sb-check – ../source-builder/sb-set-builder –prefix=$sandbox/5 5/rtems-arm – cd $sandbox – export PATH=$PWD/5/bin:$PATH After having required toolchain, we can now proceed towards building our Board Support Package(BSP) === Building Beagleboneblack BSP === – cd $sandbox –…

Continue Reading

Software, Webpage

Semi dynamic webpage template

    Semi dynamic webpage template with Google sheets integration INDEX Introduction Purpose Behind Proposed Work Experimental Results Conclusion References     Introduction   Our project aims at providing a semi-dynamic template of a fully fledged highly responsive webpage for small scale organizational usage. With improved security considerations and better organization this project integrates google sheets services as a database for a website. Google sheets being easy to deploy and use makes content updation easier and a lot more user friendly. Several other functionalities like Google scripting engine along with google forms can be very easily integrated with google sheets…

Continue Reading

Hardware, Software

Introduction to RF communication

This post introduces the basics of RF communication along with various band specifications used for wireless communication. It also covers comparison of  different bands on basis of their data rates and other parameters. Content Introduction Available frequency Bands Types of RF communication Different wireless protocols Introduction Now a days, we are surrounded by a large number of wireless devices working on different protocols, on different frequency bands thus utilizing almost whole of the “Radio-wave” frequency spectrum. Adhering to it’s high density, complete frequency spectrum can be divided into different groups and each group can be further divided into different channels.…

Continue Reading

ARM, Software

DECODING ARM

This introductory post aims at discussing a bit about business model of ARM ltd.(that’s right the company behind ARM architectures!!), different ARM architectures for different utilities and most importantly a brief about ARM cortex M , ARM cortex R and ARM cortex A. So, here’s the content: Business model of ARM ltd. ARM Terminology Different ARM Architectures and Families Third party ARM variants ARM cortex M ARM cortex R ARM cortex A ARM Ltd. ARM ltd. was founded late in 1990’s as a joint venture between Acorn computers , Apple computers(Apple Inc.) and VLSI technology Inc. ARM joint venture With…

Continue Reading

ARM, Software

ARM Instruction Set(Part 2): Types,Operands and Addressing Modes

Types,Operands and  Addressing Modes After a brief introduction of ISA, here in this part of the series we’ll look at: Content:   Types of Operands  Instruction set design Types of Instructions Types of Addressing modes Types of Operands: Operands basically refer to the type of parameter which is passed on to, along with an instruction. It might be a : Register/Memory address Constant/Immediate Consider the following examples: ADD r1,r2,r3;      will add r2 and r3 and store it’s value in r1 Here, Operands is r1,r2 and r3. ALL of which are registers. ARM has in general 16 general purpose registers…

Continue Reading

ARM, Software

DIY: Generating Ramp/Sawtooth from PWM

DIY: Generating Ramp/Sawtooth from a PWM signal Lack of any good tutorial to produce a ramp/sawtooth wave from a PWM signal urged me to make one! This post was a part of one of my recent ongoing projects, i.e., Redesigning the Semiconductor CURVE TRACER, here at CEDT, NSIT. I was to produce a sawtooth wave from a PWM signal using Arduino nano, and here are my observations: TASK:  To produce a sawtooth wave from the PWM signal using Arduino Nano. PROCEDURE: Producing a ramp/sawtooth wave out of a PWM signal merely involves passing a PWM signal of varying duty cycle through…

Continue Reading

ARM, Software

ARM Instruction Set(Part 1): Initialization

INTRODUCTION TO INSTRUCTION SETS I recently brought the ARM edition of the book Computer Organization and Design by Patterson and Hennessy from library. Half way through the book, I thought of sharing the content of this book in a more elaborated manner by making a series of tutorials on Arm Instruction Set.So, here’s part one of the series. Content Basic definitions Types of Instruction sets Architecture(ISA) General purpose register architecture Stack architecture Accumulator architecture Basic Definitions   Benchmarks:  A program selected for use in comparing computer performance.SPEC(System Performance Evaluation Cooperative) is such an effort supported by a number of vendors…

Continue Reading

Hardware, Software

Introduction to FRDM KL46Z and KDS

Outdated post alert: Sorry, this post is no longer being maintained. If you are loooking for some sample code for FRDM KL46Z visit: https://github.com/madaari/FRDM-KL46Z-developnment-board Year ago, i wrote a tutorial on getting started with freescale’s FRDM KL46Z development board. since then it was just a draft, today, i thought of updating and releasing it. So, here it is: But first of all, a very brief introduction of the development board and OpenSDA FRDM KL46Z Features MKL46Z256VLL4MCU – 48 MHz, 256 KB flash, 32 KB SRAM, segment LCD, USB OTG (FS) , 100 LQFP Capacitive touch slider, MMA8451Q accelerometer, MAG3110 magnetometer…

Continue Reading