|
21 | 21 | #include "eemagine/sdk/wrapper.h"
|
22 | 22 |
|
23 | 23 | using namespace eemagine::sdk;
|
| 24 | +using json = nlohmann::json; |
24 | 25 |
|
25 | 26 |
|
26 | 27 | AntNeuroBoard::AntNeuroBoard (int board_id, struct BrainFlowInputParams params)
|
@@ -346,6 +347,7 @@ int AntNeuroBoard::config_board (std::string config, std::string &response)
|
346 | 347 | std::string rv_prefix = "reference_range:";
|
347 | 348 | std::string bv_prefix = "bipolar_range:";
|
348 | 349 | std::string mode_prefix = "impedance_mode:";
|
| 350 | + std::string get_info = "get_info"; |
349 | 351 |
|
350 | 352 | if (config.find (prefix) != std::string::npos)
|
351 | 353 | {
|
@@ -471,8 +473,22 @@ int AntNeuroBoard::config_board (std::string config, std::string &response)
|
471 | 473 | return (int)BrainFlowExitCodes::INVALID_ARGUMENTS_ERROR;
|
472 | 474 | }
|
473 | 475 | }
|
474 |
| - |
475 |
| - safe_logger (spdlog::level::err, "format is '{}value'", prefix.c_str ()); |
| 476 | + else if (config == get_info) // return stringified JSON with info from ANT board |
| 477 | + { |
| 478 | + json j; |
| 479 | + j["type"] = amp->getType (); |
| 480 | + j["firmware_version"] = amp->getFirmwareVersion (); |
| 481 | + j["serial_number"] = amp->getSerialNumber (); |
| 482 | + j["sampling_rates"] = amp->getSamplingRatesAvailable (); |
| 483 | + j["reference_ranges"] = amp->getReferenceRangesAvailable (); |
| 484 | + j["bipolar_ranges"] = amp->getBipolarRangesAvailable (); |
| 485 | + amplifier::power_state ps = amp->getPowerState (); |
| 486 | + j["power_state"] = {{"is_powered", ps.is_powered}, {"is_charging", ps.is_charging}, |
| 487 | + {"charging_level", ps.charging_level}}; |
| 488 | + response = j.dump (); |
| 489 | + return (int)BrainFlowExitCodes::STATUS_OK; |
| 490 | + } |
| 491 | + safe_logger (spdlog::level::err, "format is '{}value' or 'get_info'", prefix.c_str ()); |
476 | 492 | return (int)BrainFlowExitCodes::INVALID_ARGUMENTS_ERROR;
|
477 | 493 | }
|
478 | 494 |
|
|
0 commit comments