During the last 3 week I have been back in the good old times of hardcore programming, this time against a bigger enemy: The Kernel! In the process I found this amazing collection of tools called YADR.
Category Archives: Linux
Setting up the environment for the Xilinx ZC702 (Zynq-7000 SoC) – ISE Design Suite (14.x)
About a month ago my group purchased the Xilinx Zynq-7000 SoC ZC702 Evaluation Kit, featuring the ZC702 SoC board. Far from being trivial, getting the SDK and the framework (ISE Design Suite 14.x + ARM Tools) to work properly in a stable environment is quite challenging. In this post I will go through the different alternatives, describing the pros and cons I considered. I will also propose a mixed set-up combining 2 virtual machines, as well as a step-by-step guideline for it. This configuration is actually the one I am using for programming the ZC702.
SerialSend – A scriptable serial terminal
For a long time now I have been working with Wireless Sensor Networks (WSN). One of my interest in this field has been improving the speed and the reliability of the serial communication among sensor nodes.
One problem I have always had to solve in one way or another when coming up with a new idea was testing it! Unfortunately, even when there are many serial terminals out there (cutecom, minicom, etc.), I found it very difficult to cover all my needs. For this reason, I decided to make my own serial terminal, keeping in mind that it had to be as configurable as possible, as well as easy scriptable. The product, serialSend.
The Kernel – Understanding, Modifying, Building and Installing
Once we have understood how our device boots up, we will then cover the technical aspects of how to flash our device. As in the boot sequence, the 3 main components that need to be transferred -”flashed”- to the board, are: The Bootloader, the Kernel and the OS (Android). We cover them in different posts, continuing here with The Kernel.
The Bootloader – Understanding, Modifying, Building and Installing
Once we have understood how our device boots up, we will then cover the technical aspects of how to flash our device. As in the boot sequence, the 3 main components that need to be transferred -“flashed”- to the board, are: The Bootloader, the Kernel and the OS (Android). We will cover them in different posts, starting here with The Bootloader.
From PowerOn to Android – The Boot Sequence
One of the main issues when dealing when embedded systems -specially as an amateur developer- is understanding what happens since our board/tablet/phone/etc (we will refer to is as a device from now on) is powered on, until the OS takes control of the device and we are able to use it. Understanding this chain of events is crucial in order to develop low-level routines for any given embedded platform, and equally necessary for efficiently design high-level Apps.