# Vault 7: Projects

This publication series is about specific projects related to the Vault 7 main publication.

### Protego

# MLA -- USB Library

20 December, 2013

- 1
- 2
…
- 276
- 277
- 278
- 279
- 280
…
- 311
- 312

1.6.10 Device - HID - Uninterruptible Power Supply
This demo shows how to create a Uninterruptible Power Supply (UPS) device.
Description
Supported Demo Boards
The matrix of which demos are supported on a specific board can be found in the Release Notes demo board support
section. Verify that the board you wish to use will work with this demo. This table also describes some of the limitations that
the board might have while running this demo.
Demo Board I/O Mapping
Each demo board has a different number of push buttons, LEDs, and other features with various different names for these
components. To determine which board features are used for which demo features, please refer to the io_mapping.h file in
the demo folder under the system_config folder. Each demo board will have a corresponding folder with an io_mapping.h file
in it. For example, for the PIC18F46J50 PIM this would be the following file:
<install_directory>/apps/usb/device/hid_ups/firmware/src/system_config/pic18f46j50_pim/io_mapping.h
For more information about each demo board, please refer to the Demo Board Information section.
Demo Operation
This demo uses the selected hardware platform as a HID class USB Uninterruptible power supply (UPS). When the device is
plugged into a computer, the computer should have an indicator showing that it is connected to a UPS and it should show a
charge percentage of the battery of the UPS. This demo uses a fixed time derived from the USB start of frame (SOF)
packets to emulate the battery charging by sending updates about the battery status to the computer.
Holding the specified button on the demo board puts the UPS in a emulated discharge state, as if the main power has been
removed/failed. As time progresses the board sends updated information about the charge left on the battery. As the battery
approaches the minimum threshold, the UPS will send a command to shut down the computer. Release the button at any
point of time to simulate a reconnection of the main power supply and to emulate the UPS returning to a charging state.
1.6.11 Device - Mass Storage - Internal Flash Demo
This demo uses the selected hardware platform as an drive on the computer using the internal flash of the device as the
drive storage media.
Description
Supported Demo Boards
The matrix of which demos are supported on a specific board can be found in the Release Notes demo board support
section. Verify that the board you wish to use will work with this demo. This table also describes some of the limitations that
the board might have while running this demo.
Demo Board I/O Mapping
Each demo board has a different number of push buttons, LEDs, and other features with various different names for these
components. To determine which board features are used for which demo features, please refer to the io_mapping.h file in
the demo folder under the system_config folder. Each demo board will have a corresponding folder with an io_mapping.h file
in it. For example, for the PIC18F46J50 PIM this would be the following file:
<install_directory>/apps/usb/device/msd_internal_flash/firmware/src/system_config/pic18f46j50_pim/io_mapping.h
For more information about each demo board, please refer to the Demo Board Information section.
1.6 Demos MLA - USB Library Help Device - Mass Storage - Internal Flash
278

- 1
- 2
…
- 276
- 277
- 278
- 279
- 280
…
- 311
- 312