Agree completely with everything you mention. It is very application dependent and you need to pick the sensors and the time update / measurement update scheme to match dynamics. I'll try to remember...
Type: Posts; User: brtaylor
Agree completely with everything you mention. It is very application dependent and you need to pick the sensors and the time update / measurement update scheme to match dynamics. I'll try to remember...
That is a possibility, I recall that there is a cutoff where older GPS receivers don't work with the newer library (the biggest offender IIRC is that uBlox changed the size of the UBX-NAV-PVT...
I've had plenty of luck estimating attitude, inertial velocity, and inertial position of manned and unmanned aircraft with MEMS sensors and GNSS aiding. To be clear, the EKF is only using the GNSS...
A lot of your errors are build-system related. The error below is indicating that you don't have C++14 or newer available with the compiler.
C:\...\libraries\units-main\src/constants.h:44:20:...
Are you using Arduino with Teensyduino for compilation?
I've lost track of the uNavINS code on this forum, but the EKF was rolled into here:
https://github.com/bolderflight/navigation
...
Interesting, that's news to me that PJRC has started manufacturing both versions. I just checked the SparkFun 16771 stock that I have and it has the ethernet.
If you read the item description, it's the same as the SparkFun Mfg # 16771, which is here:
https://www.sparkfun.com/products/16771
Having recently bought a ton of these from SparkFun, it is a...
Seems like it should be fine. If you look at the library, the begin method does return an error code:
https://github.com/epsilonrt/ad7124/blob/master/src/ad7124.h#L203
Maybe check whether begin...
Taking an educated shot in the dark, but my bet is that you just need a delay before adc.begin. When you upload code, the ADC is sitting there powered for a long time before it starts receiving...
Would analogWrite (https://www.pjrc.com/teensy/td_pulse.html) do this? I recall investigating on a Teensy 3.x and finding that with analogWrite the rising edge of the PWM would be in sync for...
Hey, if you'd rather use CMake, I have a version of Teensy cores that works with CMake here:
https://github.com/bolderflight/core
The CMakeLists file pulls from this repo to configure the...
Have you installed the linux udev rules?
https://www.pjrc.com/teensy/td_download.html
The Teensy 4.0 and 4.1 only come in BGA; although, they do have 2 variants with different pitch. These are both using the IMXRT1062. The IMXRT1052 was only used for the Teensy 4 beta boards.
The...
Hi all,
Wondering if I can get a review of a (hopefully) simple design, attached below? Teensy 4 MicroMod with a micro USB and push button for programming and a SD card for logging data. VDD is...
Correct, my understanding is that Eigen creates highly optimized code, but does not leverage any chip specific instructions like the CMSIS DSP.
It's not Teensy specific, but I really like the Eigen matrix math library:
https://eigen.tuxfamily.org/index.php?title=Main_Page
I have an Arduino library to use it:...
At this point we're almost 60 posts deep into troubleshooting and haven't seen source code for debugging. Assuming that the outputs look reasonable for IMU, but not after receiving GNSS data, points...
I mean, it's just an EKF. Should work with any IMU and GPS given the correct inputs.
I doubt that my library will work with a 6M receiver. I test with a ZED-F9P and a SAM-M8Q. IIRC, there was a change in UBX-NAV-PVT packet size between the uBlox 6 and uBlox 8. I have an old uBlox 6...
Personally, I would start with Serial and see if that works well enough. You'll likely need 4 extra bytes (2 for syncing the frame and 2 for a checksum). Assuming transmission at 6Mbps, that's only...
Finally got around to updating my MavLink library so that it should now work with Arduino build systems:
https://github.com/bolderflight/mavlink
Supports the heartbeat, utility, telemetry,...
No, that's not correct. An object just sitting on a table will see an apparent upward acceleration of 9.80665 m/s/s from the force of the table supporting the accelerometer. This means that with the...
It looks like your z-axis accel is positive up instead of positive down. Your z-axis gyro and mag are also probably not correct. Looking at the data sheet, it looks like by default x is positive...
That's not a good assumption. These are all just math algorithms, which are then widely implemented into code by different people. I may choose to use a certain set of units (i.e. rad/s) for my EKF...
Hi Juan, I received your email last night. My guess is either it's a units issue or an axis issue. The expected positive axes for the IMU are positive X axis forward out the nose, positive Y axis out...
Those are the actual program files. My preference for stuff like that is /usr/local, but you'll find some differing opinions. Once you extract them, you'll want to run the install script so it can...
Here's the PR fixing these issues by reverting the commit that accidentally got included in the previous PR:
https://github.com/tonton81/FlexCAN_T4/pull/47
Shoot, that's my fault with the pull request that was incorporated. I thought I had done the PR off a clean version of FlexCAN_T4, only changing the filter masks to add a manual option. But I then...
No need to reverse engineer, the CAN aerospace protocol is widely published. Here's the spec:
https://www.stockflightsystems.com/tl_files/downloads/canaerospace/canas_17.pdf
Can you post photos of the avionics equipment? Or names and serial numbers? Not many avionics manufacturers using CAN yet, so should be easy enough to figure out with more info.
Still a work in progress, but moving forward with implementing DroneCAN on Teensy 3.x and 4.x:
https://github.com/bolderflight/dronecan
It requires our modified version of FlexCAN_T4 (for filter...
I've got it working for FIFO:
FCTP_FUNC bool FCTP_OPT::setFIFOManualFilter(uint8_t filter, uint32_t id1, uint32_t mask, const FLEXCAN_IDE &ide, const FLEXCAN_IDE &remote) {
if (...
Regarding the method names, I think this would be better (swap the name Manual and Filter to match how you're naming the UserFilter methods):
FCTP_FUNC bool...
Oh, duh, it's because for an extended ID, the bottom 29 bits are used and a standard ID is sharing the top 11 bits of that, all stored in a 32 bit wide variable. The bit shift makes sense now.
I'm going to need a way to set the ID and Mask. I'm thinking:
FCTP_FUNC bool FCTP_OPT::setMBFilterManual(FLEXCAN_MAILBOX mb_num, uint32_t id1, uint32_t mask);
FCTP_FUNC bool...
I'm working on some CAN integrations (CAN Aerospace and Drone CAN) and wanted a CAN driver that:
1. Supports Teensy 3.x and 4.x
2. Sends and receives messages sequentially
3. Supports interrupt...
Thanks, I'll take a look. It's for integration with Drone CAN, so it might be easier to change the Drone CAN side of things too. I'll dig around a bit.
I had asked in this thread:
https://forum.pjrc.com/threads/63816-Mimxrt1062dvj6a
Paul guessed that it would work and that they might even be the same chip and just binned differently. I will be...
Thanks! I really like the filtering by ID that you implemented, but I'm working on interfacing with a library, where the library is going to provide filter and mask pairs. I'll dig into the library a...
A question on using masks, from this thread (https://www.microchip.com/forums/m456043.aspx), my expectation was setting a mask of 11111111100 (i.e. 0x7FC) and a filter of 0 would let through ID's 1,...
If I do that with the following code:
#include <FlexCAN_T4.h>
FlexCAN_T4<CAN1, RX_SIZE_256, TX_SIZE_16> can1;
CAN_message_t msg;
void setup() {
Serial.begin(115200);
Based on message #905, I thought there were 32 filters available to setup. Did I misunderstand that? Thanks again.
If I run this on a Teensy 3.2
#include "FlexCAN_T4.h"
FlexCAN_T4<CAN0, RX_SIZE_256, TX_SIZE_16> can1;
void setup() {
Serial.begin(115200);
while (!Serial) {}
Some more FlexCAN_T4 questions:
1. I noticed that 128 filters are available for the FIFO, is that for both the Teensy 3.x and 4.x?
2. What is the FIFO depth (i.e. how many messages can fill the...
Thanks, I saw that post, but didn't look too closely at it, since I was assuming that they were getting UAV CAN v1 ported and Drone CAN is more similar to UAV CAN v0. I think I'm just going to try to...
Hi Mike,
I'm taking a look at this library; I'd like to update it to use DroneCAN, which is basically UAV CAN version 0:
https://github.com/dronecan/libuavcan
I'd also like to use FlexCAN_T4...
Has anyone used an LTC4311 (adafruit.com/product/4756)? Did it help extend the I2C bus?
I, anecdotally, hear people complain about I2C not working well at long distances in drones. I bought one...
Yes, see this thread: https://forum.pjrc.com/threads/57842-Future-Teensy-features-amp-pinout
Looks like you have it on pins 16 and 17 (Wire1) instead of 18 and 19 (Wire). So, you would need to modify the example to use Wire1 instead of Wire. You definitely need pullups from SCL and SDA to...
Hi,
I wrote that library. Should be as simple as downloading or cloning into your Arduino / libraries folder:
1. Our MPU9250 library (https://github.com/bolderflight/mpu9250)
2. Our unit...