Archive

Posts Tagged ‘openwrt’

Getting Started with ReSpeaker WiFi IoT Board’s Audio Capabilities, Voice Recognition and Synthesis

August 27th, 2016 8 comments

ReSpeaker is a development board combining an Atmel AVR MCU, a MediaTek MT7688 WiFi module running OpenWrt, a built-in microphone, an audio jack, and I/O headers to allow for voice control and output for IoT applications. That means you could make your own Amazon Echo like device with the board and add-ons, use it as a voice controlled home automation gateway and more. The board was launched on Kickstarter a few days ago, and already raised $100,000 from about 100 backers, but I’ve received an early sample, so I’ll provide some more information about the firmware, and shows how to use with some Python scripts leveraging Microsoft Bing Speech API.

Click to Enlarge

Click to Enlarge

You’ll need a micro USB to USB cable to connect your to computer (Linux, Windows, Mac OS…), and a speaker to connect to the board. Linux (OpenWrt) boots in a few seconds, and once it’s done all RGB LED will continuously blink.

I’m using a computer running Ubuntu 16.04, and ReSpeaker is detected by the system as an Arduino Leonardo board:

That’s optional, but if you want you can access the serial console, with programs like Minicom, screen, putty or hyperterminal and set the connection to 57600 8N1 to access the command. Here’s the full boot log:

If you think something is odd here… That’s because the serial connection will miss some characters. This happens with two computers and different USB cables. Hopefully this is either a specific issue with my sample, or if it is an issue it will be fixed by the time boards ship to Kickstarter backers [Update: The company explained me that it’s because the Atmel 32u4 and Mediatek MT7688 share the same USB port]. So instead of using the serial console, I’ll use SSH instead which means I have to connect to ReSpeaker WiFi access point first, and configure it.

LinkIt_Smart_Access_PointReSpeaker will show as LinkIt_Smart_7688_XXXXX, because the WiFi module is exactly the same as LinkIt Smart 7688 IoT board, and unsurprisingly the configuration interface is exactly the same.ReSpeaker_WiFi_PasswordFirst set the root password, and login with that password.

ReSpeaker_Station_Mode_OpenWrt_LUCIThen go to Network tab, select station mode, and connect to your access point by entering your password. Click Configure, and you’re done. As you can see on the right above, you can also use OpenWrt’s LUCI interface to configure networking.

Now find ReSpeaker IP address via your Router DHCP client list, arp-scan, or other method:

You can now connect to the board via SSH:

and use the password you set in the web interface.

Now let’s check some CPU information:

We’ve got Mediatek NT7688 MIPS24K processor as advertised, so let’s check a few more details:

The board runs Linux 3.18.23, has 7.6MB available storage, and 128MB RAM in total.

I’m not going to test the audio features with command tools, and python script, and also include a video demo at the end of this review.Since I don’t have ReSpeaker Microphone array add-on, I have to be fairly close to the microphone for it to work well, maybe one meter at most, or the volume would be really low.

I’ll start by checking audio recording and playback with any API or internet access requirements.
We can record audio with 16000 sample rate, 16 bit width, 1 channel using the following command

and play it back with aplay:

It worked OK for me, although the volume seemed quite low.

Now we can do something a little more interested as Seeed Studio develop a few Text-to-speech and Speech-to-text Python scripts. You can retrieve the scripts from ReSpeaker github account, and install one dependencies to setup the board:

The script are using Microsoft Speech API, but in theory you could use any other speech API. Since Seeed Studio has already done all the hard work, I simply applied for a Microsoft peech API key in order to be able to use the demo.

Microsoft_API_KeyThat’s free for testing / evaluation, but if you intend to use it in commercial products, or for your own case, if you use more 5,000 transactions per month, you’d need to purchase a subscription.

You’ll find three Python scripts in the directory namely: bing_voice.py, bing_stt_with_vad.py,  tts.py. Look for BING_KEY inside each script, and paste your own key.

Time to have some fun, starting with the speech to text script:

