PantaHub: Difference between revisions

Democratising Wireless Innovation
Jump to navigation Jump to search
No edit summary
No edit summary
Line 7: Line 7:
== LimeNET ==
== 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.
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.


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.
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 ==
== Image Setup ==
Line 15: Line 15:
The Pantahub enabled image for LimeNET Micro can be found at:
The Pantahub enabled image for LimeNET Micro can be found at:


* LimeNET-controlled image: [https://s3.eu-west-2.amazonaws.com/pantahub-images/rpi3-limenet-pv-6144MiB.img.xz rpi3-limenet-pv-6144MiB.img.xz]
* Pantahub connected image: [https://s3.eu-west-2.amazonaws.com/pantahub-images/rpi3-unclaimed-pv-6144MiB.img.xz rpi3-unclaimed-pv-6144MiB.img.xz]
 
* LimeNET controlled image: [https://s3.eu-west-2.amazonaws.com/pantahub-images/rpi3-limenet-pv-6144MiB.img.xz rpi3-limenet-pv-6144MiB.img.xz]




Line 65: Line 67:
== Claiming your device from the LimeNET ==
== 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.
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:


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.
'''$ pvr scan'''


[[File:Pvr-scan.png]]
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:


= Applications =
[[File:unclaimed-pvr-windows.png]]


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.
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.


=== LimeSCAN ===
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.


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


To enable the LimeSCAN platform use following key/value in user-meta:
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.
 
* 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 GSM ===
Line 111: Line 103:


Deleting the keys will make platform go back to default configs.
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 get in touch with the team 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 ==
== Pantahub services ==

Revision as of 23:36, 13 April 2019

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.

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 get in touch with the team 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!