Created a new CLI (command Line Interface) module based on C++ and uses msgProtocol for subscribing/publishing messages. This allows components (bash shell) or transports (UDP/TCP (Configurator)) to use the CLI at the same time. So, now one instance of CLI can process messages from anywhere. For example: Linux has bash shell so, it would be nice not to startup Configurator to get basic info. Use the bash shell
Here it is:
LinuxFlight>help
status - show status
help
tasks - show task stats
version - show v
LinuxFlight>status
System Uptime: 274 secondsVoltage: 0 * 0.1V (0S battery - NOT PRESENT)CPU Clock=500MHz, GYRO=MPU9250, ACC=MPU9250, MAG=AK8963
Stack size: 790724, Stack address: 0xc10b0CPU:0%, cycle time: 23226, GYRO rate: 43, RX rate: 282, System rate: 10Arming disable flags: TH
LinuxFlight>tasks
LinuxFlight>tasksTask list rate/hz max/us avg/us maxload avgload total/ms
00 - ( SYSTEM) 10 3 1 0.5% 0.5% 0
01 - ( PID) 444 22177 523 985.1% 23.7% 1270
- ( GYRO) 889
02 - ( ACCEL) 997 21337 723 2127.7% 72.5% 1822
03 - ( ATTITUDE) 99 327 14 3.7% 0.6% 5
04 - ( RX) 143 166 36 2.8% 1.0% 9
05 - ( SERIAL) 101 87 4 1.3% 0.5% 1
08 - (BATTERY_CURRENT) 149 41 2 1.1% 0.5% 0
09 - ( BATTERY_ALERTS) 4 7 2 0.5% 0.5% 0
10 - ( GPS) 99 129 6 1.7% 0.5% 2
11 - ( COMPASS) 39 22825 756 89.5% 3.4% 158
14 - ( TELEMETRY) 255 39 2 1.4% 0.5% 0
15 - ( LEDSTRIP) 101 2522 74 25.9% 1.2% 30
RX Check Function 0 0 0
Total (excluding SERIAL) 3239.9%
LinuxFlight>
Next is to get the battery voltage reporting and figure out the issue with the loading.
Might have to try the RT kernel but, first load LinuxFlight on to its own processor. Also, might have to remove CPUFREQ it is known to impact realtime performance.