It’s pretty slow to start (about 15 seconds), and then there are a few error message, before you can see the “* recording” message, and you can talk, with Bing returning the results: “Bing:你好”. Chinese? Yep, as currently the default is Chinese, but if it is not your strongest language, you can edit bing_stt_with_vad.py, and change the language replacing zh-CN by en-US, or other language strings:

An English works too (sort of):

In the first sentence, I said “Hello World! Welcome to CNX Software today”, but it came out as “hello world next software”, maybe because of my accent, but I doubt it…

Then I wanted to try Thai language, but I got an API failure simply because the number of supported languages by Microsoft Speeach API is limited as shown in the table below.

language-Country language-Country language-Country language-Country
ar-EG* en-IN fr-FR pt-BR
ca-ES en-NZ it-IT pt-PT
da-DK en-US ja-JP ru-RU
de-DE es-ES ko-KR sv-SE
en-AU es-MX nb-NO zh-CN
en-CA fi-FI nl-NL zh-HK
en-GB fr-CA pl-PL zh-TW

If your language is not listed here, then you could Google Speech API instead, and it’s likely Seeed Studio or the community will have written compatible scripts by the time ReSpeaker boards ship to backers.

So you now know how to convert your voice to text, and you can use that text to send a web search, or toggle GPIOs, but you may also want to get an audio answer to your action, and tts.py script is there for your, and very easy to use:

It did not really feel realistic, but at least I could understand the female voice in the speakers. Looks in the script I did not see any language settings, so I assume the API will automatically detect the language, and inputted a string in French instead, and all I heard was gibberish. Finally I found that you can change the voice language in bing_voice.py script with contains most of the code:

I replaced the US female voice, but a French male voice, added a “famous French saying”:

At least it was understandable, but Microsoft has still some work to do the audio output was more like “Salut mon gars. commencer a va?”. The reason could also be that the correct writing is “Comment ça va”, but the terminal (set to UTF-8), did not let me input “ç”.

You can watch all those demo in the video below to get a better feel about the audio quality, delays, and capabilities of Microsoft Bing Speech API.

ReSpeaker WiFi IoT Board is Designed for Voice Interaction (Crowdfunding)

August 24th, 2016 No comments

More and more devices are supporting voice interaction nowadays from your smartphone to devices like Amazon Echo, but so far, I had not seen development boards specifically designed for that purpose, and that’s exactly what Seeed Studio ReSpeaker board does by combining audio capabilities, WiFi connectivity, and I/O headers.

Click to Enlarge

Click to Enlarge

ReSpeaker Core board specifications:

  • WiFi Module – Acsip AI7688 Wi-Fi 802.11 b/g/n module based on Mediatek MT7688 MIPS SoC
  • Storage – micro SD card slot
  • USB – 1x micro USB port for programming and power
  • Audio – 3.5mm AUX port, WM8960 audio codec, 2-pin header for external speakers
  • Expansion – 2x 8-pin expansion headers for I2C, GPIO and USB 2.0 host connected to MT7688, built-in microphone.
  • MCU – Atmel ATMega32U4 @ 16 MHz
  • Misc – 12x RGB LEDs, 8x touch sensors, 3 push buttons
  • Power Supply – 5V DC
  • Dimensions – 70mm diameter
  • Weight – 70 grams

The board runs OpenWrt, and uses Text-to-Speech and Speech-to-Text capabilities from Bing and Google with the company having focused on the English language so far, but you should be able to add other languages fairly easily.  A “detailed and easy-to-use” Python SDK is provided to developers, and other programming languages/options such as C/C++, Arduino, JavaScript and Lua are also available. You can find more details and source code on the Wiki.

Beside the core board, the company also offers two add-on boards such as Grove Extension board to add I2C, UART, digital or analog Grove modules to your projects, and a Microphone array board with 7 microphones and 12 LEDs.

Mic Array (Top Left), Grove Extension (Bottom Left), and (Right)

