PandwaRF Android API
At last, PandwaRF has an Android SDK. The library is called gollum. You can include this library module to your Android project and develop your own application to drive your PandwaRF.
PandwaRF Android Developer page
PandwaRF Wiki
PandwaRF Web site
API v0.13.3
Go to API
API changes - 03 Sep 2024
Support of Android SDK 34
API v0.13.3
Go to API
API changes - 28 Aug 2024
Support of Android SDK 33 and older
Several changes have been made please check the Javadoc & the wiki to to find out how to initiate a connection to a PandwaRF
API v0.9.27
Go to API
06 May 2019
0.9.12 to 0.9.27 API changes
API v0.9.12
Go to API
API changes - Fri, 06 July 2018
improve javadoc for GollumDongle API (CC1111 FW update) and readability
nrftoolbox: close() and disconnect() BluetoothGatt upon unexpected BLE disconnect
nrftoolbox: fix crash when unregistering non registered receivers
nrftoolbox: fix NPE when destroying BleManager
update some deprecated method javadoc
nrftoolbox: clean RSSI measurement timer
nrftoolbox: add trace when trying to connect with BT off
nrftoolbox: detect BLE service restart on Samsung Galaxy S5: after 10s of connection, the BT process restarts and the link is closed
CC1111 FW update: add security to avoid calling callback accidentally when watchdogTimer expires
start/stop CC1111 FW update timers from pre/post asynctask
nrftoolbox: use TRANSPORT_LE as preferred transport for GATT connections
nrftoolbox: add some traces for BLE adapter state
load C++ runtime library from Java (revert to pre 1.4.10 version)
init to offline mode by default
API v0.9.11
Go to API
API changes - Fri, 06 July 2018
nrftoolbox: use current useTxFifoQueue value when enqueing Request
add CC1111 FW update APIs with hex file and path
consolidate Files utils into single Lib class
add parameter to enqueue all TX packets into a FIFO queue (default) or use single packet transmission (fallback)
CC1111 FW update: add a fine progress callback to be notified when a packet has been sent
CC1111 FW update: use BLE write with Ack when sending pages
nrftoolbox: do not block TX queue in wait() if no Request was sent
nrftoolbox: use ConcurrentLinkedQueue offer() instead of add() for TX queue
Jamming Detection: add Start, Stop and Result methods
split offline mode into backend/analytics/crash report modes
force Dongle state to free when device disconnects
add traces when loading native libraries
force offline mode in sdk build type
nrftoolbox: fix IllegalStateException in stopScan() when BT Adapter is not turned ON
Use the new gradle dependency configurations
update targetSdkVersion to target API level 24
API v0.9.10
Go to API
API changes - Thu, 14 June 2018
disable Fabric in non-release builds (debug or sdk)
nrftoolbox: update to v1.0.11
add/remove missing/un-needed dependencies
use ReLinker for native library loading
load native libraries in Sub1GHzRfTransceiver constructor
do not load C++ runtime library from Java
NDK build: increase minimum API level for native library support to API level 18
move Fabric/Crashlytics initialization to Gollum Lib
add methods to scan BLE devices for variable duration
use same xxxSdkVersion and supportLibraryVersion for all Gollum Android modules
add missing status callbacks in updateFirmwareNordic()
fix repeat value in saveButtonConfigInFlash function for CC1111
trace all PandwaRF not connected as errors in API calls
clarify some comments for Nordic DFU methods
API v0.9.8
Go to API
API changes - Mon, 23 Apr 2018
save config in Flash: fix wrong data buffer conversion in saveButtonConfigInFlash()
add more Javadoc comments in GollumDongle
add/fix RX/TX message flush functions: rxFlush()/txFlush()
remove duplicate hex conversion function
API v0.9.7
Go to API
API changes - Wed, 28 Mar 2018
USB: fix crash when claiming USB interface while connection is null
add repeat paramter in txSend(), txSendHex()
RX/TX: handle HW/SW repeat parameter
API v0.9.6
Go to API
API changes - Thu, 1 Mar 2018
fix USB device not displayed and not opened when user choose USB connection just once option
API v0.9.5
Go to API
API changes - Mon, 26 Feb 2018
CC1111 register R/W: use same wait delay as NPI timeouts
API v0.9.4
Go to API
API changes - Fri, 23 Feb 2018
add traces in all AsyncTask onPostExecute()
Huawei fix (generalized to all devices): Do not wait for confirmation that TX packet has been queued
API v0.9.3
Go to API
API changes - Wed, 21 Feb 2018
add API to force Nordic nRF51 chipset into sleep mode
add API to reset nRF51 chipset
add API to set battery capacity
save RxTx data in hex string instead of string array
update TxConfig and RxTxConfig classes
regroup hex String <-> byte array conversion function to Hex class
skip device when non Gollum USB device detected
API v0.9.2
API not published
API changes - Tue, 6 Feb 2018
rename firmwareUpdateCC1111() to updateFirmwareCC1111() for alignment
API v0.9.1
API not published
API changes - Wed, 31 Jan 2018
add API to set NPI timeout values
return bond procedure status in clearBondDevice()
API v0.9.0
API not published
API changes - Mon, 22 Jan 2018
make RF link nuke function execute in parallel of other tasks
add onUnBonded(address) callback
add bond/unbond helpers methods
Do not consider setting power amps as a blocking RF task, as it is done asynchronously
use parallel AsyncTask to stop Specan
do not unpair all devices when searching new devices
add missing method to set retry mode over BUS config
add methods to set HW revision over BUS config
pass BLE MAC address in parameter when sending onDeviceConnecting/Ready/Disconnecting/Disconnected/LinkLoss event
API v0.8.5
API not published
API changes - Wed, 3 Jan 2018
mark Sub1GHzRfTransceiverSocket as deprecated
update to nRF toolbox v1.0.3
API v0.8.4
Go to API
API changes - Wed, 20 Dec 2017
fix same USB device detected several times: Do not call onPauseUSB() in app onPause() if connected in USB
add method to get USB device name
Split GollumDongle reconnect() function into reconnectUSB() and reconnectBLE()
consider dongle busy between start of rxDataRateMeasStart() and end of rxDataRateMeasStop()
consider dongle busy between start of rxSetup() and end of rxStop()
add task parameter to GollumDongleActivityEvent
SimpleGollumDongle is now deprecated
minor rename and clarify methods to get FW version based on commit ID
add API to get nRF Toolbox version
API v0.8.3
Go to API
API changes - Wed, 13 Dec 2017
fix dfu removed classes after ProGuard causing Nordic FW update failure
update compileSdkVersion to 27 and buildToolsVersion to 27.0.2
API v0.8.2
Go to API
API changes - Tue, 12 Dec 2017
warning fixes
fix dongle state not set to free after rfSetTxRxPowerAmpAction()
make all byte[] to String methods return upper case
Brute Force: add support of long symbols in SyncCodeTail pattern
Brute Force: use byte[] for symbols in BruteForceSession
RfSetupParameters: set deviation to 0 in OOK in RfSetupParameters constructor
add methods for Brute Force setup with logical symbols coded on more than 1 byte
BF: move function value/mask String to byte[] conversion in Sub1GHzRfTransceiver
use toString() methods when printing brute force parameters
return version as int instead of string for get CC111 bootloader version
add exception parameter to GollumCallbackGetInteger
GollumDongle Scanner creation: fix RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
add set power amp methods using RfPowerAmplifierMode
add method to get current power amplifiers mode
fix USB attach/detach receiver unregistered while not registered
add method to close/re-open NPI native interface
API v0.8.1
Go to API
API changes - Fri, 1 Dec 2017
add enum in Common for RF amplifiers values
add javadoc clarification
API v0.8.0
Go to API
API changes - Wed, 29 Nov 2017
add method to set RF power amplifiers in current context when already in background task
BF: make BruteForceStartParameters extends BruteForceSetupParameters
BF: split rfBruteForceAttackSetup()/Start() in separate RF setup + BF setup phases
add RF parameter wrapper class
BF: wrap parameters into single object for AsyncTask and Sub1GHzRfTransceiver BF methods
BF: add deviation in BF parameters wrapper classes
move BF method parameters to wrapper classes to reduce param number
add deviation parameter to RX/TX/DRM setup
add USB attach/detach broadcast receiver
clean methods to get USB/BL FW status
add utils package in javadoc
add getter for JavaScriptConsoleLogEvent string