link upstream wiki

master
Jeff Moe 3 years ago
parent ee18b4fa97
commit 1edd434dea

@ -1,3 +1,11 @@
# Fork Sand fork
Fork Sand fork cloned from:
* https://github.com/robertfisk/USG/wiki
# Upstream Wiki
Here's how to install new firmware on a USG without using a JTAG adapter, using the built-in DFU (Device Firmware Upgrade) protocol.
_**Security notice:**_ This upgrade process uses a DFU bootloader [built into the USG's microcontrollers](http://www.st.com/content/ccc/resource/technical/document/application_note/b9/9b/16/3a/12/1e/40/0c/CD00167594.pdf/files/CD00167594.pdf/jcr:content/translations/en.CD00167594.pdf) by the manufacturer, [ST Microelectronics](http://www.st.com). There is a remote chance that this bootloader (or the DFU upgrade software) is malicious, so do not perform this firmware upgrade on a sensitive computer.
@ -81,4 +89,4 @@ Program the firmware (choose Upstream_X.XrXX.bin or Downstream_X.XrXX.bin as app
Then disconnect the USG, and repeat the operation on the other side. Remember to switch jumpers or press the "BOOT_USB" button as appropriate to enter DFU mode.
When programming DIY v0.9 hardware, don't forget to change BOOT0 back to the "L" or "0" position when you're done!
When programming DIY v0.9 hardware, don't forget to change BOOT0 back to the "L" or "0" position when you're done!

@ -1,3 +1,11 @@
# Fork Sand fork
Fork Sand fork cloned from:
* https://github.com/robertfisk/USG/wiki
# Upstream Wiki
The USG firmware supports mass storage devices, keyboards and mice, as well as different options for each device type. You can customize your firmware build using the options below. Because the v1.0 hardware has no user-controllable switches, this configuration must be done at compile-time. This means you will need to have a [firmware development environment](https://github.com/robertfisk/USG/wiki/Firmware-Development-Environment) set up.
The build configuration is stored in these files:

@ -1,3 +1,11 @@
# Fork Sand fork
Fork Sand fork cloned from:
* https://github.com/robertfisk/USG/wiki
# Upstream Wiki
This page will help you install and configure a development environment for the USG's firmware. By now you should have a [JTAG connection](https://github.com/robertfisk/USG/wiki/JTAG-Connection) ready.
Note: The instructions below are written with minimal testing. I may have forgotten something!
@ -15,4 +23,4 @@ On the Eclipse toolbar next to the 'Build' hammer, from the drop-down menu choos
## Load it
Attach your JTAG debugger to each development board in turn, and from the debug menu choose "Upstream Debug" or "Downstream Debug" depending on which side of the USG you connect to. The firmware will be flashed permanently into the processors and you can start your debug session, or simply disconnect the debugger to run it standalone.
The USG has two LEDs, and you should see them flash once when the USG is powered on. If you see them do anything else, check [the LED page](https://github.com/robertfisk/USG/wiki/LED-Diagnostics) to decode what went wrong.
The USG has two LEDs, and you should see them flash once when the USG is powered on. If you see them do anything else, check [the LED page](https://github.com/robertfisk/USG/wiki/LED-Diagnostics) to decode what went wrong.

@ -1,3 +1,11 @@
# Fork Sand fork
Fork Sand fork cloned from:
* https://github.com/robertfisk/USG/wiki
# Upstream Wiki
While you can order pre-built USG hardware [[https://globotron.nz][from the online store]], the USG has been designed to allow anyone to build their own from readily available development boards.
** Build your own USG v0.9

@ -1,3 +1,11 @@
# Fork Sand fork
Fork Sand fork cloned from:
* https://github.com/robertfisk/USG/wiki
# Upstream Wiki
# The USG is Good, not Bad
The USG is a firewall for your USB ports. It connects between your computer and an untrusted USB device, isolating the badness with an internal hardware firewall.

@ -1,3 +1,11 @@
# Fork Sand fork
Fork Sand fork cloned from:
* https://github.com/robertfisk/USG/wiki
# Upstream Wiki
This page shows you how to connect a JTAG adapter so you can develop or debug the USG's firmware. If you only want to install the latest firmware version, head over to the [DFU Firmware Upgrade](https://github.com/robertfisk/USG/wiki/DFU-Firmware-Upgrade) page to do it directly over USB.
## DIY v0.9 Hardware

@ -1,3 +1,11 @@
# Fork Sand fork
Fork Sand fork cloned from:
* https://github.com/robertfisk/USG/wiki
# Upstream Wiki
Each USG has two indicator LEDs. The colour and position of these LEDs varies between versions.
*USG v0.9:* Each Olimex development board has a green 'Status' LED near the USB connector.
@ -18,4 +26,4 @@ Each microcontroller (MCU) controls one fault LED, and a problem may occur with
|One or both LEDs flash quickly (5Hz) when USG powered on|FREAKOUT self-protection mechanism is triggered at bootup|Firmware is damaged or buggy, or inter-MCU SPI link is damaged causing a failed self-test|
|One or both LEDs flash quickly (5Hz) while a USB device is attached|FREAKOUT self-protection mechanism is triggered at runtime|You may have a Bad USB device, or a bug in the USG firmware.|
|Downstream LED (yellow on v1.0) flashes slowly (1Hz) when a USB device is attached|Unsupported device class, or weird device configuration|The USG doesn't support this device right now.|
|Upstream LED (red on v1.0) double-flashes slowly (1Hz)|[[https://github.com/robertfisk/USG/wiki/Firmware-Build-Options#hid-bot-detection][HID bot-detect function]] is triggered|The inputs coming from the attached keyboard or mouse are not random enough, so the USG blocked it (temporarily or permanently). If you were using the keyboard or mouse at the time, try making your input actions less regular. If you weren't using the keyboard or mouse at the time, you probably have a Bad input device!|
|Upstream LED (red on v1.0) double-flashes slowly (1Hz)|[[https://github.com/robertfisk/USG/wiki/Firmware-Build-Options#hid-bot-detection][HID bot-detect function]] is triggered|The inputs coming from the attached keyboard or mouse are not random enough, so the USG blocked it (temporarily or permanently). If you were using the keyboard or mouse at the time, try making your input actions less regular. If you weren't using the keyboard or mouse at the time, you probably have a Bad input device!|

@ -1,3 +1,11 @@
# Fork Sand fork
Fork Sand fork cloned from:
* https://github.com/robertfisk/USG/wiki
# Upstream Wiki
The USG contains two [STM32F4 microprocessors](http://www.st.com/content/st_com/en/products/microcontrollers/stm32-32-bit-arm-cortex-mcus/stm32f4-series.html) communicating over a high-speed serial link. This internal link forms a firewall barrier that effectively blocks malicious USB commands from reaching your computer.
![](https://github.com/robertfisk/USG/blob/USG_0.9/Doc_images/USG%20internal%20diagram.png)

Loading…
Cancel
Save