Search results

  1. onehorse

    ESP8266 Teensy add-on

    https://www.tindie.com/products/onehorse/esp8285-add-on-for-teensy-32/
  2. onehorse

    ESP8266 Teensy add-on

    Yes, it is just taking me a while to restock. Should have some more in a wekk or so. I also have an nRF52 add-on now...
  3. onehorse

    Teensy 3.6 I2S input without board

    I can tell you what I do to get 32-bit data out of the ICS43432 I2S microphone using the Teensy 3.1/2, which is quite similar to the ICS43434. First, connect 3V3/GND and then bitclock goes to pin 11, word select to pin 12, and data out to pin 13. This is the program I run, which depends on the...
  4. onehorse

    MPU9250 Add-On for Teensy 3.6

    Yes, gyro at 1 kHz, quaternion update at 100 Hz, and control loop at 1 kHz. But this is not a Madgwick fusion filter. My point was that some flying robots need greater than 50 Hz update rates.
  5. onehorse

    NXPK66 vs. STM32L4

    There is www.STM32duino.com.
  6. onehorse

    MPU9250 Add-On for Teensy 3.6

    And for the majority of applications this is just fine. But then maybe a DLPF of 20 Hz would be better.
  7. onehorse

    MPU9250 Add-On for Teensy 3.6

    I was simple saying that if I read all data at 200 Hz I am by definition reading 100 Hz mag data twice anyway. But this is a good idea, to run the mag in single shot mode and then I could run at 200 Hz. Haven't tried this yet. We are running our flight control loop at 1 kHz (yes, 1 ms loop...
  8. onehorse

    MPU9250 Add-On for Teensy 3.6

    Yes, there is a Madgwick for the MPU6050 in my github repo somewhere.
  9. onehorse

    NXPK66 vs. STM32L4

    Interestingly, the performance vs. power curves for Ladybug and Butterfly are even better since neither has a 16 MHz crystal and this consumes ~1 mA of power. In other words, I would expect the coremark numbers to be the same but the current usage to drop by 1 or 2 mA for these STM32L4...
  10. onehorse

    MPU9250 Add-On for Teensy 3.6

    I think you are right about being able to ignore this generally (I have so far). However, for flying robots respecting the DLPF delay limits is probably the wiser course. I took a look at your repository and the functions are straightforward. One thing I don't like about having the MPU6500...
  11. onehorse

    MPU9250 Add-On for Teensy 3.6

    Thanks for the link, I'll give it a try. I realized yesterday I am also doing something else not quite right. I am setting the internal sensor rate at 1 kHz, and then setting the DLPF to 41/42 Hz for the accel/gyro. This is all fine. But then I have used a sample rate divider (1 + sampledivider...
  12. onehorse

    OTA update alternative

    You could use the ESP8266 as a UART bridge to pass data between the pc and the Teensy. Here is a ESP8266 add-on board specifically made for the Teensy 3.2.
  13. onehorse

    MPU9250 Add-On for Teensy 3.6

    OK, I made some of these Teensy 3.6 add-on boards and they are now available at Tindie.
  14. onehorse

    MPU9250 Add-On for Teensy 3.6

    Missed this. Units of deltat are seconds. Generally 4 -5x the sample data rate should be sufficient. It depends somewhat on the application. Best is to try it at 5x and 10x for your application. There is a point of diminishing returns, since the algorithm will eventually asymptote to a...
  15. onehorse

    MPU9250 Add-On for Teensy 3.6

    I don't have these on Tindie yet, if I get some time I might assemble a few and make them available. I see no reason these won't work on the Teensy 3.5 and 3.6. The 2 x 6 pad version I designed for the Teensy 3.1/2 will definitely not work on the Teensy 3.5/6.
  16. onehorse

    MPU9250 Add-On for Teensy 3.6

    No measurements I am aware of. So if you could do some that would be interesting to me. In particular, if you use something like Madgwick or mahony sensor fusion, how does the heading estimation change when using the SD card? Does the heading spin around wildly when reading writing or is the...
  17. onehorse

    MPU9250 Add-On for Teensy 3.6

    Well there are several parts to answering this question. Firstly, for any application whether near transient fields or no, good calibration of all sensors is essential to get the best performance from sensor fusion of any kind. With good calibration, especially for the mag and accel, one can...
  18. onehorse

    Dual GPS-RTK using teensy 3.6 ?

    We use this in the presence of multi-amp-current-carrying wires and brushed DC motors with strong and varying magnetic fields and manage 2 degree heading accuracy. This plus DPGS would make for a passable autonomous vehicle. Our plans include this IMU plus a small GPS on the vehicle, and both on...
  19. onehorse

    Best H-Bridge to run motors with Teensy 3.1

    Looks like it will work for your 12 V motors.
  20. onehorse

    Best H-Bridge to run motors with Teensy 3.1

    Those are not H-Bridges, the board connects motor Vin to Teensy Vin and the Teensy cannot handle 12 V. Not a good choice for 12 V. These might be better since they are H-bridges but you will have the same problem and these have a max Vin of 11 V. If you have to drive 12 V DC motors you will have...
  21. onehorse

    MPU9250 Add-On for Teensy 3.6

    No filtering on the mag. You can do so on the host. I update the sketches when I find errors but they are not canned programs right for every application so use at your own risk. The Madgwick function expects: Madgwick(Naccel, Eaccel, Daccel, Ngyro, Egyro, Dgyro, Nmag, Emag, Dmag); where...
  22. onehorse

    MPU9250 Add-On for Teensy 3.6

    Not sure what you mean. The Teensy 3.6 add-on board doesn't match anything really, being a new design specifically for the Teensy 3.6 pin pad arrangement, which is quite different from the Teensy 3.1/2. The devices are the same though and almost any Teensy 3.1 program designed to operate these...
  23. onehorse

    MPU9250 Add-On for Teensy 3.6

    Just for completeness I ran the same tests at 1 MHz I2C clock speed and got about a 10% increase in fusion rate, but I discovered something not quite right about the way I was handling the Madgwick fusion iteration. I think this is more correct: void loop() { // If intPin goes high, all...
  24. onehorse

    MPU9250 Add-On for Teensy 3.6

    Well, I've been struggling with how best (most efficiently) to read the mag data and on this iteration (I guess I should have posted the entire sketch) I removed the data ready test from the mag data read function (I still check for overlfow) and I am relying only on the data ready read in the...
  25. onehorse

    MPU9250 Add-On for Teensy 3.6

    I was polling the magnetometer outside of the accel/gyro interrupt-driven portion of the loop which means I was reading the mag status register each time through the loop which is really dumb and wasteful. Here is the better way to do it: // If intPin goes high, all data registers have new...
  26. onehorse

    MPU9250 Add-On for Teensy 3.6

    I finally got around to designing and testing a MPU9250+MS5637 add-on for Teensy 3.6. It was a challenge to design a board with a 2 x 5 pattern of pads rather than the 2 x 6 pattern available on the Teensy 3.1/2. I kept the board two layers since I wanted to take advantage of the 0.8-mm-thick...
  27. onehorse

    Project Cyborg Ears - wearable 'DSP hearing experience' platform

    I will just mention that the STM32L4 is a viable option for sophisticated audio processing but some API development will, of course, have to be done. It has two SAI (I2S ports) engines with a wide array of rates and formats available, and it is likely much of what you want to do can be...
  28. onehorse

    ADS1115 lib with SCL1/SDA1 on teensy 3.1 issues

    Not:Wire.begin(I2C_MASTER, 0x00, I2C_PINS_29_30, I2C_PULLUP_INT, 400000); But:Wire1.begin(I2C_MASTER, 0x00, I2C_PINS_29_30, I2C_PULLUP_INT, 400000);
  29. onehorse

    MPU-9250 Teensy Library

    On the MPU9250 Mini boards, you can solder the three-pin jumper closed to enable the on board 4K7 I2C pullup resistors. These boards are hard-wired for I2C. At 400 kHz this is plenty fast for any application I am aware of, and I have run these boards at 1 MHz using the i2c_t3.h library with no...
  30. onehorse

    ADS1115 lib with SCL1/SDA1 on teensy 3.1 issues

    Need to use Wire1 for pins 29/30 with the i2c_t3.h library. And do not use the internal pullups, should have external 4K7 pullups. There is a nice description on how to use the i2c_t3.h library; maybe a moment to read it would help...
  31. onehorse

    9- and 10-DoF LSM9DS0 shield for Teensy 3.1

    I finally got some time to check this using the LSM9DS0 that has been stuck on the back of my workhorse Teensy 3.1 for more than two years. I used this sketch, where I had to correct an error in the FIFO initialization (FIFO mode to the intended STREAM mode) in the gyro calibration routine but...
  32. onehorse

    9- and 10-DoF LSM9DS0 shield for Teensy 3.1

    The above code snippet also uses the rotation matrix constructed from the Madgwick (or Mahony) quaternions to get yaw, pitch, and roll. There really is only one way to do this so I am somewhat surprised the Prop Shield code gives a different result.
  33. onehorse

    9- and 10-DoF LSM9DS0 shield for Teensy 3.1

    I just suggested you use the visualization GUI so you could see how well your mag calibration is working. I didn't expect you to port the NXP code over... Here is what I am using lately: a12 = 2.0f * (q[1] * q[2] + q[0] * q[3]); a22 = q[0] * q[0] + q[1] * q[1] - q[2] * q[2] - q[3]...
  34. onehorse

    9- and 10-DoF LSM9DS0 shield for Teensy 3.1

    I'd recommend the mag calibration GUI used for Paul's prop shield to be sure... This kind of cross talk is normal using an uncalibrated or insufficiently calibrated LSM9DS0. I would also switch to the MPU9250, but that is just me...
  35. onehorse

    9- and 10-DoF LSM9DS0 shield for Teensy 3.1

    Magnetometer calibration is essential if you hope to have any kind of reasonable orientation estimation. I am not surprised you are seeing these effects of no mag calibration then.
  36. onehorse

    9- and 10-DoF LSM9DS0 shield for Teensy 3.1

    I find it very hard to understand what you are doing here, but i notice you are calling this function: MahonyQuaternionUpdate(ax, ay, az, gx*PI/180.0f, gy*PI/180.0f, gz*PI/180.0f, mx, my, mz); and passing it what I would assume are scaled sensor data. The problem is for the LSM9DS0 the...
  37. onehorse

    9- and 10-DoF LSM9DS0 shield for Teensy 3.1

    Could be poor sensor calibration (likely) or that you are passing the sensor data to the fusion algorithm inconsistently. Without a look at the board and code, it's hard to be sure.
  38. onehorse

    how warm the teensy 3.6 gets

    Yeah, the 3.6 at 180 MHz is using 70 mA with a blink sketch, quite impressive. You can lower this to ~40 mA is using WFI.
  39. onehorse

    New I2C library for Teensy3

    Hi Brian, This works now with an I2C frequency of ~428 kHz: I2C clock rate = 428571 Hz F_CPU =96000000 ARDUINO =10608 F_PLL =96000000 F_BUS =48000000 F_MEM =24000000 NVIC_NUM_INTERRUPTS =95 DMA_NUM_CHANNELS =16 CORE_NUM_TOTAL_PINS =34 CORE_NUM_DIGITAL =34 CORE_NUM_INTERRUPT =34 CORE_NUM_ANALOG...
  40. onehorse

    New I2C library for Teensy3

    36 MHz with 300 kHz is also a 120 divide...
  41. onehorse

    New I2C library for Teensy3

    Had my wifi wig out there for a moment... The F_BUS is 96 MHz when I set 96 MHz for the CPU speed and 72 MHz when I set the CPU to 72 MHz. Interestingly, when I set the CPU speed to 96 MHz the 400 kHz (400 kHz) I2C setting causes the sensor to stop during the first data reads, but when I set it...
  42. onehorse

    New I2C library for Teensy3

    Not sure how to check what F_BUS is. It is the default, I mean I do not particularly set it in my code. How can I query the value?
  43. onehorse

    New I2C library for Teensy3

    I am suspecting a hardware issue. I went back to v.08 and also could not get it to work at 400 kHz, but it did at 100 kHz and 1000 kHz again. I went back to v.09 and was able to get it to work at 350 (352 kHz) and 450 (461) kHz but not at 390 (400 kHz) or 400 kHz (400kHz) where the frequencies...
  44. onehorse

    Introduction and AMSYS AMS 5812 and AMS 5915 Libraries

    Use a TCA9548A I2C multiplexer and you can put up to 64 I2C devices all with the same address on the same bus.
  45. onehorse

    New I2C library for Teensy3

    Well this is odd, I got some new BNO055 breakout boards from China (my design, should work well, with 4K7 pullups on the board ) and tried one out using a Teensy 3.1 and I can read both of the I2C addresses (BNO055 has one and BMP280 has one), and I get the right WHO_AM_I from all devices and...
  46. onehorse

    Any Chance of a Teensy ++ 3.1?

    When possible it is always faster and more efficient to use the interrupt. This works on almost all MCUs, and I have noticed significant speeds up on the ESP8285 as well even without DMA. Sparkfun's MPU9250 breakout is inexpensive but they made several mistakes in the hardware design including...
  47. onehorse

    NXPK66 vs. STM32L4

    The STM32L4 uses wait-for-event (WFE) in delay which means, essentially, that the CPU enters a very low power mode automatically unless something is happening that warrants its attention. I don't know if something like this can be done on the K66. There are a lot of hardware architecture...
  48. onehorse

    NXPK66 vs. STM32L4

    There are standard benchmarks for performance (DMIPS, COREMARK) and power usage (microA per MHz) each chip manufacturer touts for their products. What matters to me as a dummy Arduino user is that the same sensor management and sensor data fusion tasks can be achieved at the same rates but with...
  49. onehorse

    NXPK66 vs. STM32L4

    The whole point of these simple tests is to measure the power usage and performance in the default condition. I am not trying to minimize power here, since in this case there are all kinds of methods available for both devices including using lower CPU speeds, using low power modes of the MCU...
  50. onehorse

    NXPK66 vs. STM32L4

    I finally received a Teensy 3.6 to beta test (thanks Paul and Robin!), was able to quickly configure the Arduino IDE to load programs and started playing around with it. It's beautifully engineered, small, peripheral rich and easy to use. I joined the Kickstarter and bought a few more. The...
Back
Top