make: ***multiple target patterns
Answer
9/30/18 7:42 PM

Dear Sir/Maam,

I am trying to run the DataLogger code provided by Bosch. I have updated it a little by removing lines that I don't intend to use. When I build the code, I get the following error:

C:\XDK-Workbench\XDK\make\mingw32-make.exe -C C:\XDK-Workbench\XDK\SDK/xdk110/Common -f application.mk debug
new_bootloader
mingw32-make[1]: Entering directory 'C:/XDK-Workbench/XDK/SDK/xdk110/Common'
mingw32-make[1]: Leaving directory 'C:/XDK-Workbench/XDK/SDK/xdk110/Common'
application.mk:390: *** multiple target patterns.  Stop.
Makefile:41: recipe for target 'debug' failed
mingw32-make: *** [debug] Error 2
 

Can you please provide assistance? In addition, I also get the error "FR_OK could not be resolved." I have read through the previous threads on that and followed the instruction, however, had no success. 

 

Kind regards,

Sid

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
9/30/18 7:46 PM as a reply to Siddarth Marwaha.
I have already tried cleaning and then building the project multiple times. However, that doesn't help. 
0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/1/18 12:02 PM as a reply to Siddarth Marwaha.

Just wanted to provide an update. I am still getting debug error but not the multiple target one. The descripition is below:

Assembling startup_efm32gg.S
Creating .out C:/Users/siddh/XDK-Workspace/GestureRecognitionFinal/debug/GestureRecognitionFinal.out
C:/Users/siddh/XDK-Workspace/GestureRecognitionFinal/debug/objects/GestureRecognitionFinal.o: In function `init':
C:/Users/siddh/XDK-Workspace/GestureRecognitionFinal/source/GestureRecognitionFinal.c:235: undefined reference to `UINT8_c'
collect2.exe: error: ld returned 1 exit status
application.mk:391: recipe for target 'C:/Users/siddh/XDK-Workspace/GestureRecognitionFinal/debug/GestureRecognitionFinal.out' failed
mingw32-make[1]: *** [C:/Users/siddh/XDK-Workspace/GestureRecognitionFinal/debug/GestureRecognitionFinal.out] Error 1
mingw32-make[1]: Leaving directory 'C:/XDK-Workbench/XDK/SDK/xdk110/Common'
Makefile:41: recipe for target 'debug' failed
mingw32-make: *** [debug] Error 2
 

 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/1/18 2:53 PM as a reply to Siddarth Marwaha.
Hello Siddarth,

I am glad to hear that you were able to solve your initial issue. Since users with similar issues might benefit from it, could you please provide more information about your solution?

Regarding your new issue, you have a lowercase letter instead of uppercase letter in UINT8_c() in the implementation file GestureRecognitionFinal.c . Simply fix the define to only use uppercase latters, such as UINT8_C() and your build should finish properly.

Please let me know if this was helpful and feel free to ask if you have further questions.

Kind regards,
Franjo
+1 (1 Vote)
RE: make: ***multiple target patterns
Answer
10/2/18 11:44 AM as a reply to Franjo Stjepandic.

Dear Franjo,

Thank you for your response. I as able to resolve that error. However, the error "symbol 'FR_OK' could not be resolved " still persists. Can you please provide assistance with that?  

Regarding the previous errors that I had mentioned, I made a silly mistake when I was including all the application source files, I am using, in the makefile. Basically, just syntax error; had forgotten to include "/". However, I did notice that cleaning and building the project over and over got rid of some errors automatically. I am not sure why is there such inconsistancy in the workbench. 

Kind regards,

Siddarth 

 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/4/18 7:07 AM as a reply to Siddarth Marwaha.
Hello Siddarth,

thank you for sharing your previous solution. This message symbol FR_OK could not be resolved sounds like a common issue with unresolved flags, which can be solved by following these steps:
 
  • Restart your XDK Workbench
  • Rightclick on your project and choose Clean Project
  • After cleaning the build, rightclick on your project again and choose Build Project
This process reloads the whole SDK, so the previous unresolved flags usually disappear.

If this does not clean the error, right click on your project, select Index and Rebuild .

Please tell me if this was helpful, and do not hesitate to ask further questions.

Kind regards,
Franjo
0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/5/18 9:09 AM as a reply to Franjo Stjepandic.

Dear Franjo,

I have followed these steps multiple times now but the error still persists. Is there any other solution availble? 

Kind regards,

Siddarth 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/7/18 5:32 PM as a reply to Siddarth Marwaha.

Dear Franjo,

In addtion, I get this following message when I flash the updated version of data logger code:

