Finally have MPU-9255 and MS5611 sensors working and a simple CLI on the command line. It is simlar to CLI via serial port or CleanFlight configurator.
Here is the output:
linuxflight>tasks
Task list max/us avg/us rate/hz maxload avgload total/ms
0 - SYSTEM 29 0 9 0.5% 0.5% 0
1 - GYRO/PID 748 145 848 63.9% 12.7% 743
3 - SERIAL 71 1 93 1.1% 0.5% 1
5 - RX 0 0 2147483647 0.5% 0.5% 0
linuxflight>tasks
Task list max/us avg/us rate/hz maxload avgload total/ms
0 - SYSTEM 31 0 9 0.5% 0.5% 1
1 - GYRO/PID 886 176 801 71.4% 14.5% 5864
3 - SERIAL 73 1 88 1.1% 0.5% 9
5 - RX 0 0 2147483647 0.5% 0.5% 0
linuxflight>
I'm going to switch to linenoise for controlling line processing to allow up and down errors etc.
Need to fix how average is calculated, but making progress. Need to reconnect the I/O processor to get GPS, pwm out, s.bus in, and S.Port.
The goal is to use socat where configurator is running to expose a virtual serial port and forward the packets to "LinuxFlight".
Still working on CPU performance and getting GPIO to trigger for gyro-sync.
Here is top:
Here is the CLI on the PI Zero:
The command line is using boost ASIO. Goal is to add the socat protocol so configurator can still access and configure "LinuxFlight" ;)
Yes, I'm thinking of forking the code, due to the amount of changes to the core. Right now, there are very minimal.
Next week is to rework the scheduler to be event based using epoll for timer and enqueue/dequeue event data.
ReplyDelete