Mic Array (Top Left), Grove Extension (Bottom Left), and Meow King Drive Unit (Right)

Finally if you want something hackable, but looking more like a consumer product, Seeed Studio has partnered with Meow King Audio Electronic to design Meow King Drive Unit with a 5W speaker and taking ReSpeaker Core and Mic Array boards. ReSpeaker Core is also compatible with ESP8266 based Wio Link, and its graphical setup interface.

Some fun projects include a smart speaker answering your questions, weather forecasting decorative cloud, voice controlled meeting scheduler, talking “I’m thirsty” flower, smart photo album showing photos from a given date or event, and more…

The project has launched on Kickstarter a few hours ago, and already raised $37,000 out of its $40,000 funding target. ReSpeaker Core with a 8GB micro SD card requires a $39 pledge (early bird, $59 normal), which goes up to $89 with ReSpeaker Mic Array, and $139 with the complete Meow King Drive unit kit with all necessary boards. There are many other rewards to choose from with various sensors, bundles, etc… Shipping is not included, and adds $10 for standard shipping (Tip: select Hong Kong irregardless of your country), or $20 for DHL shipping according to their latest update. Delivery is scheduled for November 2016, except for the Meow King kit  (January 2017).

PS: I have an early sample of ReSpeaker Core board, and I’ll post a review/guide in a few days.

Zidoo X9S Android TV Box, OpenWrt NAS, and HDMI Recorder is Now Up for Pre-order for $149

August 13th, 2016 4 comments

Zidoo X9 was one the first Android TV boxes with HDMI input that supported video recording and PiP, and back in April, the company unveiled a new and more powerful model called Zidoo X9S with many of the same features, but based on Realtek RTD1295 64-bit processor, and with NAS features. GeekBuying has just informed me that they had started to take pre-orders for Zidoo X9S for $149 with shipping scheduled to start on August 31st.

Zidoo_X9S_TV_Box

Zidoo X9S specifications have slightly changed since the announcement, and the case has been redesigned:

  • SoC – Realtek RTD1295 quad core Cortex A53 processor with ARM Mali-T820 MP3 GPU
  • System Memory – 2GB DDR3
  • Storage – 16GB eMMC + SATA 3.0 external interface + micro SD card slot up to 32GB
  • Video I/O
    • HDMI 2.0a output up to [email protected]; supports 23.976 and 29.94 Hz outputs
    • HDMI 2.0 input for recording,  UDP streaming, and picture-in-picture
    • AV output (composite)
  • Audio I/O – HDMI out with 7.1 ch pass-through support, HDMI input, AV (stereo audio), 1x S/PDIF output
  • Video Playback – HDR, 10-bit HEVC/H.265 up to 4K @ 60fps, H.264 up to 4K @ 24 fps, VP9 up to 4K @ 60 fps, BDISO/MKV, etc… automatic frame rate switching
  • Connectivity – Gigabit Ethernet, dual band 802.11 b/g/n/ac WiFi and Bluetooth 4.0 (RTK8821 module) with two external antennas
  • USB – 1x USB 3.0, 2x USB 2.0 ports
  • Misc – IR receiver, VFD display on front panel, mechanical power switch, restore pin hole for firmware recovery/update, RTC with replaceable battery
  • Power Supply – 12V/3A
  • Dimensions – 187 x 127 x 27 mm (aluminum alloy enclosure)

The product runs Zidoo OS based on Android 6.0 with ZDMC fork of Kodi 16.1, as well as OpenWrt, and will ship with a remote control, an HDMI cable, a SATA cable, a power adapter, and a user’s manual.

Zidoo-X9S_Ports

It looks like both Android and OpenWrt runs on the Realtek processor, so I’d assume the latter is running in a VM or a hypervisor is used to run both operating systems at the same time. A few more details, including screenshots of the Android user interface, can be found on Zidoo X9S product page. I have not found the device for sale on other places yet, but Zidoo TV Box/NAS/Recorder should soon be found on other shops too, unless GeekBuying got the exclusivity for the launch.

