Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 11 additions & 18 deletions readme.md
Original file line number Diff line number Diff line change
@@ -1,29 +1,22 @@

Have you ever needed to create a simple command api across various stream interfaces? Perhaps human input from a serial monitor, commands stored on an
SD Card, or commands coming in over a Bluetooth connection? This project aims to standardize and simplify registering and handling command invocations across various stream based serial interfaces. You could use this to make a remote control vehicle or interact with various IOT devices. Woohoo!

This repository is a real group effort across a number of contributors over time:

----------------------------------------
1. Using many excellent additions from [qnimble](https://github.com/qnimble)/[qCommand](https://github.com/qnimble/qCommand):
----------------------------------------
This is the basic stream command parsing library you've been looking for. It allows use of any Stream interface that commands might come through, such as Serial, BLE and/or an SD card stream.

[ben-qnimble](https://github.com/ben-qnimble) made some great additions to their fork of this repo. Their changes include case insensitivity,
better interpretation of arguments comming from streams and a bunch more. I'll do my best to add to these significant changes in a useful way.
StreamCommandParser was written by [jongarrison](https://github.com/jongarrison) and it available [here](https://github.com/jongarrison/StreamCommandParser).

----------------------------------------
2. Based on StreamCommandParser (This repository which was active in 2020, went dormant and then is active again in 2024):
----------------------------------------
This is a basic stream command parsing library, it is based on Arduino-SerialCommand but allows use of any Stream interface that commands might come through, perhaps Serial, BLE and/or an SD card stream.
This repository is a real group effort across a number of contributors over time:

StreamCommandParser was written by [jongarrison](https://github.com/jongarrison) and it available [here](https://github.com/jongarrison/StreamCommandParser).
### 1. Based on Arduino-SerialCommand (pre 2020 contributions):

----------------------------------------
3. Based on Arduino-SerialCommand (pre 2020 contributions):
----------------------------------------
A Wiring/Arduino library to tokenize and parse commands received over a serial port.

The original version of this library was written by [Steven Cogswell](http://husks.wordpress.com) (published May 23, 2011 in his blog post ["A Minimal Arduino Library for Processing Serial Commands"](http://husks.wordpress.com/2011/05/23/a-minimal-arduino-library-for-processing-serial-commands/)).
The [original version](https://github.com/scogswell/ArduinoSerialCommand) of this library was written by [Steven Cogswell](http://awtfy.com) and published on May 23, 2011 in his blog post ["A Minimal Arduino Library for Processing Serial Commands"](http://husks.wordpress.com/2011/05/23/a-minimal-arduino-library-for-processing-serial-commands/)).

This is a heavily modified version with smaller footprint and a cleaned up code by Stefan Rado.
This version was forked from [a heavily modified version](https://github.com/kroimon/Arduino-SerialCommand) with smaller footprint and a cleaned up code by Stefan Rado.

### 2. Refactoring from [qCommand](https://github.com/qnimble/qCommand):

[ben-qnimble](https://github.com/ben-qnimble) made some great additions to their fork of this repo. Their changes include case insensitivity,
better interpretation of arguments comming from streams and a bunch more. Some of these are refactored here.
These two library will however stay separate as qCommand creates additional undocumented dependencies.