Official Blog of Silicon Labs

    Publish
     
      • REVIEW: EFM32ZG STK + Weatherstation Expansion Board

        michael_k | 08/238/2014 | 04:44 AM

        1. Expansion Board Components

        The two main parts of the board are the Si7013(U2) which is a Humidity/Temperature Sensor and the Si1145(U4) which is a Proximity/UV/Ambient Light Sensor. Both of them have got a I²C interface. Furthermore there are two other chips on the board. The first one is a boost converter(U6) which boost the 3.3V up to 5V. This higher voltage is needed for the three IR – LEDs(DS1-DS3). There are also 5V available from the expansion connector but they are provided over USB and when your application is powered from a battery, there are only 3V so you need a step up converter. The second IC is a serial EEPROM(U3). There is even a footprint for a further chip on the board but this one isn't assembled. Furthermore there are three connectors on the expansion board. Two of them are the 20 – pin expansion connectors(JP3,JP4) and the third one is ribbon connector(J6) for other I²C sensors. Moreover there are two pins “TP1” and “TP3” for connecting an external thermistor.

         

        2. Getting Started

        1. connect the expansion board with the Zero Gecko STK

          make sure that the power switch of the STK is on the right position (DBG)

        2. connect the Starter Kit with your computer via USB

        3. start the Simplicity Studio

          or download Simplicity Studio from SiLabs website http://www.silabs.com/products/mcu/Pages/simplicity-studio.aspx

          and install it

        4. select the correct MCU (EFM32ZG222F32)

          you don't have to type it in, only click on “Detect Connected Device” and select the STK and press “OK”

        5. open the tool “Demos” and select “STK3200 weatherstation”

        6. choose if you want to Run the demo under Energy Profiler or not.

        7. Press “Start”

        8. the Simplicity Studio will then flash the demo program to the MCU

        9. If you ran the demo under Energy Profiler, you are now able to analyse the power consumption of this application. Unfortunately the code correlation does not work with the Zero Gecko STK, because the ARM Cortex – M0+ does not support it.

         

        3. Weatherstation Demo

        To start the application you have to follow the instruction on the LCD. You can press PB1 or hover your hand over the sensor board. In this mode, the power consumption of the application is much less than in active mode (~130µA). If you started the demo by one of these two actions, you are now able to switch between three windows: Temperature, Humidity and UV Index.

        You have to move your hand from left to right or from right to left over the sensor board. It's also possible to use PB0 to switch between the windows. You can also switch the unit in the Temperature window by swiping down. When the application is running, the current consumption is about 3.6 mA.

         

        weatherstation_current_all_AEM.png

         

        If you don't move your hand over the sensor board for a while, the demo will go into sleep mode to save energy. To exit this mode you only have to do the same as before. It's also possible to power the demo with a CR2032 coin cell. The program will even tell you if the voltage of the battery is too low.

         

        weatherstation_current_sleep_AEM.PNG

         

        4. EFM32TG STK + Weatherstation Expansion Board

        It's even possible to use the demo board with a Tiny Gecko Starter Kit if you have one like me. I chose the Tiny Gecko because I'm using it in my diploma project and I possibly use the Si7013 and the Si1145 as well.

        There is the same example available for testing the demo board with the Tiny Gecko STK. The Tiny Gecko demo even displays the level of the supply voltage by the little battery symbol on the display.

         

        demo_boards-cropped.jpg

         

        demo_display.jpg

         

        I wrote a simple demo program for the Tiny Gecko STK, which displays the relative humidity and the temperature on the LCD.

        Program flow:

        1. initialization

        2. start LETIMER interrupt

        3. enter EM2

        4. wait for interrupt

        5. when an interrupt occurs

          read out Si7013, update LCD

        6. enter EM2

        The LETIMER interrupt occurs every 8 seconds. The average current consumption of one period is about 17µA.

         

        efm32tg_si7013_AEM.PNG

         

        The interface of the Si7013 is very similar to the SHT25 which I used before. So it was very easy to implement the sensor in my own demo application.

        Furthermore I have noticed one difference. If you want to read out RH & T from the Si7013, you only have to measure RH and then you can read out T without the use of an extra measurement. Because T is also measured when you measure RH. So the I²C communication is shorter than with the SHT25.

      • Intern Blog: "Congratulations! You're our guinea pig!"

        aap | 08/213/2014 | 04:10 PM

        “We’re so excited to have you! We’ve never had an intern before! You’re our guinea pig!”

         

        I walked in my first day with zero office experience, a LOT of nerves/excitement, and the vague expectation of doing some tech writing. I didn’t expect the work I would be doing, just how MUCH I would be learning… or the team I would be joining.

         

        The greeting should have been a heads-up I was joining a pretty unique group. Here, fine-dining Italian restaurants and apocalyptic conversations are considered the perfect team-building experience. (How will it all end? Global warming? Overtake of technology? Planet of the Apes scenario?) Bringing an original end-of-the-world theory is an expected contribution. If this should fall too far out of your comfort zone, NASA and Star Wars are also acceptable topics.

         

        My Work:

        Technical writing. We’re responsible for the production/publication of all technical documentation (data sheets, app notes, etc.). Here, the engineers of the product write first drafts of the content. It’s then sent to us, where we copy the content into our system, format, edit, make suggestions, and return to the engineers. This cycle continues until both groups are satisfied with the document.

         

        What I Learned:  

        1. Good communications skills are a necessity!

        2. Be flexible. The unexpected happens.

        3. In addition to editing/writing skills, knowing the main software used in the field is crucial. My group seems to constantly be learning a new software, or new aspects of the same programs. (Since coming here at the beginning of summer, I have learned Adobe Framemaker, easyDITA, Visio, Oxygen, Homesite, Eclipse… there’s probably more, these are just the main programs.)

        4. Spontaneous afternoon coffee runs with co-workers are one of the best parts of the day!
          Start keeping a close eye on Lync around 2pm!

        5. It’s a LOT more than just writing/editing/formatting! Knowing how to code is also important. The members in my group are responsible for keeping the webpages with our documents updated. They are also moving into an XML-based software system (easyDITA) for document content.

        6. Your co-workers are a key part of how you feel about a job!
          To my group... (You’ll know who you are when you read the team lunch description.)
          You guys are fantastic!!! Thanks for all the encouragement, learning, jokes, and laughter!
          And thanks to all my other super-friendly and fun co-workers! It’s been fun!