peakhunt / esp32_imu

9-DOF IMU using ESP32 and MPU9250
MIT License
19 stars 9 forks source link

Awesome library and example... few suggestions too #1

Open sukeshak opened 6 years ago

sukeshak commented 6 years ago

Awesome sample with some never seen before additions with Veu and the the poll.sh script :)

A suggestion would be to make it easy to integrate with any other LCD to the project. Probably use EP32_TFT_library?

I am using M5stack with ESP32_TFT_library which uses ILI9341.

Also can we remove mongoose dependency? Thanks once again for the very neat implementation ๐Ÿ‘

sukeshak commented 6 years ago

Just completed switching to ESP32_TFT_library for display. Your display is also supported by his library (ST7735) There is a conflict with list related functions from spiff library and your list.h in component folder

/components/utils/include

(I changed here for now) /components/spiffs

peakhunt commented 6 years ago

right! actually the name has been causing some naming conflicts for me too. But the list.h, which is from linux kernel source, is the best list library I've ever seen. Maybe it's time to quit on my being lazy and change the name to something like "generic_list.h". Done it.

thanks for your kind words for my hobby project in progress.

-H.Kim-

2018-06-01 0:13 GMT+09:00 Sukesh Ashok Kumar notifications@github.com:

Just completed switching to ESP32_TFT_library for display. There is a conflict with list related functions from spiff library and your list.h in component folder

/components/utils/include

  • list.c
  • list.h

(I changed here for now) /components/spiffs

  • list.c
  • list.h

โ€” You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/peakhunt/esp32_imu/issues/1#issuecomment-393563796, or mute the thread https://github.com/notifications/unsubscribe-auth/ADxHwDsV6nUhVRoyBOJG_oJMk0ulRmY-ks5t4AibgaJpZM4UU2wV .

peakhunt commented 6 years ago

not sure what you mean by mongoose dependency. I used mongoose dependency to implement JSON based WEB service implementation. If you don't need that, all you gotta do is just get rid of webserver.c from main/ (I believe so, if you know what I mean).

As for ILI9341, I'm not sure I have that LCD display.

-H.Kim-

2018-05-31 20:06 GMT+09:00 Sukesh Ashok Kumar notifications@github.com:

Awesome sample with some never seen before additions with Veu and the the poll.sh script :)

A suggestion would be to make it easy to integrate with any other LCD to the project. Probably use EP32_TFT_library?

I am using M5stack with ESP32_TFT_library https://github.com/loboris/ESP32_TFT_library which uses ILI9341.

Also can we remove mongoose dependency? Thanks once again for the very neat implementation ๐Ÿ‘

โ€” You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/peakhunt/esp32_imu/issues/1, or mute the thread https://github.com/notifications/unsubscribe-auth/ADxHwCozqjzcRqoXuVxUa_234z79UcRkks5t387PgaJpZM4UU2wV .

sukeshak commented 6 years ago

Well mongoose is not completely open source, so I try to avoid. Not very important in this context :)

I merged your project with EP32_TFT_library (link above) and replaced your LCD with this library since it supports the both ILI9341 and your ST7735 + more...

I have 3 devices running the exact same firmware... but showing different values... (IMU portion is your code but using mahony in this example) Any ideas or suggestions?

imu

peakhunt commented 6 years ago

Awesome. I donโ€™t have that many esp32 devices but it looks so cool. Maybe I gotta save up some bucks to buy m5stack too.

Regarding your question, My guess is

1 sensor alignment. This is quite important and you gotta check your mpu9250 alignment on m5stack board. In the end, you have to decide your NED(north east up or down). In my experience, this was the most confusing part.

2 sensor calibration. i donโ€™t think gyro/accel calibration plays much role here but magnetometer calibration plays a critical role. And the picture tells me roll/pitch values are relatively ok. Not sure yet but my magnetometer calibration might have some problem. Just not sure yet since the work is still in progress. Furthermore be sure to perform your tests where there is least possible magnetic inteference.

3 why donโ€™t you lay down the board flat on the surface and compare each result?

If my assumption is right, in that perpendicular position, the filtered values might not as good as you want them to be.

Btw i love mongoose (not mongoose os) and its simplicity. Good luck. Sent from my iPad

On 3 Jun 2018, at 4:21 AM, Sukesh Ashok Kumar notifications@github.com wrote:

Well mongoose is not completely open source, so I try to avoid. Not very important in this context :)

I merged your project with EP32_TFT_library (link above) and replaced your LCD with this library since it supports the both ILI9341 and your ST7735 + more...

I have 3 devices running the exact same firmware... but showing different values... (IMU portion is your code but using mahony in this example) Any ideas or suggestions?

โ€” You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

sukeshak commented 6 years ago

Thank you for the response :)

1. I will get more information on this one because their data sheet does not have much info.

2. I tried keeping the device flat when switched on and 2nd & 3rd device comes very close in values. 1st device has still issues. Will do some more testing... maybe device specific issue.

3. 1st device is still having issues. Will test this.

Have you looked using DMP in MPU9250? Guess its easier and cleaner but guess fusion is only with accelerometer + gyro.

peakhunt commented 6 years ago

Intentionally I avoid using DMP since my goal here is to come up with fully open AHRS FILTER.

Sent from my iPad

On 4 Jun 2018, at 12:46 AM, Sukesh Ashok Kumar notifications@github.com wrote:

Thank you for the response :)

1. I will get more information on this one because their data sheet does not have much info.

2. I tried keeping the device flat when switched on and 2nd & 3rd device comes very close in values. 1st device has still issues. Will do some more testing... maybe device specific issue.

3. 1st device is still having issues. Will test this.

Have you looked using DMP in MPU9250? Guess its easier and cleaner but guess fusion is only with accelerometer + gyro.

โ€” You are receiving this because you commented. Reply to this email directly, view it on GitHub, or mute the thread.

sukeshak commented 6 years ago

Ah that's nice... :)

Meanwhile, have you tried KST and Processing for visualization? https://kst-plot.kde.org/video_tutorials/

Its pretty powerful and supports Serial and JSon too... https://processing.org/