INFO | Connection to port 'COM5' established
 INFO | XDK DEVICE 1:  config.bma280_enabled: 0
 INFO | XDK DEVICE 1:  config.bma280_bandwidth: 0
 INFO | XDK DEVICE 1:  config.bma280_range: 0
 INFO | XDK DEVICE 1:  config.bma280_sampling_rate_timer_ticks: 0
 INFO | XDK DEVICE 1:  config.bmg160_enabled: 0
 INFO | XDK DEVICE 1:  config.bmg160_bandwidth: 0
 INFO | XDK DEVICE 1:  config.bmg160_sampling_rate_timer_ticks: 0
 INFO | XDK DEVICE 1:  config.bmm150_enabled: 0
 INFO | XDK DEVICE 1:  config.bmm150_data_rate: 0
 INFO | XDK DEVICE 1:  config.bmm150_sampling_rate_timer_ticks: 0
 INFO | XDK DEVICE 1:  config.bme280_enabled: 0
 INFO | XDK DEVICE 1:  config.bme280_oversampling: 0
 INFO | XDK DEVICE 1:  config.bme280_filter_coefficient: 0
 INFO | XDK DEVICE 1:  config.bme280_sampling_rate_timer_ticks: 0
 INFO | XDK DEVICE 1: bad filename in logger.ini

Can you please tell me why do I get bad filename in logger.ini?

Kind regards,

Siddarth 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/8/18 11:37 AM as a reply to Siddarth Marwaha.
Hello Siddarth,

Unfortunately, the only other alternative solution would be to go into the files throwing this error and adding the following comment in the same line the variable FR_OK is used:

// @suppress("Field cannot be resolved")

Otherwise, I recommend ignoring the error since the build is finishing without errors.

In regards to your new issue, the Data Logger demo is stating the error Bad Filename , which is indicating an error with your logger.ini file.

To further analyze this, could you please tell me, which operating system you are currently using?

Please let me know if this was helpful and feel free to ask if you have further questions.

Kind regards,
Franjo
0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/8/18 6:12 PM as a reply to Franjo Stjepandic.

Hi Franjo,

I am using 64-bit operating system with Windows 10 Home edition. Just fyi I have already followed the instructions to check for extensions and hidden files. 

Kind regards,

Siddarth 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/9/18 2:35 PM as a reply to Siddarth Marwaha.
Hello Siddarth,

Thank you for providing further information on your issue.

I assume they issue regarding the bad filename error still persists?

If that is still the case, could you please provide an outline of the content of your logger.ini file?

Kind regards,
Franjo
0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/10/18 9:27 AM as a reply to Franjo Stjepandic.

I am using the same format of the logger.ini file provided with the Data Logger example. However, I only need to record the data in json format so I have removed the part of the code corresponding to csv and custom from the example provided. The beginning part is as below:

[general]
; Specify filename in sprintf format
filename=log-%04i.json
; Output file format: [csv, json, custom]
fileformat=json
; Output data format: [raw, unit]
dataformat=unit

Kind regards,

Siddarth 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/10/18 2:25 PM as a reply to Siddarth Marwaha.
Hello Siddarth,

I tested the Data Logger demo with your json based settings and it worked without issues.

Therefore, I am, unfortunately, not able to reproduce the behavior you are describing. But I guess the error might lies in the fact, because you deleted parts of the source code of the Data Logger demo and there might be relevant parts involved.

As such, I would like you to import a new untouched version of the Data Logger demo and try it out with your configuration, without deleting parts of the source code.

Please tell me if this was helpful, and do not hesitate to ask further questions.

Kind regards,
Franjo
0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/10/18 3:41 PM as a reply to Franjo Stjepandic.

Dear Franjo,

I made the changes in a separate file. The original Data Logger demo is untouched. When I ran that, I got the same issue. 

Kind regards,

Siddarth 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/11/18 3:24 PM as a reply to Siddarth Marwaha.
Hello Siddarth,
I was able to recreate your scenario and might have found the issue and also a solution.

All looks like a decoding issue with the file logger.ini . By decoding the file to UTF‌-8, I received the same error like you did. Regarding that, please check your logger.ini file encoding by following these steps:
  1. Open the logger.ini file on your SD Card with the windows editor.
  2. Once it is opened, open the editor's menu and click on save as
  3. A popup window should open. On the bottom drop down menu encoding choose ANSI
  4. save the logger.ini file onto your SD card.
As final step, I recommend you to build your project again and flash it to your XDK once more.

Please tell me if this worked for you, and do not hesitate to ask further questions.

Kind regards,
Franjo
+1 (1 Vote)
RE: make: ***multiple target patterns
Answer
10/11/18 7:10 PM as a reply to Franjo Stjepandic.

Dear Franjo,

The data is being finally recorded. Thank a lot for your help!

I have another question. I would now like to send this saved file on SD card to the app via MQTT. What would you recommend for that? 

Kind regards,

Siddarth 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/12/18 2:45 PM as a reply to Siddarth Marwaha.
Hello Siddarth,

I am glad to hear that the change to the ANSI encoding format within the logger.ini file solved the issue and allowed to successfully write the sensor data onto your SD card.

