Notehub provides numerous features that allow you to inspect data transferred from the Notecard, manage fleets of devices, provision access to projects, and perform cloud-based OTA DFU.
Notehub is built around a data set comprising of Notecard, Event, and Session data. The raw data collected from these sources is described in the JSON format. Notehub makes the data accessible through a graphical user-interface, which provides valuable insights and interactions with this data.
The information contained in the JSON object is outlined in the following table:
Key | Data Type | Description |
---|---|---|
contact | object | Contact information object |
device | string | Device UID |
fleet | string | Fleet UID |
latest | object | |
product | string | Product UID |
provisioned | number | Provisioning date (UNIX epoch timestamp) |
session_activity | number | |
session_began | number | (UNIX epoch timestamp) |
session_tower | object | Tower information object |
session_tower.c | string | Tower location country |
session_tower.cid | number | Cell Identification |
session_tower.l | string | |
session_tower.lac | number | Location Area Code |
session_tower.lat | number | Geographic latitude |
session_tower.lon | number | Geographic longitue |
session_tower.mcc | number | Mobile Country Code |
session_tower.mnc | number | Mobile Network Code |
session_tower.n | string | Tower location city and state |
session_tower.tri | number | |
session_tower.zone | string | Timezone information |
settings | object | |
settings.modified | number | Modified date (UNIX epoch timestamp) |
sn | string | Product serial number |
temp | number | Ambient temperature |
voltage | number | Voltage on V+ pin |
The device data JSON object can be found using the following steps:
Select Devices from the left navigation bar and select a device from the list provided.
Select View from the available options.
Select the JSON tab.
Notehub is built around a data set comprising of Notecard, Event, and Session data. The raw data collected from these sources is described in the JSON format. Notehub makes the data accessible through a graphical user-interface, which provides valuable insights and interactions with this data.
The information contained in the JSON object is outlined in the following table:
Key | Data Type | Description |
---|---|---|
event | string | Event UID |
session | string | Session UID |
tls | boolean | TLS encrytped |
device | string | Device UID |
sn | string | Product serial number |
product | string | Product UID |
received | number | |
routed | number | When the Note was transmitted to Notehub (UNIX epoch timestamp) |
req | string | Notecard request API |
when | number | When the Note was queued on the Notecard (UNIX epoch timestamp) |
file | string | Notefile name to which the Note was queued |
note | string | |
updates | number | |
body | object | User-defined Note payload |
tower_when | number | |
tower_lat | number | Cellular tower latitude |
tower_lon | number | Cellular tower longitude |
tower_country | string | Cellular tower country code |
tower_location | string | Cellular tower location (City/State) |
tower_timezone | string | Cellular tower time-zone |
tower_id | string | Cell Global Identity |
moved | number | last epoch time that the device moved |
orientation | string | description of physical orientation (e.g. "face-up") |
rssi | number | Received Signal Strength Indication |
sinr | number | Signal-to-Interference-plus-Noise Ratio |
rsrp | number | Reference Signals Received Power |
rsrq | number | Reference Signals Received Quality |
rat | string | Radio Access Technology |
bars | number | Number of bars of cellular service |
voltage | number | Voltage measured from power supply |
temp | number | Temperature measured on chip |
towers | number | Connected tower count |
logattn | boolean | Event requires attention |
log | object | Route Log (list) |
log.[rid*] | object | Route object |
log.[rid*].attn | boolean | Route requires attention |
log.[rid*].status | number | Error status code |
log.[rid*].text | string | Error message |
reply | string |
*An auto-generated route identifier, comprising of the project's unique identifier along with the route's unique identifier.
The event data JSON object can be found using the following steps:
Select Events from the left navigation bar.
Select an event from the list of events.
Select Details from the available options.
Select the JSON tab.
Notehub is built around a data set comprising of Notecard, Event, and Session data. The raw data collected from these sources is described in the JSON format. Notehub makes the data accessible through a graphical user-interface, which provides valuable insights and interactions with this data.
The information contained in the JSON object is outlined in the following table:
Key | Data Type | Description |
---|---|---|
session | string | Session UID |
device | string | Device UID |
product | string | Product UID |
fleet | string | Fleet UID |
addr | string | Protocol, socket, and IP address |
cell | string | Cellular global identity |
ScanResults | ||
rssi | number | Received Signal Strength Indication |
sinr | number | Signal-to-Interference-plus-Noise Ratio |
rsrp | number | Reference Signals Received Power |
rsrq | number | Reference Signals Received Quality |
rat | string | Radio Access Technology |
tower | object | Object describing tower information |
tower.n | string | Tower location city and state |
tower.c | string | Tower location country |
tower.l | string | |
tower.lat | number | Geographic latitude |
tower.lon | number | Geographic longitue |
tower.zone | string | Timezone information |
tower.mcc | number | Mobile Country Code |
tower.mnc | number | Mobile Network Code |
tower.lac | number | Location Area Code |
tower.cid | number | Cell Identification |
tower.tri | number | |
session_log_key | string | |
this | object | Object describing Session transaction details |
this.since | number | POSIX timestamp |
this.bytes_rcvd | number | Bytes received during this session (Cellular Notecard only) |
this.bytes_sent | number | Bytes sent during this session (Cellular Notecard only) |
this.sessions_tcp | number | |
this.sessions_tls | number | |
this.notes_rcvd | number | Notes received during this session (Cellular Notecard only) |
this.notes_sent | number | Notes sent during this session (Cellular Notecard only) |
next | object | |
period | object | |
period.since | number | POSIX timestamp |
period.duration | number | |
period.bytes_rcvd | number | Bytes received during this session |
period.bytes_sent | number | Bytes sent during this session |
period.sessions_tcp | number | |
period.sessions_tls | number | |
period.notes_rcvd | number | Notes received during this session |
period.notes_sent | number | Notes sent during this session |
voltage | number | Voltage supplied to Notecard |
temp | number | Ambient temperature of Notecard |
continuous | boolean | Describes if continuous mode is enabled |
tls | boolean | Describes encryption status of session |
work | number | |
events | number | Number of events that occurred during session |
moved | number | last epoch time that the device moved |
orientation | string | description of physical orientation (e.g. "face-up") |
trigger | string | configuration details and reason for session establishment |
LastWorkDone | number | POSIX timestamp |
Session data usage (bytes and notes) is only available on Cellular Notecards.
The session data JSON object can be found using the following steps:
Select Devices from the left navigation bar and select Sessions from the available options.
Double-click a session from the list of sessions.
View the JSON of the selected session.
Notehub provides data handling capabilities for both data that was captured, or generated, by Notecards as well as data being sent to Notecards from Notehub.
A Route is an external API, or server location, where Notes are to be forwarded. A Route is established at the Project level, and by default will map every single transaction over a route. However, a route can also be filtered down to specific Notefiles and/or Fleets, allowing you to customize the amount of data you wish to share. Beyond filtering, any single event is capable of being multicast over several Routes, which gives you the ability to customize data ingress/egress to suit your needs.
For examples, view the Routing Tutorials
Not only can Notehub respond to data created by the Notecard, but it can send data to the Notecard as well. This functionality introduces interactive behaviors, configurations, and control.
Inbound may sound like a misnomer, but it was named from the perspective of the
Notecard device. Therefore, when you load a Note into an Inbound Queue (.qi
Notefile), that Note will be delivered the next time the Notecard device
synchronizes with Notehub.
Environment variables provide a mechanism to propagate cloud-based key/value pairs to a device, fleet, or project.
The Hierarchy of Environment Variables
Environment variables can be defined in a number of locations, from the Notecard, to Notehub device settings, the device's Fleet, and the Notehub project. Variables set at different levels of this hierarchy can override one another. When obtaining an environment variable, the Notecard uses the following priority order, where the fist matched result is returned:
- The value set on that Notecard with the
env.set
request. - The value set in Notehub directly on Notehub's record for the Device.
- The value set in Notehub on a Fleet to which the Device belongs.
- The value set in Notehub on the Project to which the Device belongs.
- The value set on that Notecard with the
env.default
request.
Notehub's ability to send and receive data has also been generalized to send firmware. Firmware can be uploaded to Notehub, then subsequently rolled out on a project, fleet or device scope. The firmware is not only limited to Notecards, it can also target the host MCU.
For more information regarding host DFU capabilities, please refer to the Notecard Walkthrough: Host Firmware Update Requests.
Notehub.io provides tooling for organizing projects, team members, and Notecard devices. Team members can be granted role-based access to individual projects, and devices can be grouped into both projects and fleets.
Projects are the highest form of organization in Notehub. Each project is
comprised of one or more products identified by
ProductUIDs which are globally unique
identifiers in reverse-DNS format (e.g. com.acme.tools.drill_press
).
This project > product relationship enables users to organize multiple products into coherent groups. For example, a company could have a project called "Refrigerators". Under this Refrigerators project, they might have multiple products such as "upright refrigerators", "chest refrigerators", and "side-by-side refrigerators".
As such, projects offer a logical grouping of products in an account, and act as the entry point for drilling into information regarding Notecard devices and their associated data.
Relevant Project Actions:
- Product management
- Fleet and device management
- Route management
- Team member management
- OTA firmware deployment for Notecards and hosts
- Environment variable management
Notehub.io allows for the creation and management of team members who may be delegated varying levels of access to projects. With the provided role-based privileges, a single team member can have differing degrees of access to multiple projects under an account.
Team members can be granted one or more of three different roles on a single project:
- Owner (Collaborator) has full administrative privileges.
- Developer (Collaborator) has limited administrative privileges.
- Viewer has read-only privileges.
Fleets allow for the organization of Notecard devices into logical groupings. Fleets are managed at the project level.
Fleets can be named and used in any way that fits your individual project. However, if you are looking for guidance, we recommend the following:
- Using a New fleet to view (and potentially triage) Notecard devices newly-added to a project.
- Using one or more Operational fleets denoting active devices and organized by device type, region, or some scope of environment variables.
- Using a Repair fleet for all devices that have been taken out of service but may be put back into service when functioning properly.
- Using a Decommissioned fleet for all devices that are out of service and will not return to service.
- Using custom-tagged fleets to identify devices that may need to be monitored for anomalies, associated with a geolocation, linked to a specific custodian, and so on.
Users concerned about the possibility of a "rogue" device polluting data in Notehub will find the usage of the New fleet useful. Newly-provisioned devices will appear in New, allowing for easy re-assignment or removal of unidentified devices. Likewise, using an Operational fleet allows users to designate specific devices as approved to route data to third-party cloud applications.
Each Notecard comes with a sticker containing a QR code unique that device. By default, the QR code links to the Quickstart Guide.
Depending on the needs of your company, a different URL redirect can be specified, allowing you to forward the user to a company- or product-specific address.
Navigate to Settings, and find the Device Dashboard URL section.
Fill in the field with the URL you would like to use.
Pay special attention to any substitution variables specified in the URL above.
You may use the substitution variables [device]
, [sn]
(serial number), and
[product]
. These enable you to provide endpoints or URLs capable of being
tailored to individual devices.