Hacker H3 Smart Home Multimedia Gateway Combines Amlogic S905 and Mediatek MT7628AN Processors

August 12th, 2016 8 comments

There are plenty of Amlogic S905 TV boxes on the market, but Hacker H3 has some notable features such as an internal 2.5″ SATA bay, as well as MediaTek MT7628AN WiSoC and MT7612E 802.11ac 867Mbps chip to provide router functionality via one WAN port, two LAN ports, and WLAN.Hacker_H3

Hacker H3 media gateway specifications:

  • Media SoC – Amlogic S905 quad core Cortex A53 processor @ up to 2.0GHz with penta-core Mali-450MP GPU
  • System Memory – 1GB DDR3 @ 1866MHz
  • Storage – 16 or 64GB eMMC flash + 1x SATA bay up to 6TB
  • Network SoCs – Mediatek MT7628AN MIPS 24KEc CPU @ 580MHz + Mediatek MT7612E 867Mbps 802.11ac chipset
  • Video Output – HDMI 2.0 port up to 4K @ 60 Hz
  • Audio Output – HDMI + 3.5mm audio jack
  • Connectivity
    • WiFi 802.11 b/g/n up to 300 Mbps, 802.11ac up to 866 Mbps (AC1200 router) with two built-in antennas
    • 2x 10/100M Ethernet LAN ports, 1x 10/100M Ethernet WAN port
  • USB – 2x USB 2.0 port
  • Misc – Power button, reset pinhole
  • Power Supply – 12V/2A
  • Certifications – FCC, CE, CCC

Hacker H3 runs Android 5.1 on Amlogic S905, and some other firmware on the Mediatek processor, maybe OpenWrt. The company claims the box can be used as a smart home automation hub, as a cloud storage server using the internal hard drive, a smart wireless router, an “Entertainment box”, for smartphone screen mirroring, and so on. Details on how this is all supposed to work are unfortunately missing.

Amlogic_S905_Router_TV_Box

I actually found about the device on ARMdevices.net back in January, but since the specifications were not complete at the time, I contacted the company, but after one email reply, they did not seem interested in talking to me… But today being a slow news day, I decided to check it out again, and found JCG had setup a page with some specs and pictures for their Hacker H3 thing.

Hacker H3 will be sold in China on JD and Tmall for 699 RMB ($105) for the 16GB version,while the 64GB version will go for 899 RMB ($135).

SolidRun ClearFog Base is a $90 Router/Networking Board with USB 3.0, M.2, mSATA, and Gigabit Ethernet Support

August 3rd, 2016 10 comments

SolidRun introduced ClearFog Pro and Base board based on Marvell Armada 380/388 processor at the end of last year, but at the time, only the higher-end ClearFog Pro board was available for $170 and up. Now the company  has officially launched the cheaper ClearFog Base board based on the same processor, two Gigabit Ethernet RJ45 ports, one SFP cage, a USB 3.0 port, an M.2 slot, mPCIe expansion slot, and more.

ClearFog_BaseClearFog Base board specifications:

  • Processor – Marvell ARMADA 388 (88F6828) dual core ARMv7 processor (Cortex A9 class) @ up to 1.6 GHz with 1MB L2 cache, NEON and FPU
  • System Memory –  1GB RAM by default (2GB optional)
  • Storage – 1x micro SD slot, optional 4GB eMMC flash, 1x M.2 slot, 1x mSATA/mPCIE
  • Connectivity – 2x dedicated Gigabit Ethernet ports, 1x SFP cage
  • USB – 1x USB 3.0 port
  • Expansions
    • 1x mini PCI Express slots (shared with mSATA )
    • 1x M.2 slot with USB 3.0, SATA, GNSS, 3G modules
    • mikroBUS socket for GPIOs, MikroElektronika Click Boards
    • 2x SIM card sockets
  • Debugging – micro USB port for serial console
  • Misc – RTC battery header, LEDs, user push buttons
  • Power Supply – 9 to 32V DC input; PoE expansion header
  • Dimensions – 103 x 75 mm (optional metal enclosure)