To recommend you an efficient way for your use case for sending your saved .csv file to your app by using MQTT, I require more details about your use case itself.
Otherwise,a much easier way instead of sending the whole file at once via MQTT would be to send the sensor data directly via MQTT.
For an additional log, you can either chose to buffer the data on the SD card aswell or to skip this process entirely.
For both approaches, you could take a look at the SendDataOverMQTT example of the XDK-Workbench.

In the AppController.c file line 354 and 361 is a procedure described on how to get multiple sensor data, safe them into a buffer and publish this buffer to a topic.

Additionally, I recommend taking a look at the MQTT article at the XDK knowledgebase , which also offers a full code example.
To access this article, a free registration as knowledge base user is required. Follow up this step by a click on the top menu button KNOWLEDGE BASE . On the left menu, choose Protocols and MQTT .

Please let me know if this was helpful and feel free to ask further questions.

Kind regards,
Franjo
0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/15/18 3:48 PM as a reply to Franjo Stjepandic.

Hi Franjo,

So, for the user case, basically, I would like to be able control the XDK somehow from the app. For example, I should be able to send a message indiciating that I am interested in using, say, Acc and Gyro sensor, which then could be put into a format similar to the logger.ini file. Similarly, a message indicating that I want to conclude my session and de-initilaize the sesnors. All this happening over MQTT would be prefered. Please guide keeping this in mind. 

In addition, I have been trying to test the provided example SendDataOverMqtt and get the following error:

INFO | XDK DEVICE 1: This is a CC3100R device
 INFO | XDK DEVICE 1: CHIP 0x4000000
 INFO | XDK DEVICE 1: MAC 31.1.2.0.2
 INFO | XDK DEVICE 1: PHY 1.0.3.23
 INFO | XDK DEVICE 1: NWP 2.2.0.1
 INFO | XDK DEVICE 1: ROM 0x3333
 INFO | XDK DEVICE 1: HOST 1.0.1.6
 INFO | XDK DEVICE 1: WLANPersonalWPA2Connect : Connecting to MARRS 
 INFO | XDK DEVICE 1:  WLANPersonalWPA2Connect : Error in WlanConnect_WPA 
 INFO | XDK DEVICE 1: AppControllerEnable : Failed 
 INFO | XDK DEVICE 1: Error in WLAN package.
 INFO | XDK DEVICE 1:     Package ID: 10    Module ID: 2    Severity code: 2    Error code: 67
 INFO | XDK DEVICE 1: asserted at Filename C:/Users/siddh/XDK-Workspace/SendDataOverMQTT/source/AppController.c , line no  419

Please provide assistance. 

Kind regards,

Siddarth 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/16/18 3:10 PM as a reply to Siddarth Marwaha.
Hello Siddarth,

Thank you for providing more information on your use case. It should actually be possible to do the things you explained with the XDK.

In that regard, the XDK would need to receive commands via the topics it subscribes and then do certain things like initializing the sensors and so on.

As starting point, I suggest to implement an application, which is able to subscribe on a topic and which can process the data received from the topic.

For that, you could take a look at the MQTT article within the XDK knowledgebase .

To access this article, a free registration as knowledge base user is required. Follow up this step by a click on the top menu button KNOWLEDGE BASE . On the left menu, choose Protocols and MQTT .

Since you receive the error message Error in WlanConnect_WPA , I recommend to check that the Wi-Fi credentials are correct and also that the Wi-Fi hotspot you try to connect to allows new connections and is in range of the XDK.

Please let me know if this was helpful and feel free to ask if you have further questions.

Kind regards,
Franjo
+1 (1 Vote)
RE: make: ***multiple target patterns
Answer
10/23/18 1:33 PM as a reply to Franjo Stjepandic.

Hi Franjo,

I was successfully able to implement publishing the sensor data to the app by using the guide provided at XDK Knowledgebase. However, I am still confused as how can I receive a message from the app and store it or use that to control the xdk.  Any insights?

Btw thank you for your responses. They have been really helpful. 

Kind regards,

Siddarth 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
10/24/18 2:31 PM as a reply to Siddarth Marwaha.
Hello Siddarth,

For that, you would need an additional different topic, the XDK subscribes to. The app, on the other hand, would only publish to that topic. Afterwards, depending on the content you subscribed, you could simply implement the functionality to control the XDK. For that, you would simply need to alter the callback function, you configure for the IncomingPublishNotificationCB element of the MQTT_Subscribe_T struct.

Please let me know if this was helpful and feel free to ask if you have further questions.

Kind regards,
Franjo
0 (0 Votes)
RE: make: ***multiple target patterns
Answer
11/1/18 5:23 PM as a reply to Franjo Stjepandic.

Dear Franjo,

That worked! Thank you for your help.

Kind regards,

Siddarth 

0 (0 Votes)
RE: make: ***multiple target patterns
Answer
11/2/18 1:10 PM as a reply to Siddarth Marwaha.
Dear Siddarth,

I am always glad to help.

Please feel free to ask if you have any kind of further questions.

Kind regards,
Franjo
0 (0 Votes)