Wi-Fi Geolocation Watch

This posting explains how you can acquire the position information from Geolocation server and time information from NTP server using WizFi250 & WIZwiki-W7500.

Below is the system diagram.

geolo-1

 

Hardware

You need below hardware parts :

geolo-2

  • WizFi250-EVB :  WizFi250-EVB is the evaluation board for WizFi250 Wi-Fi module. As it is compatible with Arduino, it could be used for Wi-Fi Shield for Arduino boards.

geolo-3

  • Sensor Shield : On this sensor shied, various sensors are mounted. Just by plugging to the WIZwiki-W7500, you can test the all the peripherals of the W7500.

geolo-4

  • SSD1306  OLED : 128 x 64 dot matrix panel

 

Hardware Configuration

WIZwiki-W7500 board controls the WizFi250 using UART0 RX/TX/CTS/RTS pins and SSE1306 OLED using I2C SDA/SCL pins.

geolo-5

geolo-6

Compile the example codes of WizFi250 Geolocation and NTP

You can download the example code from below link.

WizFi250 Gelocation_NTP Example 

The libraries of the example are as below.

<SSD 1306 Library>

To use this SSD1306 OLED, we used the GFX Library provided by Adafruit. We also found some bugs in Display() function and sends the “Pull Request” to modify the code.

<HTTP Client>

HTTP Client library is used for transmitting or receiving the Web server request/Response messages. The example connects to the ‘ip-api.com’ server to acquire the geolocation information. If you try to connect the server with ‘ip-api.com/csv’ address, you can get the information of the country, address, latitude, longitude and Time zone in csv format.

Click below link to download the HTTP Client library.

HTTP Client

 

<NTP Client>

NTP Client library acquires the UTC information from Network Time server by using UDP protocol. The example code will connect to ‘kr.pool.ntp.org’ the Korean NTP server domain.

NTP Client

 

<Example Source Code>

WizFi250-Geolocation_NTP

 

Below is the demonstration.

WIZnet Technology Online Store (www.shopwiznet.com)

In order to purchase WIZnet produts, please visit the following links.

Network Watch with 7 Segment

This posting explains how to make the network watch with 7 segment. The watch will acquire the network time information using SNTP (Simple Network Time Protocol) and displays the current time on the 7 segment using RTC (Real Time Clock)

7 segment display is a form of electronic display device for displaying decimal numerals that is an alternative to the more complex dot matrix display. If you want to know more about 7 Segment, Click below link.

About 7 Segment (Wikipedia)

SNTP (Simple Network Time protocol) is the network protocol to synchronize the time on Internet. RTC provides the current time information. It counts the date, time, minute and second by operating independently from the MCU or CPU

Hardware

  • WIZwiki-W7500 : 1EA (Cortex-M0 Platform board)
  • Common-Anode Type, Array 7 Segment : 2EA
  • BC547 : 8EA
  • Tact Switch : 1EA
  • 220Ohm Resistor : 16EA
  • 1kOhm Resistor : 8EA
  • 10kOhm Resistor : 1EA
  • 1uF : 1EA
  • Jumper Wires
  • Bread Board

Hardware Circuit

seven_seg_1

 

As you see above circuit image, the A~G pins from 7 segment are connected to WIZwiki-W7500 in parallel. Common pins can be optionally connected 3.3V using npn transistor.

seven_seg_2

Demonstration

As you see the demonstration movie, when the WIZwiki-W7500 is reset, it acquires the time information from NTP server. If the RED LED is on, it means the time information is successfully acquired from NTP server. The time information is registered to RTC. The current time of RTC is displayed on the 7 segment.

Whenever you press the switch, the time and data information is alternately displayed on the 7 segment.


Firmware Code

The firmware is programmed on the mbed on-line compiler. If you click below link, you can get the source code.

https://developer.mbed.org/users/nanjsk/code/SNTP_7SEG_WIZwiki_W7500/

WIZnet Technology Online Store (www.shopwiznet.com)

In order to purchase WIZnet produts, please visit the following links.

WIZKon

Have you ever heard about PiKon 3D Printed Telescope? It is the Raspberry Pi based telescope made by a physicist in England, and got £5,850 funding at the crowd funding site Indiegogo.

For more detail, refer to below

Pikon 3D Printed Telescope

One day, a WIZnet engineer decided to make the similar one, WIZKon – an Internet Telescope that its platform is WIZwiki-W7500. Let’s see how he made it. It is very simple and easy to follow.

Hardware

The following board and electronic parts are required.

3d_telescope_1

  • 3D CAD File : The main body of the telescope will be made by 3D printer. You download the CAD file from the link.
  • WIZwiki-W7500 : This is the mbed-enabled ARM cortex-M0 platform board. For more detail, click Here
  • Serial Camera : LJ-DSC02
  • LENS : SSG-B51
  • ETC : Rubber bands, 2mm x 10, 20 screw bolt, wire, black thick paper, plastic support, pin header socket and etc

3D Printed Bodies

If you use above CAD file, you could get the below bodies that printed by the 3D printer.

3d_telescope_2

Serial Camera Wiring

As shown below images, connect the wires to the main board of the serial camera. We are going to use this board to compress the image data from telescope into JPEG format and transmit it to the main platform board, WIZwiki-W7500.

  • Prepare the serial camera, Wires and Pin headers.
  •  serial_wire_1
  • Take off the screws from the back panel of the camera PCB
  • serial_wire_2serial_wire_3
  • Connect the wires by soldering to the PCB as below.
  • solder_wire_4
  • solder_wire_5
  • Connect the pin headers to the end of the wires as below.
  • solder_wire_6