The board is comprised of a baseboard and a microSoM (in green), and runs OpenWrt or a Yocto Project build based on Linux 3.10.x, and other operating systems such as Arch Linux ARM, and Debian also appear to be supported. Hardware and software documentation can be found in the Wiki.

ClearFog_Base_M2_mPCieTypically applications for such boards include home media clouds (NAS), IoT gateways, and secure routers.

The board sells for $90 without power supply, nor internal storage, but 110V or 220V power adapters, a blank 8GB SD card, and a 4GB eMMC flash are all available as options.

Via Liliputing

Music802 Linux Audio & IoT Board is Powered by Atheros AR9331 SoC (Crowdfunding)

July 26th, 2016 5 comments

When Link Card evaluated processors for a Linux audio IoT board, they considered candidates like Allwinner H3 and Ralink RT5350, but eventually went with Atheros AR9331 due to cost, simplicity, features, and power consumption reasons for their Music802 board based on LC930 system-on-module.

Music802Music802 board specifications:

  • SoC – Atheros AR9331 MIPS 24K WiSoC @ 400 MHz
  • System Memory – 64MB DDR2
  • Storage – 16MB SPI Flash
  • Audio – Cirrus Logic WM8960 Codec; 2x 3.5 mm jacks for Line IN and headphone; optical S/PDIF output; on-board microphone
  • Connectivity – 2x 10/100M Ethernet ports (WAN & LAN), 802.11 b/g/n WiFi with 1x IPEX antenna connector
  • USB – 1x USB 2.0 host, 1x micro USB port for power only
  • Debugging –  3-pin 2.54mm pitch header for serial console
  • Expansion – 16-pin 2.0mm pitch header for GPIO, UART, I2C, etc..
  • Misc – Power, system, and 2x user LEDs, 1x reset button, 1x power switch
  • Power Supply – 5V/1A via micro USB port
  • Dimensions – 83 x 77mm

The board runs u-boot + OpenWrt, the company claims the project is open source, and promises to release source code and hardware files to backers. The latter is often promised on crowdfunding campaigns, but no always followed through. I’ve asked the company whether they had any github account or similar, and will update the post accordingly if I get an answer.There’s a github account with u-boot code, but the OpenWrt repo is empty for now.

Audio_IoT_BoardMusic802 project has launched on Indiegogo (flexible campaign), and the company aims to raise $7,500. You’ll need to pledge $19 to get the board with an external antenna, and if you are interested in LC930 CPU module instead, there are rewards for the system-on-module starting at $40 for 5 LC930 modules. The board price is probably OK, but sadly the $25 to $35 shipping fee makes it completely unattractive. The first 50 boards would be shipped one week after the campaign, and other boards about 3 weeks later. Bear in mind that one reason for raising funds is to pass CE and FCC certifications, so I assume none of the Music802 boards will have it at that time. LC930 module is likely already certified since it was released in 2013, and you can find more details on the product page.

AsiaRF AP7620-MPE-1 OpenWrt WiFi Router mini PCIe Card is Made for Computers and Embedded Systems

July 26th, 2016 5 comments

There are many mini PCIe WiFi modules on the market, but what AsiaRF provides with AP7620-MPE-1 is a little different, as it’s a router based on Mediatek MT7620A fitted into a mini PCIe card to be plugged inside a computer or embedded system.

WiFi_mini_PCIe_OpenWrt_RouterAP7620-MPE-1 mini PCIe card specifications:

  • SoC – Mediatek MT7620A MIPS 24KEc CPU @ 580MHz with 2T2R WiFi 802.11 b/g/n (but board only supports 1×1)
  • 802.11ac WiFI Chipset – Mediatek MT7612E AC1200 chipset limited to 433 Mbps [Changed to MT7610E chipset @ 433 Mbps]
  • System Memory – 64 or 128MB DDR2
  • Storage – 8 or 16MB SPI flash
  • WiFI features
    • Security: 64/128-bit WEP, TKIP, WPA, WPA2, AES; 802.1X Authentication with RADIUS Client
    • Multi-mode support: Access Point/Client mode
    • Support Multiple SSIDs
  • mini PCIe interface with USB2.0 to Ethernet, UART, 8 GPIOs, 1.5V, 3.3V and ground
  • Dimensions – 60 x 41.5 mm (bigger than standard mini card: 50.95 x 30 mm)

