MMA 8452 filtering

If the standard Arduino Uno isn’t powerful enough to do this kind of integration, there are quite a few Arduino-compatible boards out there that run 32-bit ARM processors. I’m a bit partial to the Teensy boards. A lot of muscle in a small package. I’ve got some Teensy 4.0 boards on order to do some CAN processing, and they are 600 MHz! Crazy.

The F9P can be talked to with ublox protocol, instead of waiting for and parsing NMEA. Can work over I2C or serial. I haven’t had any luck with the I2C stuff with Sparkfun’s library, though.

A simple ESP32 is approaching two orders of magnitude faster than an arduino in some situations.

1 Like

Nano 33 with wifi, onboard imu and the same pinout as a Nano. Only 3.3V though.

Everything is getting to be 3.3v these days. Can level shift logic voltages fairly easily if need be (another PCB revision perhaps). Most things like relays and motor controllers can probably work with 3.3v just fine.

All the faster boards and processors are 3.3v. The esp32 is probably 5v tolerant on input pins due to them being open collector. Also the esp32 has fantastic floating point speed for doing coordinate transformation and roll integrations.

1 Like

My MMA is mounted half way down on the RH side (fuse side) of the white component box. Hot glued to the box, wired with ribbon cable which also allows one with a different pinout to be used (Adafruit). It seems to produce a rock steady output. My BNO is mounted centrally at the top of the box. Again, hot glued in place. Also very very stable output. This area is at the rear right hand side in a Fendt 716 cab. Power and reset switches are on the front edge of the Fendt box. The whole thing is wired to the IBT, WAS and steer switch with RJ45 terminated Cat 6 cable. 8 conductors being just enough.

I’m really impressed with the general stability of the system. My test setup was far less well secured (basically on top of the fendt box) and the MMA output was much less stable. I guess this points towards vibration too.

IMG_7126 (1)

2 Likes

That would be nice just put in Nano 33iot or 33 BLE or 33 BLE Sense , and connect via bluetooth or wifi.(including IMU and even magnetometer for the BLE types, and the extra speed available )
Two changes needed A and B:
A: Supply 12/15v (or 5v from WAS power supply) to v-in on pin 15 , which is not connected on PCBv2. Nano 33 wants between 4,5v and 21v on v-in (Nano 33 has no connection to pin 12 or as they say, normally NC). Pin 12 position will have 3.3 v on PCBv2 when IC3 is changed as follows.

B: shift IC3 to a 3,3 v regulator in order to supply ADS1115, it can work on 2v to 5v. R-783.3-1.0 Recom Power - Voltage Regulators - Switching - Distributors, Price Comparison, and Datasheets | Octopart component search

Alternative B: cut away 5v connection line to ADS1115 and feed it with 3.3v from nano +3v3 power out.

If DOGS2 is used it must be connected as Brian suggests in the connection schematic.png, png is supplied with the AOG download.

Here they tell that md13s is 3,3v compatible. 13Amp 6V-30V DC Motor Driver

Whilst I understand the benefits of having the motor controller on the PCB I do wonder whether, given the sensitivity of the MMA and BNO, if it is not better to remotely mount it nearer the motor / valve?

I know the BNO isn’t recommended but I’ve found it rock steady mounted within the PCB enclosure. I do however use an IBT2 controller mounted well away from the PCB, and I’ve also given the IBT and electronics completely separate direct power lines.

This then means only one cable to outside (antenna) and lightweight signal wires from the PCB enclosure to WAS and motor controller. CAT6 in my case. No heavy power wires running back and to either.

1 Like

Here is a pcb that can use a Nano or a Nano33.

AutoSteer AutoSteer Schematic

1 Like

With I2C there are limits on how long the wires can be. At the highest data rate, length is really limited to about a metre. At lower data rates, it can be up to 10 metres which is more than sufficient for AOG’s purposes. I’m not completely sure what transfer rate the MMA code in the sketch is using, but probably slow enough for longer distances?

Completely Agree Alan. Mine is located in much the same place firmly attached to the cab frame. The MMA is just as stable as the DOGS2 expensive one. I have both on for testing.

In a couple days i’ll take the DOGS of the tractor as well and put it on the test platform, see if there is a difference with tapping vibrations

1 Like

I’m sorry during the conversation

Can the diyAutoSteer PCB designed by BrianTee be replaced by Arduino Nano 33 BLE?
And Is it possible to modify AutosteerPCBv2.ino and connect it to a PC as a Bluetooth virtual serial port?

I have a Windows tablet with one USB port ( as it is used for charging ),and no Ethernet port.So I want to connect with AutosteerPCB via Bluetooth.

Not sure, can you compare the pinouts?

Thanks!
Nano 33 BLE is a pin-equivalent substitute.(Except 5Vpin)
pinout map is here

Unfortunately, after posting, I learned that BLE and Bluetooth Serial Communication are different things.
But,the NANO 33 BLE also contains a LSM9DS1 9 axis IMU and 12bit ADC
It’s to be an alternative to ADS1015 and MMA,I think.
Does someone have tried?

I think nano 33 BLE is possible on pcbv2, with changes described some posts ago in this thread.
I don´t know about the virtual thing, but you can connect a GPS via bluetooth, you must find the representing com port in the Control Panel >> Device Manager >> Ports.
In danish/På dansk W10 skal søges efter enhedshåndtering, hvorefter de findes nede under porte!
Edit: BLE 5.0 that nano 33 uses is backwards compatible and can connect to older bluetooth devices with eg . BT 4.2, so after connecting nano 33 BLE to your computer via bluetooth, you can find the COM port number as described above, then open serial ports in AgOpenGps and connect to the correct com port there.

Seems like you would just be able to plug it in. It’s a really cool board.

not relevant, but which table do you use and how did you mount it?

On order from digikey :slight_smile:

Oops!
I tried to run on Arduino Nano 33 BLE.
After buying ,I noticed that it has no EEPROPM.
I need to save the settings in another way but I don’t know how to way. :disappointed:

I2C EEPROM could be the solution.

Here is the library for flash storage for 33

https://github.com/cmaglie/FlashStorage

1 Like