Mounting the Camera Module

Mount the above camera module in the middle of the telescope.

camera_bodycamera_body-1

Assembling the bodies

As shown in below images, we assemble the bodies of the telescope and lenses. For the exterior body of the telescope, we used the black paper to save the cost.

camer_ass_1

camer_ass_2camera_ass_3

Assembling Everything

camer_ass_4

WIZwiki-W7500

Connect the camera module in the body of the telescope, to the WIZwiki-W7500 as below.

mbed

Firmware

You can download the mbed code about processing the camera image and Ethernet connectivity from below link.

Mbed source code repository

Test

telescope_test

Below is the screen capture of the PC viewer. The PC viewer has been made with C#. If you need the source code, contact to ricky@wiznet.co.kr

telescope_pc

WIZnet Technology Online Store (www.shopwiznet.com)

In order to purchase WIZnet produts, please visit the following links.

WIZnet New Product “WIZwiki-W7500P”

WIZwiki-W7500

WIZwiki Platform

WIZnet WIZwiki Platform based on WIZnet’s MCU. WIZnet WIZwiki-W7500P is a WIZwiki platform board based on W7500P. The IOP4IoT W7500P chip is the one-chip solution which integrates an ARM Cortex-M0, 128KB Flash, hardwired TCP/IP core for various embedded application platform, 10/100 Ethernet MAC and PHY, and especially internet of things. The TCP/IP core is a market-proven hardwired TCP/IP stack and PHY is IC plus IP101G, an IEEE 802.3/802.3u Fast Ethernet Transcevier for 10/100Mbps. The Hardwired TCP/IP stack supports the TCP, UDP, IPv4, ICMP, ARP, IGMP and PPPoE which has been used in various applications for more than 15 years. W7500P suits users who need Internet connectivity best.

For more information, please visit: http://wizwiki.net/wiki/doku.php?id=products:wizwiki_w7500p:start.

To purchase this product, please visit: http://www.shopwiznet.com/wizwiki-w7500p.

[WIZnet’s New Product] WIZwiki-W7500ECONET

sub_banner_20151016_w7500econet_real

We are currently offering sales on our new product “WIZwiki-W7500ECONET” at a special rate just for our valuable customers. In stock and available now. No need to create an account to get this offer. Offer is only available at our online store; www.shopwiznet.com/wizwiki-w7500econet. Offer expires on December 31st 2015. The price applies to the purchase price (excluding shipping, handling, and taxes) of the products. First come, first served basis. The number of this product is limited.

 

Bus Arrival Alarm based on ARM mbed WIZwiki-W7500

Eric's Labs

Check out this awesome Instructable.

http://www.instructables.com/id/Bus-Arrival-Alarm-based-on-ARM-mbed-WIZwiki-W7500

—-

Introduction

I’ve making real-time bus arrival alarm device based on WIZnet WIZwiki-W7500 mbed IoT platform board. This device project for busy people in the morning. Perhaps, you could be more freely checking bus arrival without mobile phone for this device.

* This project made by korean. If you live in foreign country, you may need to be modified for Bus information system in yours.

Step 1: Concept

0_concept

Step 2: Parts

Grove_-_piezo_buzzer_and_Grove_connector_resizeGrove_Base_Shield_v2_no_transparency  Grove_-_4_digit_displayGrove_-_oled_display_96x96wizwiki-w7500_resize

For this Project, you’ll need next things.

  • WIZnet WIZwiki-W7500 IoT Platform board
  • Seeed Studio Grove Devices
  • A Computer connecting to Internet
    • ARM mbed platform provided Web compiler (IDE)

View original post 134 more words

WIZnet WIZwiki-W7500 Tutorial Exercise 5. Reading the analog value using a variable resistor

Outline

This is an exercise to read Analog values made by variable resistor (potentiometer). The ADC (Analog Digital Converter) module of W7500 chip embedded in WIZwiki board is used. User can learn how to read sensor’s analog output data.

What you need

  • WIZwiki-W7500
  • USB cable
  • Breadboard
  • Jumper wire
  • Rotary Potentiometer (10K Ohm)

Hardware

The Circuit

This is the circuit for this example.

Connections

WIZwiki and a variable resistor

Software

Example Code

Below are the example codes. Delete the default code and copy/paste the codes below and compile.

#include "mbed.h"
 
AnalogIn analog_value(A0);
 
DigitalOut led(LED1);
 
int main() {
    float meas;
 
    printf("\nAnalogIn example\n");
 
    while(1) {
        meas = analog_value.read(); // Converts and read the analog input value (value from 0.0 to 1.0)
        meas = meas * 3300; // Change the value to be in the 0 to 3300 range
        printf("measure = %.0f mV\n", meas);
        if (meas > 2000) { // If the value is greater than 2V then switch the LED on
          led = 0;
        }
        else {
          led = 1;
        }
        wait(0.2); // 200 ms
    }
}

How to run and test result

When you download the compiled binary to the WIZwiki board and push the reset button, check the serial port message as rotating the dial of potentiometer. You can see the measured value (mV unit) periodically.

If user rotates the dial clock-wise, the measured value will increase. If the measured value is above than 2000mV, then the LED1 of WIZwiki board turns on. If the measured value is less than 2000mV, then the LED1 turns off.

The WIZwiki board can read analog values from external circuit and convert them to digital values.

Learning Resources

Next Exercise

  • Exercise 6. Reading the temperature sensor value