Wifi is not working on two of my boards

Today I got a weird problem.
I soldered five boards but only one of them wifi did work, two of them wifi part did not work, two of them did not work at all.
That failed two are BGA problem. I used too much paste, make it short connected, so that two failed.
But why the other two did not work?

This is ifconfig from bug one(MAC is random):

 root@OpenWrt:/# ifconfig
 br-lan Link encap:Ethernet HWaddr B2:CE:C2:57:76:D8
 inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
 inet6 addr: fd78:8004:63f8::1/60 Scope:Global
 inet6 addr: fe80::b0ce:c2ff:fe57:76d8/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:0 (0.0 B) TX bytes:1268 (1.2 KiB)
lo Link encap:Local Loopback
 inet addr:127.0.0.1 Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING MTU:65536 Metric:1
 RX packets:98 errors:0 dropped:0 overruns:0 frame:0
 TX packets:98 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:6624 (6.4 KiB) TX bytes:6624 (6.4 KiB)
wlan0 Link encap:Ethernet HWaddr B2:CE:C2:57:76:D8
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:0 (0.0 B) TX bytes:1540 (1.5 KiB)

This is ifconfig from normal one:

 root@OpenWrt:/# ifconfig
 br-lan Link encap:Ethernet HWaddr 00:0A:EB:38:0C:21
 inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0
 inet6 addr: fe80::20a:ebff:fe38:c21/64 Scope:Link
 inet6 addr: fd6a:16a0:a482::1/60 Scope:Global
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:0 (0.0 B) TX bytes:1464 (1.4 KiB)
eth0 Link encap:Ethernet HWaddr 00:0A:EB:38:0C:21
 inet6 addr: fe80::20a:ebff:fe38:c21/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:78 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:0 (0.0 B) TX bytes:26842 (26.2 KiB)
 Interrupt:5
eth0.1 Link encap:Ethernet HWaddr 00:0A:EB:38:0C:21
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:10 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:0 (0.0 B) TX bytes:1464 (1.4 KiB)
eth0.2 Link encap:Ethernet HWaddr 00:0A:EB:38:0C:21
 inet6 addr: fe80::20a:ebff:fe38:c21/64 Scope:Link
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:63 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:0 (0.0 B) TX bytes:23595 (23.0 KiB)
lo Link encap:Local Loopback
 inet addr:127.0.0.1 Mask:255.0.0.0
 inet6 addr: ::1/128 Scope:Host
 UP LOOPBACK RUNNING MTU:65536 Metric:1
 RX packets:1394 errors:0 dropped:0 overruns:0 frame:0
 TX packets:1394 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:0
 RX bytes:95424 (93.1 KiB) TX bytes:95424 (93.1 KiB)
wlan0 Link encap:Ethernet HWaddr 00:0A:EB:38:0C:21
 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
 RX packets:0 errors:0 dropped:0 overruns:0 frame:0
 TX packets:2 errors:0 dropped:0 overruns:0 carrier:0
 collisions:0 txqueuelen:1000
 RX bytes:0 (0.0 B) TX bytes:236 (236.0 B)

I think that is solid problem, tomorrow I will get off that BGA chip and then we will know what happened.

Oh, I forget to connect the antenna

7D3255A9-61F4-405A-AB66-9E24D581E176

But my computer is able to connect to it!

Miracle!!

In fact, even I did not connect any antenna to the board but there is a very very short “antenna” on board. And my computer is just 1m from that board. Then, it connected. LOL 😀

RT5350F is so hot…

Today I use a infrared thermometer on the RT5350F chip, the temperature is 68~70°C…

On the datasheet its working temperature is -10°C~55°C…

How is this possible? I did not run my customised application yet. T-T

VoCore v0.3 Wifi test success

Another good day!

I can not wait for the new 2.2nH and 2.7nH from chip reseller. So I just get two 2.7nH from my old board then solid it onto VoCore v0.3, now it works. Fantastic!

Here are some screen captures from my board:

ZakeNetwork is a HiFi router, the distance from VoCore is about 8m(-70dBm), another is about 1m(-40dBm).

Using command iw dev wlan0 scan | grep -E ‘SSID|signal’

930D92EF-2B43-47C4-882B-7801165B73C5

 

Pictures from the new wifi valid VoCore v0.3. 🙂

IMG_20140319_140046

IMG_20140319_140704

