NeutralNUS: pronounced "neutralness" (ˈnjuːtrəlnəs)
NeutralNUS Terminal is a BLE client that is a platform agnostic terminal for NUS - Nordicsemiconductor Uart Services (BLE UART) which connects to any device that supports NUS rather than specifically servicing particular hardware. Other solutions tend to serve specific hardware and require a specific setup. NeutralNUS Terminal aims to be as generic as possible, providing a pure terminal experience over BLE NUS.
Please download from releases and read the release notes
NUS: Nordicsemiconductor UART Service
UART: Universal Asynchronous Receiver-Transmitter
BLE: Bluetooth Low Energy, Bluetooth 4.0, Bluetooth 5.0
BLE client/central: A PC/mobile device that connects to BLE peripherals to collect data and send commands. The central device connects as a client to a BLE peripheral.
BLE server/peripheral: The small device that performs actions in the world. The peripheral device runs the BLE server.
Platform Agnostic: Runs on Windows/Linux/macOS
This project is based on web-device-cli which makes use of the Web Bluetooth protocol. Additions were made using React and NWjs to convert web-device-cli into an agnostic desktop application.
- Stand alone application
- Connects to BLE peripherals and provides a terminal interface over serial (NUS)
- Deploys a TCP server that runs on 127.0.0.1:8888 which can be used to connect to a TCP client written in any language
- Basic interface with automatic scrolling
TCP backend:
- NeutralNUS Terminal will have a TCP server that allows any local connection to the NUS on the BLE peripheral
- NeutralNUS Terminal will have a TCP server that allows any remote connection to the NUS on the BLE peripheral
What's in a name? (too much)
I originally thought of using NUS4all but found that this was used as a political hashtag so I dropped it.
Next I went for agnostic NUS written as ag-NUS
- agnus means lamb in latin
- ag means silver on the period table of elements
- therefore I could have used a silver lamb to represent the project, but this seemed too religious given the project is meant to be agnostic after all 😜
After that JustNUS Terminal - Just this. Seemed a bit bland.
Finally I settled on NeutralNUS Terminal - pronounced neutralness (ˈnjuːtrəlnəs)