This shows you the differences between two versions of the page.
milestone_6 [2022/03/18 13:31] scott [Bluetooth Modem] |
milestone_6 [2023/04/10 10:57] (current) scott [Custom Sounds] |
||
---|---|---|---|
Line 1: | Line 1: | ||
====== Milestone 6: Creative Project ====== | ====== Milestone 6: Creative Project ====== | ||
- | Now that you have completely implemented the 2-player game, do something fun and interesting with your system. Here is how it works. | + | Now that you have completely implemented the 2-team game, do something fun and interesting with your system. Here is how it works. |
- | - Submit a short proposal (2-3 sentences is plenty) via Learning Suite. The proposal will be reviewed to make sure it is not too difficult or too easy. Once approved, it will be listed along with your group on Learning Suite. | + | - Submit a short proposal (2-3 sentences is plenty) via Learning Suite. The proposal will be reviewed to make sure it is not too difficult or too easy. Once approved, a score for this assignment will be entered into Learning Suite for each member of your group. |
- | - Work on the proposed features as a group. | + | - Submit via Learning Suite (M6 Report) your approved proposal text (2-3 sentences) and a link to a short video (2-3 minutes) demonstrating your proposed features. |
- | - Submit a short report via Learning Suite that includes your approved proposal (2-3 sentences) and a link to a short YouTube video (2-3 minutes) demonstrating your proposed features. | + | |
+ | Please use the Submission Notes to paste your proposal text and video link when submitting an assignment in Learning Suite. **Do not submit a separate document (.pdf, .docx, .txt).** Make sure your video link is publicly viewable. | ||
**NOTE: Your group is on the hook to achieve what you proposed, so start early! I can't help you with bugs/problems if you leave this until the end of the semester. If you can't get your project to work at all, it will be very difficult to offer much in the way of partial credit.** | **NOTE: Your group is on the hook to achieve what you proposed, so start early! I can't help you with bugs/problems if you leave this until the end of the semester. If you can't get your project to work at all, it will be very difficult to offer much in the way of partial credit.** | ||
Line 25: | Line 26: | ||
In this appendix you can find additional information that can be used for creative projects. | In this appendix you can find additional information that can be used for creative projects. | ||
+ | |||
+ | ==== Custom Sounds ==== | ||
+ | |||
+ | If you have a custom sound in the form of a WAV file that you want to use in your project, it will need to be converted to an array of values in a C file. Look in the lasertag/sound directory for existing examples. | ||
+ | |||
+ | * One option is to use [[https://colinjs.com/software.htm#t_WAVToCode|WAVToCode]] to convert your WAV file to C code. It is a Windows application, so you will need to find a Windows machine to run it. | ||
+ | * Another option is to compile the wav2c.c source code (in the sound directory) and run it from the command line. This program expects a single-channel (monophonic) PCM format WAV file as input and will produce C code as output. If your WAV file is stereo, you will need to convert it to monophonic before using wav2c. You can use [[https://www.audacityteam.org/|Audacity]] to edit and prepare your WAV files before converting them to C code. | ||
+ | |||
+ | You are free to modify sound.c (in the sound directory) to integrate your custom sound. | ||
+ | |||
+ | ---- | ||
==== Bluetooth Modem ==== | ==== Bluetooth Modem ==== | ||
- | The bluetooth modem is connected to the ZYNQ FPGA via a fixed-rate 9600 BAUD modem. Communication with the modem is simple enough: characters pushed out the Bluetooth UART are transmitted via the Bluetooth modem and vice versa for receive. I have included documentation for the UART below. There is a bluetooth directory in the lasertag directory that contains source code that shows how to communicate with the bluetooth modem. The provided example program (main.c) is simple. It receives characters from the bluetooth modem, converts them to upper case and then echos the converted characters to the phone. You use the provided Adafruit Bluefruit Connect App, which is available for both IOS and Android. I have provided links to the documentation below. There is additional information in the README.txt file contained in the bluetooth subdirectory contained in the lasertag directory. You can build and test the provided code by uncommenting one line in the lasertag CMakeLists.txt file. | + | The Bluetooth modem is connected to the ZYNQ FPGA via a fixed-rate 9600 BAUD modem. Communication with the modem is simple enough: characters pushed out the Bluetooth UART are transmitted via the Bluetooth modem and vice versa for receive. I have included documentation for the UART below. There is a bluetooth directory in the lasertag directory that contains source code that shows how to communicate with the bluetooth modem. The provided example program (main.c) is simple. It receives characters from the bluetooth modem, converts them to upper case and then echos the converted characters to the phone. You use the provided Adafruit Bluefruit Connect App, which is available for both IOS and Android. Links to the documentation are provided below. There is additional information in the README.txt file contained in the bluetooth subdirectory contained in the lasertag directory. You can build and test the provided code by uncommenting one line in the lasertag CMakeLists.txt file. |
* [[https://www.adafruit.com/products/2479|Adafruit Bluetooth Modem Info]] | * [[https://www.adafruit.com/products/2479|Adafruit Bluetooth Modem Info]] | ||
* {{::pg142-axi-uartlite.pdf|Xilinx UART Lite Documentation}} | * {{::pg142-axi-uartlite.pdf|Xilinx UART Lite Documentation}} |