I've previously been able to build projects, but now have the following problem.
Creating a project from the Gecko OS Studio or when cloning an existing project (blinky), without making any changes to the project I receive an immediate build error.
Steps to reproduce
1. Launch Gecko OS Studio
2. Projects->Clone Project
3. Select blinky and click Clone
4. Studio provisions the necessary files
5. Click Open in IDE
6. Right Click on the blinky project->Build/Download/Run
7. Receive the following build output
15:44:17 **** Build of configuration Standard Build for project blinky ****
/Users/<removed>/gecko_os_workspace/blinky/make.sh download run all
tools/build_system/gecko_os/makefiles/parse_makegoals.mk:123: *** missing separator. Stop.
15:44:17 Build Finished (took 187ms)
I then tried Gecko OS Studio->Settings->Clean Tools and SDK, deleted the ~/Library/Application\ Support/Gecko\ OS\ Studio, and deleted the /Applications/Gecko OS Studio
I then reinstalled and had the same issue.
Gecko OS Studio Version 0.9.24 (0.9.24.78)
By the way, the same steps above work correctly on the same version of Gecko OS Studio on a Windows 10 machine
i had a look on all documentation to the WGM160P module. I planned to program a bare metal code that implements the wfx-fullMAC-driver (https://github.com/SiliconLabs/wfx-fullMAC-driver) but I don't now the internal wiring. Is it possible to get to know which pins are used internally to connect RESETb, WUP, HIF, LP_CLK and WIRQ which are mentioned inside the WGM160P datasheet (https://www.silabs.com/documents/public/data-sheets/wgm160p-datasheet.pdf)? I haven't found any documentation.
Thanks a lot.
To connect with server via websocket i have to point communication protocol through header "Sec-WebSocket-Protocol". How to setup it before i do connect? If i won't do that sever will deny connection. I found gos_websocket_header_t structure, but i have no idea how to use it. There is no example. In each function to setup http/websocket header it is mandatory to pass connection handle.
I use the WGM110 in NCP mode, with an external host processor connected via a UART. Occasionally it'd be useful to offload certain functions to a script on the module itself - for example, to handle a remote device frequently polling the WGM110 for data without having to interrupt the host.
I've never been able to find a clean way for the host to communicate with a script, though. I do use a script just to keep track of the revision number for the combination of WGM firmware and static web content, and it communicates with the host using the persistent store commands. Since all BGAPI endpoints see all BGAPI responses, the script just reads a PS key, checks to see if it matches its version number, and if not it writes it again. The host can either pull the PS key directly or just watch for the result of the script's PS read.
That works fine, but the persistent store has limited endurance and could only pass a small amount of data that way. Is there any other mechanism for communicating with the script? I think all I really need is a reflector - some BGAPI command that simply echoes the contents of the packet back as a response, to all endpoints. Of course, the ability to limit it to a specific endpoint would be better, but I'll take what I can get.
I do not think the ZentriOS SDK is supported on the AMW136-E03 Mola evaluation board because I downloaded the ZentriOS SDK given in this link : https://docs.zentri.com/zentrios/wz/latest/sdk/user-guide/getting-started and connected the Mola board to my PC via the USB cable given but when I tried to go to the ZentriOS tab to setup my device, I cannot detect my device. I have attached a picture showing the error. What is the problem there?
My goal is to write a programme that samples the voltage of a battery at a certain sampling rate so I would like to write an app or programme that uses the ADC the way I desire via the IDE provided. However, I do not know why my device cannot be detected. I downloaded the terminal Teraterm and it tells me that my board version is ZentriOS-W-126.96.36.199.12. Is that the problem? If it is, is there any other method in which I can program the ADC? Thank you.
I am using ZENTRI-AMW006-188.8.131.52 and have been successfully configured it to be a TCP client.
My configuration is that we have multiple ports open and we manage the communication through command mode.
I have a custom 10ms task that sends "poll" command to different ports and I would send "read" command if we know there's data to read.
Most of the time it is working as expected but occasionally we come across an odd response from WIFI module.
The odd response happens after sending "poll" command and we find that there's data to read. So I send "read" command to get the data.
I usually expect a reply of "> some data\r\n" but occasionally we receive "> > " and nothing else.
I can send a different command after this so it's as if the module ignored my "read" command or there was actually nothing to read.
I can add a special case to filter this out but I would like to know why this could happen.
Has anyone come across an issue like this or have any idea why I get an odd response occasionally?
Thanks in advance!
Currently, WGM110 is station mode and connected to an AP. And a host PC is connected to AP as well. The host PC send and receive data with WGM110 through UDP protocol (because making TX only, RX only). I checked the data flow on the host PC with WireShark.
EMC test lab asked me to disable data transmit because they wanted to see intentional radiation Rx noize and did it with UDP protocol. When I checked data flow with WireShark, there is no more data except UDP RX data. However, EMC test lab just told me some transmit data was captured.
Is there any possibility WGM110 send data to AP during UDP receiving data transaction? To check connectivity? If yes, how can I make WGM110 silent, I mean getting only Rx data?
Thanks in advance.
No search result about EN 300 328 for WGM110.
EMC test lab asked to get EN 300 328 test report of WGM110. How can I get the report from Silicon Labs? or is it exist for WGM110?
Thanks in advance.
I am passing data to wgm110 using uart
endpoint_data event is used to capture data and update webpage....
get request from webpage is generate for every 1 sec...
data calculations are done in host mcu.
I'm interesting in the WGM110 module to be used with an external host that implements some IOT protocols (so WGM110 has to act in NCP mode)
I'm also interestaing in the HTTP server functionality of WGM110 for some initial customer configurations of a local machine.
I've downloaded some documantations from Silicon Labs site trying to study how the HTTP server on WGM110 works (e.g. AN967) and how to customize the HTML pages.
So I would like to check with you if my understanding is correct.
Do I need to use SDK to properly configure WGM110 in NCP mode and download my HTML pages into WGM internal flash ?
I neeed to implement dynamic web-pages: is this implemented with evt_https_api_request/evt_api_request_data and cmd_https_api_response/cmd_https_api_response_finish events and commands?
It's not totally clear to me hoe to initialize an HTTP server.
From BGLIB API RM I would expect that HTTP Server commands are enough, but from AN967 I see that tcpip_dsnsd_xxx commands are used .
Since HTTP get/post has to be forwarded to my application, do I need also to make use of DNS configuration commands ?
I am using EFM32GG11 as host MCU. WGM110 is generating api_request,api_header events as I see in BG tool .I can receive api_header request and api_request events simultaneously i.e, wifi module generated multiple events...I need to receive api_request events but I am receiving api_header_request
how to handle these multiple events
Can anyone help..
I have some questions
2:WGM110 supports raw TCP , also Websocket?
3:Http(RestAPI) protocol charge of resource transmission,eg. CSS,HTML files, between browser and WGM110. can I in the same time use HTTP and TCP in WGM110? if can,what should I do for destination of endpoint ?
Communication interface: MCU <---- BGLib API through SPI ---> WGM110
First, I tried to implement an FTP server with WGM110. The directory navigation worked and small data file can be transferred but there are some issues with big file handling. FTP server applications (FileZilla and others) start sending data before WGM110 is ready. So, WGM110 lost lots of data. From this difficulty, I decided to go to plan B to transfer files, that is https.
I had been using some TCP servers, TCP clients, and UDP clients with WGM110 and simply added a TCP server endpoint for https and found some issue. It looks Chrome or other browsers send more than 255 bytes to get a web page from WGM110 but WGM110 can handle up to 256 (it seems actually 252 bytes). So, split chunks of data were delivered to external MCU. So far no problem, but the split data sometimes didn't start HTTP commands such as "GET", "PUT", "POST", "upload". The commands were in the middle of the data.
I think the reason why I use module is to make my life easy. so I believe I am going the wrong direction, which means there could be an easy way to implement https with WGM110. I found https command from API manual but I am not sure how to use those. Could you someone advise me where I can find an example of HTTPS command API managed by host MCU? And Is to create TCP server the right way to implement HTTPS?
Thanks in advance.
We have custom hardware where an AMW006 is wired to a microcontroller. The product has been in production for a few years and is working well except for an occasional issue where the module is no longer associated to an access point and it appears that it is not trying to re-associate. My plan to correct this situation when it occurs was to simply assert the RESET_N pin to force a reboot. I changed our code and ran this for a day of testing but when I tried running the board the next day I was no longer getting any output from the module even after performing a factory reset using the RESET_N and GPIO_0 pins. I did handle the board in between so there is always the chance that I caused some damage with ESD and I would just like to be sure that resetting this way is not going to create a problem in the field.
We have ZentriOS 3.3.2 on most of the boards. They are set up to auto join indefinitely, bus mode is set to stream and there is a GPIO controlled network connection configured. No commands are issued anywhere near the time of resetting. So my questions are:
1) Is it safe to reboot the module in this way assuming that no file saves are being peformed at the same time?
2) When I reset the board I assert RESET_N for 10 ms and then release the module from reset. Is that sufficient or should I hold it in reset for longer than that?