The card is seen as a USB 2.0 to Ethernet dongle from the system, with the dongle connected to a router. The reason why the AC1200 chipset is limited to 433 Mbps is because of the USB 2.0 interface in the mini PCIe card itself limited to 480 Mbps.

Click to Enlarge

Click to Enlarge

The company also told me there will be three versions of firmware SDK for this router:

  • Mediatek official SDK
  • Mediatek OpenWrt SDK with Mediatek WiFi driver
  • OpenWrt.org SDK with “public” WiFi driver (most of time uses less power)

The company does not have an habit of release firmware and documentation publicly, so you’ll probably get them after you purchase the card. In case you wonder why you’d ever need such mini PCIe card the company claims “it is ideal for multi-purpose installations for sharing wireless connections”.

The first engineering samples have just been produced. Price will be around $20 per unit, with discount in larger quantities. You can find some more technical details on the product page.

Gateworks Ventana GW5530 SBC is Designed for Drones, Robots, and Digital Signage

July 21st, 2016 No comments

Gateworks Ventana is a family of boards based on NXP i.MX6 processor designed for embedded applications, and often include one or more mini PCIe ports for expansion. Their latest single board computer – Ventana GW5530 –  is powered by an NXP i.MX 6Dual processor coupled with 512MB RAM, 256MB storage, a mini PCIe port, a micro SD / SIM card slot, micro HDMI output, and some I/Os.

Click to Enlarge

Click to Enlarge

Ventana GW5530 specifications:

  • SoC – NXP i.MX6 Dual Core ARM Cortex-A9 processor @ 800MHz with Vivante 2D and 3D GPUs
  • System Memory – 512MB DDR3 (Up to 2GB as option)
  • Storage – 256MB flash (Up to 2GB as option), micro SD/SIM card slot, serial configuration EEPROM
  • Video & Audio Output – micro HDMI 1.4 port
  • Connectivity – Optional u-blox EVA-M8M GPS Receiver with MMCX or u.FL Antenna Connector
  • USB – 1x micro USB 2.0 OTG Port
  • Sensors – 9-axis inertial module (accelerometer/gyro/magnetometer)
  • Expansion
    • High-Power Gen 2.0 mini-PCIe Socket with USB 2.0 Support
    • SIM socket (shared with micro SD card)
    • Video input header for CVBS, Y/C, YPrPb
    • Digital and serial I/O header
  • Debugging – JTAG connector
  • Misc – RTC with battery backup, voltage and temperature monitor, programmable watchdog timer, reset header, LED header
  • Power Supply – 8 to 60V DC input via 2-pin header; Reverse voltage protection
  • Power Consumption – [email protected] (typical); 7W Available for mini-PCIe socket
  • Dimensions – 100x35x13 mm
  • Weight – 28 grams
  • Temperature Range – -40°C to +85°C

    Click to Enlarge

    Click to Enlarge

The company can provide OpenWrt, Android, Yocto Linux, and OpenEmbedded board support packages (BSP) for the board. Some documentation can be found on Ventana wiki. The boards targets “small embedded applications such as Man Portable Units (MPUs), Unmanned Aerial Vehicles (UAV) equipment, digital signage, and robotics”.

Block Diagram

Block Diagram

The board is available now, with pricing not disclosed, and 1 year warranty. Gateworks GW11038 development kit with GW5530 SBC, OpenWrt BSP, USB and video cables, power supply, and a JTAG programmer can also be purchased for evaluation. More details can be found on Gateworks Ventana GW5530 product page.