Digital Lab Projects Design

The goal for this project is to integrate Amazon FreeRTOS into the ECE 443 lab and provide working code and documentation demonstrating the updated features. Discussed deliverables were TCP/IP, Ethernet/WiFi, and Bluetooth demos. Additions will be considered based on progression.

=Problem Definition=

Background
The ECE 443 lab uses the FreeRTOS software to teach concepts surrounding real-time computing, distributed processing, and control networks. Currently the lab uses version 8 of FreeRTOS. The most up to date release of FreeRTOS, which is now managed by Amazon, is version 10. Since version 8, new features have been added and it is possible dependencies have changed. Updating to Amazon FreeRTOS will require determining what changes are needed and acquiring the appropriate software and/or hardware.

Hardware
=Design Considerations=

Constraints
The primary concerns for this project are budget and time.This project may require updating to or investing in new hardware. New products and/or components should be carefully considered before purchase, especially from the standpoint of outfitting an entire lab space. Software changes will be subjected to the same considerations.

Public Health, Safety, and Welfare
Currently the project would be unsafe for any use outside of an educational setting. With further development however, and extensive testing the project could perhaps be pushed in the direction of medical applications that rely on networking.

Global Factors
The project pulls from a variety of resources available online and is web accessible suggesting a possible global impact. Many systems rely on network communications mechanisms as well, so in theory this project could be pushed in that direction.

Cultural Factors
The project is currently written in English, offering limited opportunity for cultural impact.

Social Factors
The project intends to positively impact public education

Environmental Factors
The project avoids waste by reusing available hardware.

Economic Factors
The project reduces development costs by providing a stepping stone for further research.

=Project Learning= 1.The first phase of this project involved becoming familiar with the different tools recommended for use by Amazon Web Services and assessing their relevance and effectiveness in achieving the specified goals. 2.The second stage required developing a sufficiently strong understanding of the architectures of the FreeRTOS kernel and the development board (the Digilent Cerebot 32MX7cK) to create the specified reference design projects.

=Project Testing=

MPLAB X IDE
Debugging software allowed for testing of the project’s execution.

Wireshark
Used to monitor network activity and look for attempted and successful network communication.

Putty
Open-source terminal emulator used to establish a TCP socket connection with the Cerebot.

=Project Design=

Existing Reference Design Projects
Built off of existing reference design projects offered on the Distributed Processing and Control Networks course website.

FreeRTOS Website
Tutorials used to draw basic implementations of TCP and UDP communication.

Existing HTTP Server Project
Incorporated and modified an existing HTTP project for our HTTP server example.

GitHub Projects
Used code from projects on GitHub using the FreeRTOS kernel.

=Deliverables= 1.The team successfully determined the hardware and software components most applicable to the needs and scopes of the project.

2.Provided code samples utilizing the FreeRTOS+UDP and FreeRTOS+TCP stacks, as well as an HTTP server example, giving a platform from which projects for the Distributed Processing and Control Networks course can be developed in the future.



=Team Information=

=Additional Documentation= Team Contract

Team Contract

Meeting Minutes

Meeting Minutes Folder

Design Review

Design Review