PantaHub

Democratising Wireless Innovation
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

By default, our image lets you "'claim"' your device and control it through Pantahub.com as well as our development tools (pvr). Through this, you can choose to try out different community projects as well as be able to share your own developments and innovations with the broader community.

Besides our default Pantahub-connected image, we also have one that is automatically connected to the LimeNET. Being part of the LimeNET means you can choose to automatically get all of the latest software, as well as have your device be part of our broad SDR ecosystem. If you choose to install this one, you won't have direct control via Pantahub; however, you can always flash the default image again to get control, or you can get in touch with team@pantahub.com to get your device released for you.

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

Your first use of pvr will be when claiming your device. In order to claim your device you will need a Pantahub account, so make sure you have created one and have had it approved before the following. We are mostly interested now in the following command:

$ pvr scan

With this command, we will be able to discover devices in our network, both claimed and unclaimed, if they have no owner. We must begin by discovering and claiming our device:

If pvr finds a device on the local network it will present this metadata for you to claim it via the command quoted in the output. Just run that command as-is and your user should now own your device.

It can take a minute or two, depending on your connection, for a device to fully show up on Pantahub's device list the first time it boots. Wait a few if it hasn't showed up, it eventually will. Once your device shows up as claimed and under your ownership, you can interact with it via clone and post commands. For example, if you clone a device you will get a checkout of the different container assets that make up this firmware revision.

Keeping up with latest software releases

Lime Scan and GSM stack is evolving rather quickly and in order to keep your device working with latest cloud features we recommend you keep your device running the latest software stack. To automatically have your device upgrade to the latest software available, simply add the following metadata to your device on pantahub:



Alternatively you can use pvr to clone our release channels and push it to your device from time to time:

pvr clone https://pvr.pantahub.com/limemicro/lime-gsmstation lime-gsmststation
cd lime-gsmstation
pvr post PVRURLDEVICE

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.

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.

LimeSCAN

DISCLAIMER LimeSCAN is currently on a private Alpha; in order to get your device transmitting scan data you must complete the form to request early access.

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/

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!