WAAT (Web API Aided Transceiver)
This is CAT (Computer Aided Transceiver) server which converts CAT interface to high level Web API based on WebSocket and JSON-RPC.
- Manipulate rigs easily
- Abstraction of CAT interface
- ruby1.9+
- bundler
- foreman
- SerialPort interface (for connecting PC to Rig)
ruby -v
gem install bundler
gem install foreman
git clone [email protected]:cho45/WAAT.git
cd WAAT
vim config.rb ## setup serial port and baudrate
bundle install
foreman start
WAAT wake up WebSocket server at port 51234 by default. The protocol over the WebSocket is JSON-RPC.
All protocol messages are JSON and it is compliant to JSON-RPC. Eg:
{ "id" : 1, "method" : "frequency", params: [7010000] }
{ "id" : 1, "result" : 3, "error" : null }
If the rig's status has changed, WAAT server send the status immediately. id
property in this message from server is null. Eg:
{ "id" : null, "result" : { … } }
Request to send current status of a rig.
- params: no
- returns: status object
Eg:
{ "id" : 1, "method" : "status", params: [] }
{ "id" : 1, "result" : {
"frequency" : …,
…
} }
Request to set frequency to specified value in param.
- params: frequency:int(Hz)
- returns: undefined
Eg:
{ "id" : 1, "method" : "frequency", params: [7010000] }
- params: mode:string('CW', 'SSB', 'AM', 'FM'…)
- returns: undefined
- params: power:int
- returns: undefined
- params: width:int
- returns: undefined
- params: level:int
- returns: undefined
Send raw command to rig.
- params: cmd:string, params:string, read:boolean, n:int
- returns: object
The default config.rb
is for Raspberry Pi environment with TTL UART interface (/dev/ttyAMA0).
So require setup interface and build circuit for connecting to rig as https://lowreal.net/2014/01/22/1 .
After wake up the server with foreman start
, server waits WebSocket connection. So just use WebSocket object in web browser.
var socket = new WebSocket('ws:https://raspberrypi.local:51234');
socket.onmessage = function (e) {
var data = JSON.parse(e.data);
console.log(data);
};
…
- YAESU FT-450D
- Rig capability negotiation
- More rigs support