I ran across this device that provides a 64 /32 bit floating point co-processor for arduino. No sure if this is needed, but I thought the scientific measurement forum might be the place to post the links.
datasheet and other info arduino related info attached
uM-FPU64 Datasheet.pdf (1.27 MB)
Arduino-uMFPU V3_1.pdf (958 KB)
Is a known device, Nick Gammon did some testing with the 32 bit nephew of this FPU.
See - Arduino Forum -
I have the 32-bit one. IMHO it isn't really useful for a 16MHz Arduino. IIRC the FPU is based on a processor whose clock is only twice as fast as the Arduino and it doesn't have floating point hardware. The thing that kills it is the amount of time required to send your data to the FPU and then get the results back. If you want to offload some computations while the Arduino does something else it might be useful.
Before you buy one read the instruction timings in the data sheet, figure out how much data you have to shovel in and out and decided whether it will save you any time.
I should mention that it has several features that I haven't used. For example the NMEA sentence parser and 2 12-bit A/D converters
I came to the same conclusion, and figured out it was better to get a faster computer with floating point in it.
Yep, or even just a faster computer without floating point hardware. The fpu emulation might be fast enough that some apps will work without fpu hardware.
For example the NMEA sentence parser and 2 12-bit A/D converters
So that would make it useful when doing some geo-math on coordinates (e.g. distance to some point calculation involves gonio)
or for analog sensors that need some math formula applied e.g. thermistors that need some 3rd degree non linear formula.
or an FFT on 2 audio channels or ...
IN short as a preprocessor before sending the data to a duino.
Yes, but I don't think it is very easy to organise it as a preprocessor between some device
and the arduino. Unless you had two arduinos, and one of them was there just
to manage the input and output of this device.
If it can do large FFT's the time saved may justify the communication overhead. If it can be programmed with user code, then it could be left alone for a while doing an expensive task of any kind.
Yes, but I don't think it is very easy to organise it as a preprocessor between some device and the arduino.
Why not? OK maybe for some, but the FPU has autonomous inputs serial?
Well I read the instructions several times and it didn't seem very clear to me. Perhaps I should
actually obtain one and get it to work.