PantaHub

Democratising Wireless Innovation
Revision as of 15:01, 12 April 2019 by RicardoMendoza (talk | contribs)
Jump to navigation Jump to search

Pantahub

Pantahub is the one-stop hub for all connected devices. By choosing to use a Pantahub-connected image for your LimeNET Micro, you can begin to easily try out other developers SDR projects as well as share your own innovations with the community, so that others can try out and collaborate with ease.

By getting connected to Pantahub, your devices become cloud-managed infrastructure, and through the use of our Pantahub.com dashboard and CLI tools you can remotely control the lifecycle of the software running on your device, without the need to be flashing and reflashing every time.

LimeNET

Our Pantahub-connect images automatically join the LimeNET, which is a managed network of LimeNET devices. By default, your device is controlled centrally but can be "released" for you to take control locally and be able to use Pantahub to drive the software that is running on your device.

You can also install the alternate image, which does not automatically connect to the LimeNET controller. This image lets you follow the normal claiming process via Pantahub to take control of your device.

Image Setup

The Pantahub enabled image for LimeNET Micro can be found at:


To flash this, you can follow the instructions at Flashing_eMMC_or_uSD_card. Make sure to uncompress the image first with the unxz command.

Installing PVR

Our main development tool is called pvr and it lets you interact with your Pantahub-connected device remotely. This CLI will be what you use to clone your device as well as post different demos to it for easy testing and seamless onboarding. You can download it from the following locations:

To install the Linux version you need to place the extracted binary in your $PATH and make sure it is made executable with chmod +x.
To install the Windows version all you need is to place it in a directory to which your user has access and can run executables from. C:\Users\YOURUSER is usually a good location.

Once you have it installed just calling the pvr command from your shell should show you the help menu, where you can get familiarized with the different features that it provides.

Registering user in Pantahub

The first thing you need to do to interact with Pantahub is to register a user account on https://www.pantahub.com

A user account gives you access to the full API, including the object store, and also grants you access to the dashboard.

Register your user with the following command:

$ pvr register -u youruser -p yourpassword -e your@email.tld

This will generate a json response with the server-generated part of the credentials:

2017/06/19 11:08:43 Registration Response: {
 "id": "5947949b85188a000c143c2e",
"type": "USER",
"email": "your@email.tld",
"nick": "youruser",
"prn": "prn:::accounts:/5947949b85188a000c143c2e",
"password": "yourpassword",
"time-created": "2017-06-19T09:08:43.767224118Z",
"time-modified": "2017-06-19T09:08:43.767224118Z"

}

You can also go to https://www.pantahub.com and follow the sign-up process on the web interface.

Your account is not ready for use until you have followed email verification. Please get in touch with team@pantahub.com if you had any issues completing verification, or if the default storage quota is not enough for your project.

Claiming your device from the LimeNET

By default, the image automatically boots into an "autopilot" mode, where the software on the device is managed and controlled remotely via the LimeNET. You can also control this yourself of course, to get the full benefits of being able to try different applications, monitor and control your device and also being able to share your work with others.

If you want to release the device from the automatically controlled LimeNET, you can send us a request with your device-id to team@pantahub.com with the title "LimeNET Request". In order to discover your device-id, you need to run the pvr scan command. Your computer must be connected to the same local network as to which your LimeNET Micro is connected via it's ethernet port. The output of this command looks like the following, and the data in question is the ID field.

Applications

The default image comes with a pre-installed set of applications. Some of these are helpers for management and Pantahub operations, but the two main applications are the interesting ones that drive LimeSDR stack in order to turn the LimeNET Micro into a GSM toolbox.

LimeSCAN

This is a GSM and Power Spectrum scanner that feeds scan data to the limescan.net website.

To enable the LimeSCAN platform use following key/value in user-meta:

  • key: lime.gsmstation.mode
  • value: scan

You will also have to set your limescan.ini in user-meta:

  • key: limescan-config.ini
  • value: <ini file>

Once configured your results will be fed to https://limescan.net/

Osmocom GSM

Osmocom NITB and LMS transmitter middleware that turns your LimeNET Micro into a GSM basestation.

To enable osmo platform use following key/value in user-meta:

key: lime.gsmstation.mode value: osmo Also the following keys exist that allow you to overwrite our default config files for the services nitb, bts-trx and trx-lms:

  • key: lime.gsmstation.osmo.config.nitb
  • value: <full config file used by osmo-nitb service>
  • key: lime.gsmstation.osmo.config.bts
  • value: <full config file used by osmo-bts-trx service>
  • key: lime.gsmstation.osmo.config.trx
  • value: <full config file used by osmo-trx-lms service>

Deleting the keys will make platform go back to default configs.

Pantahub services

In addition to the SDR applications, the device comes preinstalled with a set of services that mediate access and discovery via the Pantahub controller.

  • alpine-base platform - auto connects your system through DHCP enabled ethernet
  • ph-vpn - pantahub vpn platform (experimental)
  • ph-avahi - find and claim your (local) devices with pvr scan and claim
  • pvr-auto-follow - make your device automatically track updates from another device

You can access your device in Pantahub at https://www.pantahub.com/u/<your-user>/devices/<your-device-id>

Pantahub provides a fully fledged monitoring interface so that you can interact with your account's own device and object registry. This let's you visualize the current state of each device, how they are walking through available updates as well as doing introspection on the details of each step, including a README file, the objects that make it up, changelog, and cloud-backed logging and metadata.

Developing with Pantahub tools

For normal use of pvr and https://www.pantahub.com to control your device, as well as the concepts of "cloning" and "sharing" your work with other people, you can refer to the Panthub + Lime SDR Documentation

SSH for Developer Access

Right now you can access the following platforms as user root, via ssh, through following ports:

  • alpine-base-device: 22 (user: root pass: pantacor)
  • limescan-device: 7022 (user: root pass: pantalime)
  • lime-osmocom-device: 7024 (user: root pass: pantalime)
  • pvr-auto-follow: 8022 (user: root pass: pantasdk)

Note: Root password login is only allowed through console.

To log in via ssh you have to set the following user-meta key in Pantahub:

  • key: pvr-sdk.authorized_keys
  • value: <the authorized_keys file you want grant root login privilege to>


Enjoy!