VoCore’s OpenWrt State

  PID USER       VSZ STAT COMMAND
    1 root      1344 S    /sbin/procd
    2 root         0 SW   [kthreadd]
    3 root         0 SW   [ksoftirqd/0]
    4 root         0 SW   [kworker/0:0]
    5 root         0 SW<  [kworker/0:0H]
    6 root         0 SW   [kworker/u2:0]
    7 root         0 SW<  [khelper]
    8 root         0 SW   [kworker/u2:1]
   63 root         0 SW<  [writeback]
   65 root         0 SW<  [bioset]
   67 root         0 SW<  [kblockd]
   90 root         0 SW   [kworker/0:1]
   96 root         0 SW   [kswapd0]
  141 root         0 SW   [fsnotify_mark]
  165 root         0 SW   [spi32766]
  205 root         0 SW<  [deferwq]
  256 root         0 SW   [khubd]
  331 root       884 S    /sbin/ubusd
  332 root      1496 S    /bin/ash --login
  413 root         0 SW<  [cfg80211]
  562 root      1312 S    /sbin/logd
  575 root      1512 S    /sbin/netifd
  616 root      1488 S    /usr/sbin/telnetd -F -l /bin/login.sh
  654 nobody     964 S    /usr/sbin/dnsmasq -C /var/etc/dnsmasq.conf -k
  734 root      1496 S    udhcpc -p /var/run/udhcpc-eth0.2.pid -s /lib/netifd/dhcp.script -f -t 0 -i eth0.2 -C
  760 root         0 SWN  [jffs2_gcd_mtd5]
  792 root      1160 S    /usr/sbin/dropbear -F -P /var/run/dropbear.1.pid -p 22
  797 root      1496 S    /usr/sbin/ntpd -n -p 0.openwrt.pool.ntp.org 1.openwrt.pool.ntp.org 2.openwrt.pool.ntp.org 3.openwrt.pool.
Filesystem           1K-blocks      Used Available Use% Mounted on
rootfs                    5184       268      4916   5% /
/dev/root                 1792      1792         0 100% /rom
tmpfs                    14788        44     14744   0% /tmp
tmpfs                    14788         8     14780   0% /tmp/root
tmpfs                      512         0       512   0% /dev
/dev/mtdblock5            5184       268      4916   5% /overlay
overlayfs:/overlay        5184       268      4916   5% /

vocore.bin size 2883588(0x2c0004) => download here. In bootloader, use loadb command to transfer it from local to vocore memory. Then call cp.linux 2c0004 to copy it to flash. If there already exists old linux, call erase linux to delete old one.

The offical bootloader loadb command might not working. We have to change some code on its uboot. Details here: https://forum.openwrt.org/viewtopic.php?id=44472

VoCore v0.3 solid done

VoCore v0.3 solid is done 🙂 Here is the picture.

不再有飞线的和平世界 ^_^

IMG_20140316_225525

It is night, a little dark.

I am lucky, the first time I connect it to 3.3V, success into boot loader and linux system.

Bad news is wifi do not work at all.

Good news is I just find the problem in two minutes. There are two inductance on the antenna, one should be 2.2nH and another should be 2.7nH, but the real one I solid onto the board is 2.2uH and 2.7uH…Thousand times bigger than my schematic value. The careless seller send me the wrong inductance. I have to wait them send the right one and test wifi part later.

3.3V/0.3A = 1W: run linux with wifi on/ethernet on(two ports).

3.3V/0.25A = 0.825W: run linux with wifi on.

3.3V/0.15A = 0.495W: run linux with wifi off.

 

VoCore is priceless for me.

Finally VoCore v0.3 PCB comes to my home today. Now there is no jump wire anymore.

So happy, now I have a board that I have full control on it.

I have a raspberrypi, I can not full control it and I have to buy a 30USD camera, that is expensive. I want to DIY one, but camera interface is not opened. I really hate that, I just want to control every corner of my own board. That is one important motivation for me to make VoCore. I think if you want every one to use it for study or learn programming, it is better to open them all.

But for my module, in my further plan, I will make a camera based on OV2640 or OV3660 which supply JPEG format output, the camera price will be under 10USD.

Next version should be the final version, v0.4, in that version I will use “Semi-hole technology”(searched from google, in Chinese it should be 半孔工艺) to make the board smaller. Now its size is 27mm x 27mm, a little bigger than 1RMB coin(25mm). Next version it will be 24mm x 25mm with a on board Ceramic Antenna, but I am not sure about that, I need to test on 0.3 first to make sure ceramic antenna works well on my side.

After wifi test/GPIO test and other test is done from my side, I will make about 100p, and try to sell it at 10USD on taobao/ebay. Hopefully then more people will help me develop it and make this one better or even smaller. Software and hardware will be all open forever. 🙂

This module, in some situation, it is better than arduino for study embed.

VoCore v0.3: The Smallest/Cheapest Router Module in the World :)

From my search online, now I am sure, VoCore0.3 is the SMALLEST/CHEAPEST/28GPIO&other interface Linux Router Module in the World 🙂

The price should be less than 10USD. But it can do job as a full function linux MIPS computer with wifi.

在网上搜了半天,现在我可以确定,VoCore v0.3是世界上最小的最便宜的,28个GPIO及其他的各种接口最全的Linux路由器模块。

批量生产价格应该在60元人民币以下,但是它其实就是一台带wifi的linux小电脑。

The following two files are used for personal study. If you want to use it in commerce area, please contact vonger@live.com.

以下的文件只可用于个人学习和研究。如果您需要用于商业用途,请邮件联系vonger@live.com,适量收取一些开发测试费用,如果有定制开发需求,也可和我联系。

PCB files:(PDF format)

VoCore.v0.3

SCH files:(PDF format)

VoCore.v0.3.sch

VoCore v0.2 run linux success!

IMG_20140314_103800

Waiting for new 0.3 PCB from factory…It is a long time…

So I decide to complete that “jump wire” VoCore v0.2. After several attempts, it works now!

This are some screen captures 🙂

 

Downloading openwrt to my VoCore by UART Lite.

E6FC144F-0DFB-430C-A7A2-7C04DA3A9EB8

 

Run top on board.

aaaaa