Giter VIP home page Giter VIP logo

escape32's People

Contributors

neoxic avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

escape32's Issues

After the PWM input value reach at 2200, the motor stops spining

Hardware:

ESC: T-MOTOR F35A 3-6S
Motor: F20Ⅱ KV2800
Firmware: TMOTOR2-rev10.bin

Description:

4S battery, HJ Servo Tester for PWM input. No propeller. HJ Servo Tester‘s PWM start from 800, end to 2200. The motor start to spin at PWM 1050. Motor increase spinning speed with PWM value increase, but after PWM reach to 2200, motor stop spinning. It will only start spinning after PWM input fall back to 800.

This happens almost every time, with a very small probability, maybe one in ten, that the motor will continue to spin with PWM input reach to 2200.

I have tried PWM calibration, but it seems not works. With the original BliHeli firmware, the motor can spin with PWM value at 2200.

I am very appreciate any clues or replies.

Build errors relating to libopencm3 `nvic.h` files.

Attempting to build results in compilation errors due to missing nvic.h files.

Commands used:

$ cmake -B build -D LIBOPENCM3_DIR=../libopencm3 -G "Ninja" -G "Unix Makefiles"
-- The C compiler identification is GNU 12.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - failed
-- Detecting C compile features
-- Detecting C compile features - done
-- Configuring done (0.9s)
-- Generating done (0.6s)
-- Build files have been written to: /d/Users/Hydra/Documents/dev/projects/escape32/ESCape32/build
Hydra@DESKTOP-H1JUK44 ~/.../projects/escape32/ESCape32 (master ?3)
$ cd build
Hydra@DESKTOP-H1JUK44 ~/.../escape32/ESCape32/build (master ?3)
$ make IFLIGHT2
[ 25%] Building C object CMakeFiles/IFLIGHT2-rev5.elf.dir/mcu/STM32G071/config.c.obj
In file included from d:\users\hydra\documents\dev\projects\escape32\libopencm3\include\libopencm3\cm3\nvic.h:147,
                 from d:\users\hydra\documents\dev\projects\escape32\libopencm3\include\libopencmsis\core_cm3.h:17,
                 from D:/Users/Hydra/Documents/dev/projects/escape32/ESCape32/src/common.h:22,
                 from D:/Users/Hydra/Documents/dev/projects/escape32/ESCape32/mcu/STM32G071/config.c:20:
d:\users\hydra\documents\dev\projects\escape32\libopencm3\include\libopencm3\dispatch\nvic.h:24:17: fatal error: libopencm3/stm32/g0/nvic.h: No such file or directory
   24 | #       include <libopencm3/stm32/g0/nvic.h>
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[3]: *** [CMakeFiles/IFLIGHT2-rev5.elf.dir/build.make:76: CMakeFiles/IFLIGHT2-rev5.elf.dir/mcu/STM32G071/config.c.obj] Error 1
make[2]: *** [CMakeFiles/Makefile2:1089: CMakeFiles/IFLIGHT2-rev5.elf.dir/all] Error 2
make[1]: *** [CMakeFiles/Makefile2:1122: CMakeFiles/IFLIGHT2.dir/rule] Error 2
make: *** [Makefile:566: IFLIGHT2] Error 2

See screenshots below:

image

image

Build system generates bad paths on Cygwin

From the documentation it's not clear what the supported build environments are, but when I tried to use CMake on cygwin it generates paths that the windows based arm cross compiler (from GNU Arm Tools) doesn't understand.

cygwin:

$ cmake --version
cmake version 3.25.3

Snippet from a build.make file

/cygdrive/d/Programs/GNUArmTools/active/bin/arm-none-eabi-gcc.exe $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT CMakeFiles/IFLIGHT2-rev5.elf.dir/mcu/STM32G071/config.c.obj -MF CMakeFiles/IFLIGHT2-rev5.elf.dir/mcu/STM32G071/config.c.obj.d -o CMakeFiles/IFLIGHT2-rev5.elf.dir/mcu/STM32G071/config.c.obj -c /cygdrive/d/Users/Hydra/Documents/dev/projects/escape32/ESCape32/mcu/STM32G071/config.c

As you can see, the paths are absolute and have a /cygdrive prefix, which is normal for cygwin tools which understand such paths. However the c compiler is a windows tool which usually expects paths in the form <drive>:\..., however the gcc c compiler on windows also accepts paths like /<drive>/....

arm-none-eabi-gcc --version
arm-none-eabi-gcc.exe (Arm GNU Toolchain 12.2.MPACBTI-Rel1 (Build arm-12-mpacbti.34)) 12.2.1 20230214
Copyright (C) 2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

If I run the same CMake commands on msys2 (ucrt64) the path is generated as follows:

msys2:

$ cmake --version
cmake version 3.26.4
/d/Programs/GNUArmTools/active/bin/arm-none-eabi-gcc.exe $(C_DEFINES) $(C_INCLUDES) $(C_FLAGS) -MD -MT CMakeFiles/IFLIGHT2-rev5.elf.dir/mcu/STM32G071/config.c.obj -MF CMakeFiles/IFLIGHT2-rev5.elf.dir/mcu/STM32G071/config.c.obj.d -o CMakeFiles/IFLIGHT2-rev5.elf.dir/mcu/STM32G071/config.c.obj -c /d/Users/Hydra/Documents/dev/projects/escape32/ESCape32/mcu/STM32G071/config.c

Note the /d/ prefix, which the compiler seems to understand.

I had a quick look to see if it would be possible to tell cmake to use relative paths, which would avoid the issue, but I was unable to find out how to do this.

To summarize:

  • currently building on cygwin doesn't work.
  • building on msys2 ucrt64 appears to work (but unrelated to this there are other build issues relating to libopencm3 relating to missing nvic.h files)

VTOL motor positioning on stop

Hi there, awesome work!
This is a feature request or more even a feature possibility request.

I'm looking for a way to align VTOL Quadplane Motors in flight when they are stopped. (like this: https://youtu.be/rsTkrPtcVTk?t=34) From my understanding this should be possible with a simple hall sensor+magnet (on/off input) and some software tweaks to have a slow turning movement until the hall sensor is reached?

There are very few ESCs that have this capability and none of them fit my criterias, bringing this feature to ESCape32 would be a huge win for the VTOL community, as there so much more Hardware available.

What do you think? Would such a feature be at all be possible and/or of your interest?

Thanks!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.