rbroich / modair

Modular Aviation Instruments - Open Source Avionics for Microlights and other Non-Type-Certified Aircraft
GNU General Public License v3.0
11 stars 3 forks source link

The status of the project is developing | abandoned #1

Open brightproject opened 7 months ago

brightproject commented 7 months ago

Good afternoon @rbroich Your project is interesting, are you still developing it? How are things going with the AHRS / Nav module? Have you tried it in real flights? If you are interested, you can chat.

rbroich commented 7 months ago

Hello, Thank you for your interest in this project. Yes, I actively used it for quite a while until I sold the plane and moved to another country. Unfortunately this also means that the project is abandoned now. You can find a write-up of the concepts on hackaday. Kind regards

brightproject commented 7 months ago

Hello, Thank you for your interest in this project. Yes, I actively used it for quite a while until I sold the plane and moved to another country. Unfortunately this also means that the project is abandoned now. You can find a write-up of the concepts on hackaday. Kind regards

Yes, I read the concept on hackaday. From the code in the repository, I didn’t quite understand, did you get the orientation angles (roll, heading and yaw) from the MEMS gyroscope and accelerometer sensor? When I saw this diagram, I thought you doing AHRS. navigation_module_black As I understand it, the navigation module received data from MEMS sensors and transmitted them via the CAN bus to another microcontroller, which in turn displayed attitude indicator information on the display.

https://github.com/rbroich/modair/blob/master/modules/display_parallel/firmware/dspic_ntg128641a/widgets.c

Or your device did not display a picture of the attitude indicator, but only this data:

        // compass with GPS heading
        draw_compass(31,31,pid_vals[17].val);

        // fuel level: text
        LCD_string((char*)"Fuel ", 0, 117, font_sml2);
        ptr = mprint_float(tmp_str, pid_vals[7].val, 2, 2); // 48.63l
        strcpy(ptr,"l");
        LCD_string(tmp_str, LCD_X-6*4, 117, font_sml2);

        // fuel level: bottom hbar
        draw_hbar(0,123,64,5,pid_vals[7].val*100.0/50.0);

        // bus voltage: bottom right
        ptr = mprint_float(tmp_str, pid_vals[0].val, 2, 1); // xx.xV
        strcpy(ptr,"V");
        LCD_string(tmp_str, 0, 111, font_sml2);

        // h20 temp: bottom left (1 line up)
        ptr = mprint_float(tmp_str, pid_vals[8].val, 2, 1); // xx.x
        strcpy(ptr," C");
        LCD_string(tmp_str, LCD_X-24, 110, font_sml2);
        lcd_setpixel(LCD_X-6,110,LCD_BLACK); // degrees dot

        // Altitude
        ptr = mprint_float(tmp_str, pid_vals[19].val, 4, 0); // 5560 ft
        strcpy(ptr," ft");
        LCD_string(tmp_str, 32-3.5*6, 65, font_def);

        // Velocity
        ptr = mprint_float(tmp_str, pid_vals[18].val, 2, 0); // 54 mph
        strcpy(ptr," mph");
        LCD_string(tmp_str, 32-3*6, 65+9, font_def);

        // RPM
        ptr = mprint_float(tmp_str, pid_vals[3].val, 4, 0); // 2240 rpm
        strcpy(ptr," RPM");
        LCD_string(tmp_str, 31-4*4, 88, font_sml1);
        LCD_line(4,95,LCD_X-1-4,95,LCD_BLACK);
        u8 rpm_ratio = pid_vals[3].val*(LCD_X-8)/8000.0;
        LCD_line(4+rpm_ratio,97,4+rpm_ratio,94,LCD_BLACK);
        LCD_line(3+rpm_ratio,97,3+rpm_ratio,94,LCD_BLACK);

        // engine on time: bottom left (2 lines up)
        ptr = mprint_float(tmp_str, pid_vals[5].val*60.0, 3, 0); // 012m
        strcpy(ptr,"m");
        LCD_string(tmp_str, 0, 104, font_sml2);

        // Time in UTC
        u8 *fl_ptr;
        fl_ptr = (u8*)&pid_vals[20].val;
        ptr = mprint_int(tmp_str, fl_ptr[2], 10, 2); // 06:54
        *ptr++ = ':';
        mprint_int(ptr, fl_ptr[1], 10, 2);
        LCD_string(tmp_str, LCD_X-5*4, 104, GLCD_ROTATE_0,GLCD_FONT_3x5,LCD_BLACK,5);

Why was MPU6050 used in the project?

https://github.com/rbroich/modair/blob/d1b8abdae54bf87aca975da74885fdfdacb7dc6f/modules/navigation/firmware/dspic_nav/mpu6050_driv.c#L26

Do you have any photos of the display with the menu and in operation? Can you tell me what part of the circuit this is? Скриншот 24-04-2024 10 29 58 Can you also add a *pdf file of the diagram to the folder? nav_sch.pdf I'm interested in understanding your code and rewriting it for STM32 for a color display.