October 25 - Day 5: Connected World
Continuing Education Center 10/25/2013 278 comments In this final class, we will discuss a wide variety of emerging wireless applications and their requirements for network performance. In addition, we will wrap up any loose ends from the previous days’ lectures and answer any remaining questions.
October 23 - Day 3: Why MIMO & OFDM?
Continuing Education Center 10/23/2013 260 comments This class will examine wireless performance issues, such as throughput, range, and capacity. You will learn about the advantages of MIMO and OFDM over legacy wireless technologies.
October 22 - Day 2: Morphing of WiFi & LTE
Continuing Education Center 10/22/2013 284 comments Today's class will discuss how WiFi is transforming from its humble beginnings as a home networking technology to carrier-grade wireless infrastructure operating side by side with 2G/3G and LTE networks.
October 21 - Day 1: WiFi & LTE Standards
Continuing Education Center 10/21/2013 341 comments This opening session will provide an overview and history of today’s key wireless standards: IEEE 802.11 (WiFi) and 3GPP Long Term Evolution (LTE). Attendees of this class will learn about state-of-the-art wireless radio technologies and how they evolved over time. You will become familiar with the wireless standards from IEEE and 3GPP.
October 11 - Day 5: The Future & Its Challenges
Continuing Education Center 10/11/2013 160 comments As the Internet of Things continues to evolve or perhaps undergo revolutionary change, the challenges for implementers at all levels will continue to grow. To wrap up our week, we will peer into the possible future of the IoT and what major challenges engineers and system architects will still face.
October 10 - Day 4: Standards
Continuing Education Center 10/10/2013 231 comments One daunting challenge that is being faced now is the lack of an Internet of Things standard. As IoT can consist of many different applications as well as communications capabilities, there will eventually be a wide range of standards, perhaps under a single framework. We will look at the current standards efforts by various bodies as well as the standards that currently apply to certain applications or implementations.
October 9 - Day 3: Application Drivers & Their Challenges
Continuing Education Center 10/9/2013 235 comments As the Internet of Things has actually been defined and conceptualized for many areas of applications, there are many configurations that are driving the future of IoT. We will look at those drivers and their unique needs, from application level down to the physical layer.
October 8 - Day 2: Topologies & Channels
Continuing Education Center 10/8/2013 244 comments The various configurations of the IoT call for a myriad collection of communications channels, each with their own limitations of available network topologies. In this lesson we will look at networking principles and the mix of topologies that make up each piece of the overall IoT.
September 27 - Day 5: A Review of Your Designs
Continuing Education Center 9/27/2013 282 comments This class will cover designs suggested by students and go through an example review of the design requirements to identify a "best fit" from the products we have seen during the week. It will cover designs that are common to multiple students to provide the most valuable suggestions.
September 26 - Day 4: Application Examples
Continuing Education Center 9/26/2013 257 comments This class will cover several classes of common applications targeted by specific manufacturers to try and identify the strengths of specific product families. It will provide some background used in the next class that covers your designs.
September 25 - Day 3: Tool Support
Continuing Education Center 9/25/2013 321 comments The addition of a programmable processor means that some new tools need to be added to the standard FPGA tools flow. This class will examine these new tools and will show how they are used within the FPGA development environment.
September 24 - Day 2: Architecture Details
Continuing Education Center 9/24/2013 399 comments This class will go into some specific architectural details so we better understand the strengths of the various product families that feature embedded processors. Other features that help "round out" the processor (memory interfaces, peripherals, and programmable fabric) are also covered.
September 13 - Day 5: Other Clean Energy Ideas
Continuing Education Center 9/13/2013 201 comments The mainstream energy industry does acknowledge other types of energy that can be used to create clean and sustainable solutions. We’ll not only review the established norms, fringe ideas, and conjecture, but we’ll also discuss how thinking about energy is changing and some outside-of-the-box ideas.
September 12 - Day 4: Geothermal
Continuing Education Center 9/12/2013 178 comments Geothermal is gaining acceptance and becoming a more popular type of energy system. Some parts of the world are well suited for it, and it comes cheaply and easily. Other places are still viable, but we have to work a bit harder to gain the benefits. We’ll review ground sourced, well sourced, and deep well sourced heat pumps.
September 11 - Day 3: Wind Power Systems
Continuing Education Center 9/11/2013 263 comments Wind is one of the first types of energy systems ever harnessed to supplant animal and people-powered functions like pumping water and grinding grains. Still useful for mechanical action, they are now a focus of electricity generation. We’ll discuss aero-mechanical wind systems and aero-electrical wind systems.
September 10 - Day 2: Photo-Thermal Systems
Continuing Education Center 9/10/2013 203 comments Extracting heat from solar radiation is a useful and beneficial function, especially in colder climates. We’ll examine the types of photo thermal panels, principles of operation, and orientation and tracking.
September 9 - Day 1: Photo-Voltaic
Continuing Education Center 9/9/2013 287 comments Solar is the most popular and widely used energy source, and photo-voltaic panels are the most widely deployed. We’ll review the types of panels available, solar panel technology, and principles of operation.
August 26 - Day 1: Overview & RTOS / Multitasking Basics
Continuing Education Center 8/26/2013 394 comments We will look at the basic needs for a multitasking application and will begin work on a simple example. We will set up our application requirements and look at ways that we can meet these needs through two methods: a simple, software-based state machine and a simple, non-prioritized round-robin.
August 12 - Day 1: The Brush DC Motor – an Overview
Continuing Education Center 8/12/2013 294 comments This discussion describes the brush DC motor, and how it differs from a brushless DC motor, a stepper motor, and other motor types. In this discussion, we’ll break down the brush DC motor, showing exactly how it operates. We will review manufacturer motor specifications, speed/torque curves, motor sizing, and power ratings. We will discuss motor commutation using brushes.
August 2 - Day 5: Assembly vs 'C' Fight Club
Continuing Education Center 8/2/2013 422 comments We will have some fun looking at different MCU functions and you will get to vote for the winner: ‘C’ or Assembly. In some cases both ‘C’ and Assembly could win. How can that be? It all depends on the design goals. Tune in live to cast your vote!
August 1 - Day 4: 'C' for MCUs
Continuing Education Center 8/1/2013 373 comments C can be a very efficient language with which to program MCUs. This class will show how typical compilers map ‘C’ programs into a target-MCU's hardware. A few common “optimization” techniques will be described that illustrate how code can be transformed, sometimes with surprising consequences.
July 31 - Day 3: Assembly Language for MCUs
Continuing Education Center 7/31/2013 376 comments Now that the target MCU hardware and execution processes are understood, a detailed look at Assembly language is needed. This class will dig into the details of Assembly as a software development vehicle. Several simple examples will show the advantages and disadvantages of using Assembly language for programming MCUs.
July 30 - Day 2: An MCU as a Software Target
Continuing Education Center 7/30/2013 436 comments Once the fundamental building blocks of the MCU are understood, the way in which a program is processed by the MCU can be considered. This class will cover CPU-related concepts such as pipelining, caches, instruction efficiency, and floating point implementation so various MCU architectures can be more easily compared.
July 29 - Day 1: An Introduction to MCU Architecture
Continuing Education Center 7/29/2013 499 comments MCUs provide an impressive set of hardware features over which the designer "pours" the software design. This class will provide an understanding of the key hardware elements inside the processing block of the MCU so we can better understand how a software description is converted into MCU operations.
July 19 - Day 5: Signaling, Inter-Task Communications and Debugging
Continuing Education Center 7/19/2013 254 comments In this class, we’ll show some of the mechanisms provided by a kernel to allow ISRs and Tasks to signal and send messages to other tasks. Debugging with a kernel can be challenging and we’ll briefly describe techniques and tools you can use to visualize your application. This session will end with a brief summary of what we’ve covered.
July 18 - Day 4: Time and Resource Management
Continuing Education Center 7/18/2013 251 comments Most kernels require the presence of a periodic time source called a ‘Clock Tick’. We’ll look at what this is used for and whether it’s mandatory. We’ll also look at the mechanisms provided by a kernel that provide mutual exclusion to shared resources.
July 16 - Day 2: Task Management
Continuing Education Center 7/16/2013 368 comments This class will explain one of the most important aspects of a real-time kernel: task (or thread) management. Here you will learn what a task is and how a real-time kernel knows about how you want it to manage your tasks.
July 15 - Day 1: What is a Real-Time Kernel?
Continuing Education Center 7/15/2013 410 comments A real-time kernel is software that allows you to better manage the allocation of resources available in most of today’s 8-, 16-, 32- and 64-bit processor-based embedded systems. This first class will explain the differences between a "Super Loop" and a real-time kernel.
June 28 - Day 5: Monitor & Control the Basic4android Way
Continuing Education Center 6/28/2013 223 comments Today, we will assemble a Basic4android application that will allow our Samsung tablet to control and monitor our remote TCP/IP-based hardware. Just when you thought it was safe to go back into the water, we’ll revisit Bluetooth from a different perspective.
June 27 - Day 4: Network Firmware the Basic4android Way
Continuing Education Center 6/27/2013 250 comments Yesterday, we mapped out our network paths and performed some preflight checks on our selected network hardware. Today, we will throttle up the firmware and hardware to 100% and flight-test the network. We will also take a look at what needs to be done on the Basic4android side to support our mission tomorrow.
June 26 - Day 3: Network Hardware the Basic4android Way
Continuing Education Center 6/26/2013 258 comments Before the week is up, we are going to write some Basic4android code that will take advantage of an Android device’s ability to communicate via the Internet. So, it might be a good idea to round up some appropriate network hardware. Here we’ll examine the networking devices and lay down plans to put them on the Internet.
June 25 - Day 2: Bluetooth the Basic4android Way
Continuing Education Center 6/25/2013 287 comments In this session, we will explore the Bluetooth capabilities of Basic4android. We will write Basic4android application code to administrate the Bluetooth adapter. Our Basic4android application will allow us to enable the Bluetooth adapter, disable the Bluetooth adapter, monitor the Bluetooth adapter’s state, and discover devices in range.
June 24 - Day 1: ‘Hello World’ the Basic4android Way
Continuing Education Center 6/24/2013 443 comments This class will revolve around the installation of the Basic4android environment and the creation of our very first Basic4android application. It won’t take long to see that Basic4android can be used to painlessly realize industrial-grade Android applications. Our first Android application will prove to be a bit more useful than displaying “Hello World.” We are going to dive right in and write some Basic4android code to communicate with an FTDI FT311D USB Android Host IC.
June 14 – Day 5: Programmable Devices With a New Twist
Continuing Education Center 6/14/2013 188 comments A few devices strike out from the familiar programmable logic territory in the search for the "next big programmable thing" (NBPT). This class will cover some of these new devices and concepts. Put on your life vest because this is white-water rapids country!
June 13 – Day 4: Fixed-Function MCUs With Programmable Fabric
Continuing Education Center 6/13/2013 199 comments Adding fixed functions to programmable logic devices is not new, but the most recent crop of devices with fixed-function MCUs is now addressing more targeted applications. As higher-level software functions and even real-time operating systems (RTOSs) can be easily included, the device reach is extending to specific, targeted applications. This class examines the types of features included and the types of applications these devices are now targeting.
June 12 – Day 3: Programmable Analog, Part 2 & Timing
Continuing Education Center 6/12/2013 230 comments Programmable analog functions are continued in this class along with some of the devices used for programmable timing and clock generation. This class will provide a detailed description of several of these types of devices and will show specific examples of their use.
June 11 – Day 2: Programmable Analog, Part 1
Continuing Education Center 6/11/2013 242 comments One of the first classes of application-specific programmable logic devices combined analog circuits with digital programmable logic. These devices address the increasingly complex area of power management and similar applications. This class will provide a detailed description of several of these types of devices and will show specific examples of their use.