This commit is contained in:
furrtek 2017-01-06 02:51:24 +01:00
commit 1898a37c42
13 changed files with 109 additions and 99 deletions

207
README.md
View File

@ -1,99 +1,108 @@
# portapack-HAVOC # portapack-HAVOC
HAVOC is a fork of the PortaPack H1 firmware, a portability add-on for the [HackRF One software-defined radio](http://greatscottgadgets.com/hackrf/). HAVOC is a fork of the PortaPack H1 firmware, a portability add-on for the [HackRF One software-defined radio](http://greatscottgadgets.com/hackrf/).
Hardware is available at [ShareBrained Technology](http://sharebrained.com/portapack). Hardware is available at [ShareBrained Technology](http://sharebrained.com/portapack).
It is build on top of [ShareBrained's firmware](https://github.com/sharebrained/portapack-hackrf/), meaning that the original functionalities are kept (except when I don't sync for 2 months). It is build on top of [ShareBrained's firmware](https://github.com/sharebrained/portapack-hackrf/), meaning that the original functionalities are kept (except when I don't sync for 2 months).
As its name implies, HAVOC's functionalities can be fun (or mean). You shouldn't use them. We never did. As its name implies, HAVOC's functionalities can be fun (or mean). You shouldn't use them. We never did.
**In most countries, radio transmissions are tightly regulated. Transmitting outside of free/public bands without a licence or authorization, even at very low power, is certainly forbidden where you live. Always bear that in mind. You're the ONLY ONE responsible for what you do with this software.** **In most countries, radio transmissions are tightly regulated. Transmitting outside of free/public bands without a licence or authorization, even at very low power, is certainly forbidden where you live. Always bear that in mind. You're the ONLY ONE responsible for what you do with this software.**
# Fork features # Fork features
* Frequency manager (save/load from SD card) * Frequency manager (save/load from SD card)
* "Soundboard" wave file player from SD card (put 8-bit mono files in /wav directory) * "Soundboard" wave file player from SD card (put 8-bit mono files in /wav directory)
* POCSAG 1200 alphanumeric receiver/decoder * POCSAG 1200 alphanumeric receiver/decoder
* Simulate OOK frames from PT2262 encoders and many others (doorbells, remote outlets, some garage doors, ...) * Simulate OOK frames from PT2262 encoders and many others (doorbells, remote outlets, some garage doors, ...)
* Scheduled numbers station (for spies on a budget, alerts, LARP scenarios, fox hunts, ...) * Scheduled numbers station (for spies on a budget, alerts, LARP scenarios, fox hunts, ...)
* Nuoptix DTMF sync transmit (quite specific but can be useful in some theme parks :) ) * Nuoptix DTMF sync transmit (quite specific but can be useful in some theme parks :) )
* RDS (Radio Data System) PSN and RadioText groups transmit * RDS (Radio Data System) PSN and RadioText groups transmit
* Fully configurable AFSK transmit (Bell202...) * Fully configurable AFSK transmit (Bell202...)
* Virtual keyboard or Unistroke "handwriting" text input * Virtual keyboard or Unistroke "handwriting" text input
* LCR (Language de Commande Routier) litteral message forming and transmit * LCR (Language de Commande Routier) litteral message forming and transmit
* "Xy" and "EP" transmitter, street lighting control (CCIR tones) * "Xy" and "EP" transmitter, street lighting control (CCIR tones)
* "Play Dead" in case of emergency * "Play Dead" in case of emergency
* PWM audio RSSI output (for crude direction finding) * PWM audio RSSI output (for crude direction finding)
* (Not working) Close-Call™ style scanner * (Not working) Close-Call™ style scanner
* (Not working) Fully configurable jammer * (Not working) Fully configurable jammer
* (Not used for now) Dynamic baseband code loading from SD card * (Not used for now) Dynamic baseband code loading from SD card
# Screenshots # Screenshots
![Frequency manager](pictures/freqman.png) ![OOK encoder](pictures/ook_enc.png) ![POCSAG receiver](pictures/pocsag.png) ![HAVOC screenshots](screenshots.png)
![AFSK transmit](pictures/afsk.png) ![Soundboard](pictures/soundboard.png) ![RDS transmit](pictures/rds.png)
![Xy transmit](pictures/xylos.png) ![LCR transmit](pictures/lcr.png) ![Cinfiguration screen](pictures/config.png) ## Todo
## Todo * Generetic code transmitters
* PMR446 transmit
* PMR446 transmit * Detect/decode OOK
* Detect/decode OOK * Whistle (tone generator)
* Whistle (tone generator) * POCSAG transmitter
* POCSAG transmitter * AFSK receiver
* AFSK receiver * Make SIGFOX interceptor work with all modules
* Make SIGFOX interceptor work with all modules * Wireless microphone transmit (with squelch tones)
* Wireless microphone transmit (with squelch tones) * Spectrum painter
* Spectrum painter
**Visit the [wiki](https://github.com/furrtek/portapack-havoc/wiki) for more details.**
**Visit the [wiki](https://github.com/furrtek/portapack-havoc/wiki) for more details.**
## PWM RSSI output
About the PWM RSSI output: Frequency is 800Hz in NFM and 500Hz in WFM. The data path is very messy, the RSSI thread running on the baseband core sends groups of values to the application RSSI widget which computes the average value, which sends it back to the baseband module for audio output (if enabled)...
Huge kludge, wrote in a rush for direction finding. Audio frequency is 800Hz in NFM and 500Hz in WFM. The data path is very messy, the RSSI thread running on the baseband core sends groups of values to the application RSSI widget which computes the average value, which sends it back to the baseband module for audio output.
# Thanks
## Getting out of Play Dead mode
* Sig and cLx for research on AFSK LCR, Xylos, and for lending remote-controlled outlets
* Rainer Matla for the donation :) Play Dead mode is a persistent fake error screen, which can be useful in case of situations where people become too curious. It's easily enabled, and disabled with a programmable key sequence (see Setup menu).
* Keld Norman for ideas and suggestions
If no exit key sequence was set up, it defaults to up-down-left-right. Enter the sequence and press select, you should see "Please reset" appear. After reset, you should be able to go back to the main menu. If not, a sequence was probably entered already. Solution hint: remove the backup battery for a few minutes, or ui_navigation.cpp ctrl+F 0x8D1 ;)
# License
This mode can also be used as a login screen, not requiring reset.
Except where specified in subdirectories of this project, all work is offered under the following license:
# Thanks
Copyright (C) 2013-2015 Jared Boone, ShareBrained Technology, Inc.
* Sig and cLx for research on AFSK LCR, Xylos, and for lending remote-controlled outlets
Copyright (C) 2015-2016 Furrtek * Rainer Matla for the donation :)
* Keld Norman for ideas and suggestions
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License # License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version. Except where specified in subdirectories of this project, all work is offered under the following license:
This program is distributed in the hope that it will be useful, Copyright (C) 2013-2015 Jared Boone, ShareBrained Technology, Inc.
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the Copyright (C) 2015-2016 Furrtek
GNU General Public License for more details.
This program is free software; you can redistribute it and/or
You should have received a copy of the GNU General Public License modify it under the terms of the GNU General Public License
along with this program; if not, write to the Free Software as published by the Free Software Foundation; either version 2
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA of the License, or (at your option) any later version.
02110-1301, USA.
This program is distributed in the hope that it will be useful,
# Contact but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## Original firmware and hardware GNU General Public License for more details.
Jared Boone <jared@sharebrained.com> You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
ShareBrained Technology, Inc. Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.
<http://www.sharebrained.com/>
# Contact
The latest version of this repository can be found at
https://github.com/sharebrained/portapack-hackrf/ ## Original firmware and hardware
## HAVOC specific things Jared Boone <jared@sharebrained.com>
Furrtek <furrtek@gmail.com> ShareBrained Technology, Inc.
<http://www.furrtek.org> <http://www.sharebrained.com/>
The latest version of this repository can be found at
https://github.com/sharebrained/portapack-hackrf/
## HAVOC specific things
Furrtek <furrtek@gmail.com>
<http://www.furrtek.org>

View File

@ -425,6 +425,7 @@ BMPView::BMPView(NavigationView& nav) {
button_done.on_select = [this, &nav](Button&){ button_done.on_select = [this, &nav](Button&){
nav.pop(); nav.pop();
nav.push<SystemMenuView>();
}; };
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 227 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

BIN
screenshots.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 250 KiB