11-13-2021 01:27 AM
We noticed that the Binary will not compile to processors not named in the list of compatible processors, but there are other processors which should be able to support the Binary. For instance the ATmega 2560 is named, but the ATmega 1284P is not. Can additional processors be added to the list of processors which the Binary will allow itself to be compiled into?
The 1284P contains sufficient resources to support the Binary, and in one case (RAM) more resources than the 2560 contains. It also greatly reduces the BOM cost of a product which intends to utilize the BME 688!
11-13-2021 02:31 AM
What is the binary file name you mentioned?
11-14-2021 02:05 AM
In the BSEC library, the file is Libalgobsec.a which is compiled to only work with the ATmega 2560.
Thanks for the quick response!
11-17-2021 08:03 AM
When your processors and compiler was not in BSEC supported list, please visit https://www.bosch-sensortec.com/about-us/contact/contact-form, use the contact form to submit your request and please make sure you refer to the question posed in the community.
11-17-2021 05:53 PM
Hi Robin, Submission completed.
As a note to describe the detail a little more, if the binary can be compiled for the 2560, it will successfully run on the 1284P as well. The issue at hand is that some setting has been placed in the binary to prevent it from being allowed for inclusion by the IDE when the target device does not match the 2560. The only thing needed is to change the setting which prevents it from being allowed for other devices.
The 2560 is the top end device from the line of ATmega microcontrollers. Most share the same processing power. The differences are in RAM, FLASH space, EEPROM, and pin counts. The 2560 happens to have the highest pin count, and the largest FLASH space. Flash space only needs to be sufficient, and Pin Count is really immaterial to the BME 688 operation. Based on this, there are several more microcontrollers in the same family which should be completely sufficient to work with the BME 688, and many cost a lot less. In the case of the 1284P, it is about $7 less per microcontroller depending on volume.
Another detail which is interesting to note is that the 2560 is only rated for operation from 4.5v-5.5v, while the BME 688 is rated for 1.71v-3.6v. The two ranges don't cross, requiring level shifters to step the voltages up and down, further complicating the design process with a 2560.
A 2560V is compatible to run at voltages from 1.8v to 3.6v to match the BME 688 and many other digital sensor. Other microcontrollers from this family which should be compatible and capable in both voltages and processing capability and FLASH space to support the ~60k binary include the 1284/1284P/1280/1281/1280V/1281V/2560V/2561V/128A.
Microchip's 8-bit family is outlined here: 30010135E.pdf (microchip.com)