Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
weatherbox:firmware:firmware_user_manual [2016/05/05 23:19] rwalser [Transmit Module Test] |
weatherbox:firmware:firmware_user_manual [2021/09/19 21:59] (current) |
||
---|---|---|---|
Line 367: | Line 367: | ||
* With the bootloader burnt | * With the bootloader burnt | ||
- Plug the battery and the Xbee(Router) into the Apple board | - Plug the battery and the Xbee(Router) into the Apple board | ||
- | - Attach the Xbee(Coordinator) to the Xbee Shield and plug that into your computer using the USB cable | + | - Attach the Xbee(Coordinator) to the Xbee breakout board and plug that into your computer using the USB cable |
- Open XCTU on your computer | - Open XCTU on your computer | ||
* Click "Add Device" and select the corresponding USB port that your XBee is plugged into | * Click "Add Device" and select the corresponding USB port that your XBee is plugged into | ||
* Switch to the "Console" and "Connect" the Xbee to the network | * Switch to the "Console" and "Connect" the Xbee to the network | ||
* Observe the Console log for packets to be received | * Observe the Console log for packets to be received | ||
+ | - Connect the Apple board to the computer using the USB | ||
+ | - In Arduino IDE, under Tools check: | ||
+ | * Board is set to Arduino UNO | ||
+ | * Port is set to the specific USB port that the programmer is plugged into | ||
+ | * Programmer is set to AVRISP mkII | ||
+ | - In config.h verify that only macro "APPLE" is defined | ||
+ | - Run a test compile to ensure libraries are found and no compile-time errors occur | ||
+ | - Upload program to board | ||
__Expected Results__: | __Expected Results__: | ||
- | * Console log should display "Received Packet" in red font every ~5 seconds | + | * Console log should display "Received Packet" in red font ever ~5 seconds |
+ | * UART should contain the string "test yes" | ||
+ | * BINARY should contain: | ||
+ | * Some API packet coding identification | ||
+ | * Schema number: 01 | ||
+ | * Hex code for the Microcontroller address | ||
+ | * Hex code for up time of the program | ||
+ | * Hex code for overflow (if occurred) otherwise: 00 | ||
+ | * Hex code for n count: 0A | ||
+ | * Hex code for Battery mV: 01 | ||
+ | * Hex code for Panel mV: 02 | ||
+ | * Hex code for Pressure: 04 | ||
+ | * Hex code for Temperature: 05 | ||
+ | * Hex code for Humidity: 06 | ||
+ | * Hex code for Solar Irradiance: 03 | ||
===Cranberry=== | ===Cranberry=== | ||
__Necessary Components__: | __Necessary Components__: | ||
Line 394: | Line 416: | ||
- Plug the battery and the Xbee (Router) into the Cranberry board | - Plug the battery and the Xbee (Router) into the Cranberry board | ||
- Turn on the Cranberry board by flipping the switch to "ON" | - Turn on the Cranberry board by flipping the switch to "ON" | ||
- | - Attach the XBee (Coordinator) to the XBee Shield and plug that into your computer using the USB cable | + | - Attach the XBee (Coordinator) to the XBee breakout board and plug that into your computer using the USB cable |
- Open XCTU on your computer | - Open XCTU on your computer | ||
* Click "Add Device" and select the corresponding USB port that your XBee is plugged into | * Click "Add Device" and select the corresponding USB port that your XBee is plugged into | ||
* Switch to the "Console" and "Connect" the XBee to the network | * Switch to the "Console" and "Connect" the XBee to the network | ||
* Observe the Console log for packets to be received | * Observe the Console log for packets to be received | ||
+ | - Connect the FTDI programmer to the computer and board | ||
+ | - In Arduino IDE, under Tools check: | ||
+ | * Board is set to Arduino 3.3V 8MHz | ||
+ | * Port is set to the specific USB port that the programmer plugged into | ||
+ | * Programmer is set to AVRISP mkII | ||
+ | - In config.h verify that only macro "CRANBERRY" is defined | ||
+ | - Run a test compile to ensure libraries are found and no compile time errors occur | ||
+ | - Upload program to board | ||
__Expected Results__: | __Expected Results__: | ||
* Console log should display "Received Packet" in red font every ~5 seconds | * Console log should display "Received Packet" in red font every ~5 seconds | ||
+ | * UART should contain the string "test yes" | ||
+ | * BINARY should contain: | ||
+ | * Some API packet coding identification | ||
+ | * Schema number: 01 | ||
+ | * Hex code for the Microcontroller address | ||
+ | * Hex code for up time of the program | ||
+ | * Hex code for overflow (if occurred) otherwise: 00 | ||
+ | * Hex code for n count: 0A | ||
+ | * Hex code for Battery mV: 01 | ||
+ | * Hex code for Panel mV: 02 | ||
+ | * Hex code for Pressure: 04 | ||
+ | * Hex code for Temperature: 05 | ||
+ | * Hex code for Humidity: 06 | ||
+ | * Hex code for Solar Irradiance: 03 | ||
===Dragon Fruit=== | ===Dragon Fruit=== | ||
__Necessary Components__: | __Necessary Components__: | ||
Line 421: | Line 465: | ||
- Plug the battery and the XBee (Router) into the Dragon Fruit board | - Plug the battery and the XBee (Router) into the Dragon Fruit board | ||
- Turn on the Dragon Fruit board by flipping the switch to "ON" (Switch should be flipped towards the battery) | - Turn on the Dragon Fruit board by flipping the switch to "ON" (Switch should be flipped towards the battery) | ||
- | - Attach the XBee (Coordinator) to the XBee Shield and plug that into your computer using the USB cable | + | - Attach the XBee (Coordinator) to the XBee breakout board and plug that into your computer using the USB cable |
- Open XCTU on your computer | - Open XCTU on your computer | ||
* Click "Add Device" and select the corresponding USB port that your XBee is plugged into | * Click "Add Device" and select the corresponding USB port that your XBee is plugged into | ||
* Switch to the "Console" and "Connect" the XBee to the network | * Switch to the "Console" and "Connect" the XBee to the network | ||
* Observe the Console log for packets to be received | * Observe the Console log for packets to be received | ||
+ | - Connect the FTDI programmer to the computer and board | ||
+ | - In Arduino IDE, under Tools check: | ||
+ | * Board is set to Arduino UNO | ||
+ | * Port is set to the USB port with the programmer plugged into it | ||
+ | * Programmer is set to AVRISP mkII | ||
+ | - In config.h verify that only macro "DRAGONFRUIT" is defined | ||
+ | - Run a test compile to ensure libraries are found and no compile time errors occur | ||
+ | - Upload program to board | ||
__Expected Results__: | __Expected Results__: | ||
* Console log window should display "Received Packet" in red font every ~5 seconds | * Console log window should display "Received Packet" in red font every ~5 seconds | ||
+ | * UART should contain the string "test yes" | ||
+ | * BINARY should contain: | ||
+ | * Some API packet coding identification | ||
+ | * Schema number: 01 | ||
+ | * Hex code for the Microcontroller address | ||
+ | * Hex code for up time of the program | ||
+ | * Hex code for overflow (if occurred) otherwise: 00 | ||
+ | * Hex code for n count: 0A | ||
+ | * Hex code for Battery mV: 01 | ||
+ | * Hex code for Panel mV: 02 | ||
+ | * Hex code for Pressure: 04 | ||
+ | * Hex code for Temperature: 05 | ||
+ | * Hex code for Humidity: 06 | ||
+ | * Hex code for Solar Irradiance: 03 | ||
---- | ---- | ||
Line 439: | Line 505: | ||
* XCTU software | * XCTU software | ||
* XBee breakout board and USB | * XBee breakout board and USB | ||
- | * Two properly configured XBees *See “Configuring XBees” under | + | * Two properly configured XBees *See “Configuring XBees” under "Resources" |
* Charged Battery | * Charged Battery | ||
* Floodlight (for Solar Irradiance & Temperature) | * Floodlight (for Solar Irradiance & Temperature) | ||
__Test Environment__: | __Test Environment__: | ||
+ | - Plug the battery and the Xbee(Router) into the Apple board | ||
+ | - Attach the Xbee(Coordinator) to the Xbee breakout board and plug that into your computer using the USB cable | ||
+ | - Open XCTU on your computer | ||
+ | * Click "Add Device" and select the corresponding USB port that your XBee is plugged into | ||
+ | * Switch to the "Console" and "Connect" the Xbee to the network | ||
+ | * Observe the Console log for packets to be received | ||
+ | - Connect the Apple board to the computer using the USB | ||
+ | - In Arduino IDE, under Tools check: | ||
+ | * Board is set to Arduino UNO | ||
+ | * Port is set to the specific USB port that the programmer is plugged into | ||
+ | * Programmer is set to AVRISP mkII | ||
+ | - In config.h verify that only macro "APPLE" is defined | ||
+ | - Run a test compile to ensure libraries are found and no compile-time errors occur | ||
+ | - Upload program to board | ||
__Expected Results__: | __Expected Results__: | ||
+ | * Using XCTU: | ||
+ | - In the Console log, verify that a packet is being received | ||
+ | - Examine the data within the received packet | ||
+ | * Data will be in Hexadecimal | ||
+ | * Requires conversion | ||
+ | - Data (within the REIS room) should be similar to the expected results of the Sensor Module Test | ||
+ | * With decryption script (XBee (Router) is connected to a computer with the decryption script running): | ||
+ | - Verify that a packet is being recieved | ||
+ | - Examine the converted data | ||
+ | - Data (within the REIS room) should be similar to the expected results of the Sensor Module Test | ||
===Cranberry=== | ===Cranberry=== | ||
__Necessary Components__: | __Necessary Components__: | ||
Line 453: | Line 541: | ||
* XCTU software | * XCTU software | ||
* XBee breakout board and USB | * XBee breakout board and USB | ||
- | * Two properly configured XBees *See “Configuring XBees” under | + | * Two properly configured XBees *See “Configuring XBees” under "Resources" |
* Charged Battery | * Charged Battery | ||
* Floodlight (for Solar Irradiance & Temperature) | * Floodlight (for Solar Irradiance & Temperature) | ||
__Test Environment__: | __Test Environment__: | ||
+ | - Plug the battery and the Xbee (Router) into the Cranberry board | ||
+ | - Turn on the Cranberry board by flipping the switch to "ON" | ||
+ | - Attach the XBee (Coordinator) to the XBee breakout board and plug that into your computer using the USB cable | ||
+ | - Open XCTU on your computer | ||
+ | * Click "Add Device" and select the corresponding USB port that your XBee is plugged into | ||
+ | * Switch to the "Console" and "Connect" the XBee to the network | ||
+ | * Observe the Console log for packets to be received | ||
+ | - Connect the FTDI programmer to the computer and board | ||
+ | - In Arduino IDE, under Tools check: | ||
+ | * Board is set to Arduino 3.3V 8MHz | ||
+ | * Port is set to the specific USB port that the programmer plugged into | ||
+ | * Programmer is set to AVRISP mkII | ||
+ | - In config.h verify that only macro "CRANBERRY" is defined | ||
+ | - Run a test compile to ensure libraries are found and no compile time errors occur | ||
+ | - Upload program to board | ||
__Expected Results__: | __Expected Results__: | ||
+ | * Using XCTU: | ||
+ | - In the Console log, verify that a packet is being received | ||
+ | - Examine the data within the received packet | ||
+ | * Data will be in Hexadecimal | ||
+ | * Requires conversion | ||
+ | - Data (within the REIS room) should be similar to the expected results of the Sensor Module Test | ||
+ | * With decryption script (XBee (Router) is connected to a computer with the decryption script running): | ||
+ | - Verify that a packet is being recieved | ||
+ | - Examine the converted data | ||
+ | - Data (within the REIS room) should be similar to the expected results of the Sensor Module Test | ||
===Dragon Fruit=== | ===Dragon Fruit=== | ||
__Necessary Components__: | __Necessary Components__: | ||
Line 467: | Line 578: | ||
* XCTU software | * XCTU software | ||
* XBee breakout board and USB | * XBee breakout board and USB | ||
- | * Two properly configured XBees *See “Configuring XBees” under | + | * Two properly configured XBees *See “Configuring XBees” under "Resources" |
* Charged Battery | * Charged Battery | ||
* Floodlight (for Solar Irradiance & Temperature) | * Floodlight (for Solar Irradiance & Temperature) | ||
__Test Environment__: | __Test Environment__: | ||
+ | - Plug the battery and the XBee (Router) into the Dragon Fruit board | ||
+ | - Turn on the Dragon Fruit board by flipping the switch to "ON" (Switch should be flipped towards the battery) | ||
+ | - Attach the XBee (Coordinator) to the XBee breakout board and plug that into your computer using the USB cable | ||
+ | - Open XCTU on your computer | ||
+ | * Click "Add Device" and select the corresponding USB port that your XBee is plugged into | ||
+ | * Switch to the "Console" and "Connect" the XBee to the network | ||
+ | * Observe the Console log for packets to be received | ||
+ | - Connect the FTDI programmer to the computer and board | ||
+ | - In Arduino IDE, under Tools check: | ||
+ | * Board is set to Arduino UNO | ||
+ | * Port is set to the USB port with the programmer plugged into it | ||
+ | * Programmer is set to AVRISP mkII | ||
+ | - In config.h verify that only macro "DRAGONFRUIT" is defined | ||
+ | - Run a test compile to ensure libraries are found and no compile time errors occur | ||
+ | - Upload program to board | ||
__Expected Results__: | __Expected Results__: | ||
+ | * Using XCTU: | ||
+ | - In the Console log, verify that a packet is being received | ||
+ | - Examine the data within the received packet | ||
+ | * Data will be in Hexadecimal | ||
+ | * Requires conversion | ||
+ | - Data (within the REIS room) should be similar to the expected results of the Sensor Module Test | ||
+ | * With decryption script (XBee (Router) is connected to a computer with the decryption script running): | ||
+ | - Verify that a packet is being recieved | ||
+ | - Examine the converted data | ||
+ | - Data (within the REIS room) should be similar to the expected results of the Sensor Module Test | ||
---- | ---- | ||
Line 519: | Line 654: | ||
* Generally, unit tests are a design specification of how a certain behavior should work, NOT a list of observations of everything the code happens to do | * Generally, unit tests are a design specification of how a certain behavior should work, NOT a list of observations of everything the code happens to do | ||
* The overall architecture of your code should support testing units before using unit tests | * The overall architecture of your code should support testing units before using unit tests | ||
+ | |||
---- | ---- | ||