I am looking for an experienced embedded firmware engineer / software developer that is helping me with writing the firmware for a project based on Nordic NRF52 (main mcu/Fanstel BT832 or BT840), mpu9250 or ICM20689 (incl. DMP), vs1011e/vs1053b (mp3 decoder in slave setup), SDcard/SPI Nand flash storage, capacitive touch (msp430 I2C) and vibration (TI drv2605L).
All basic libraries and/or examples are available and will be shared upon project start. All Pin definitions and connection examples will be provided for sure too. Also I will make sure to be as supportive as possible with testing and providing feedback as quickly as possible.
I am happy to answer all questions before and while working together on this project :) Thank you already for going through this.
A) MPU9250 - motion/info from dmp and recognized movement (Algorithms already exist and will be provided!)
B) MSP430 - the capacitive input will be already preprocessed and can be consumed via I2C
C) Other devices (known Identifier; connected via BT5) that are sending signals via a BT 5 mesh network
D) Predefined Timeouts
E) Battery Status / Level / System Events
A) VS1011e/vs1053b (connected in a slave setup – play/stop mp3 files)
B) DRV2605L (using build in vibration effect library)
C) VS1011e/DRV2605 of other/connected BT devices (known identifier; connected via BT5 mesh)
Szenarios to be achieved would be:
(1) recognize input and execute output (play sound from SD Card and execute vibration) on same device
(2) recognize input (on device#1) and execute output (sound and vibration) on device#2,3,4,.... (all within mesh network or single one selected by UUID)
(3) recognize devices in range and add/subscribe to bluetooth mesh network
(4) safe significant (to be defined) processes and events in local log file (on internal SD card)
(5) upload new firmware via bluetooth (already supported by BT832/nrf52 SDK)
(6) send files/push from master (e.g PC) to device (e.g. mp3 file) and receive/pull from device to master (e.g. log file)
(7) put device in sleep mode / deep sleep mode (make use of power saving techniques of all components)
(8) wake up device on interrupt (time, Bluetooth, mpu9250, touch, battery level)
Parts of the project already exist on an arduino basis without bluetooth functionality and different components (e.g. DFPlayer Mini instead of vs1011e/vs1053b) so there is already some code existing and available that - beside the adjustments that are specific for Arduino (low power library, battery readings,...) and the different hardware components - can be reused.
I am happy to discuss all open question upfront.
The current setup was based on a SD card as storage but the final project should work with SPI Nand flash and replace the SD card fully. Questions to be solved would be:
- format SPI Nand flash with proper file system with wear leveling (FATFS?)
- allow initial upload of e.g. mp3 files to the flash (maybe using SWD through nrf52 ?)
The used flash storage for the testing hardware is the M79a from Micron (MT29F4G01ADAGDSF).
19 freelancers están ofertando el promedio de €1563 para este trabajo
Hello, I am interested in your project. I have a good expirience with Nordic, IMU (including DMP). I am using Keil and have all development boards. Best regards, Vyacheslav.
i have already worked on mpu9250 and nrf52xx series beacon and make a mesh network using it . so i can do your job within a time limit with your satisfaction .