Development Resources for Realtek “Ameba” RTL8710, RTL8711, and RTL8195 WiFi SoCs

We were made aware of a potential ARM based ESP8266 competitor last week with Realtek RTL8710 WiFi modules selling for about $3.5 shipped per unit, and under $2 per unit for larger orders (100+ pieces). Hardware is good, but for a platform to be successful, or even just useful, you also need software support. So I started doing some research into IoT-Tech BBS and asked ICStation for an “SDK” for the module they sold.

802.11 nxn with NFC RTL8710 Module
RTL8710 single band 802.11n (1×1) and NFC Tag Solution block diagram

I ended up on this forum post providing an “Realtek RTL8710 SDK” via Baidu (password: brwp), which turned out to be about the same as the Google Drive link provided by ICStation, and only contain minimal documents, as well as cracked Windows IAR Embedded Workshop and JLink tools. There are also some more technical details in Chinese only in another forum post, and well as B&T RTL8710 module datasheet (PDF).

However, if you don’t read Chinese that’s pretty challenging, and you may not want to use cracked software for development. I’ve soon come to the conclusion that RTL8710 was part of Realtek “Ameba” family also including RTL8711AF/AM and RTL8195AF, with the latter used in Ameba Arduino IoT board ($25), and supported by Ameba IoT community, where you’ll find both a “Standard SDK” and an “Arduino SDK” with several documents to get started.

Click to Enlarge
Click to Enlarge

The comparison table above shows that RTL8195AM and RTL8711AM support 2MB SDRAM + 512KB SRAM, while RTL8711AF & RTL8710AF only support 512KB SRAM. The not-so-good news here is that the Arduino SDK currently relies on the 2MB SDRAM lacking in the cheaper versions of the chips, and that’s the reason given by Realtek for the lack of implementation on RTL8710/RTL8711. The good news is that Realtek confirmed that the “Standard SDK” based on FreeRTOS and LWIP supports RTL8195, RTL8711 and RTL8710 processors.

Ameba_SDK_Architecture
Ameba SDK Software Architecture

You can freely download the standard SDK after registration on Ameba IoT community website, and you’ll find source code (component folder), documentation, sample code (project folder) and tools for Windows, as well as Android and iOS configuration apps (source + apk binary).

Realtek_Ameba_SDKYou may have noticed that the SDK name ends with “without NDA” which unfortunately means some documents – such as RTL8710 datasheet – are not publicly available at this time. However, Realtek has noticed the interest raised by their low cost WiSoCs, and hopefully the company will decide to become more open, at least for RTL8710/8711 to allow the community to fully leverage WiFi IoT modules based on Realtek low cost wireless processors.

Ameba IoT community appears to focus on their Realtek RTL8195AM based Ameba Arduino board right now, but you can always try to get more details or help in their forums. Alternatively, “dpape” has very recently created RTL8710 forums, and #rtl8710 IRC channel where interested developers and users can share ideas and more information about Realtek RTL8710/RTL8711 solutions.

Support CNX Software - Donate via PayPal or become a Patron on Patreon
Subscribe
Notify of
guest
22 Comments
oldest
newest most voted
Daan
4 years ago

Great find,

I will try to upload the SDK and module datasheet to the forum today. The link to http://www.rtl8710forum.com is not correctly in the article, it now points to http://www.amebaiot.com/en/questions/. But thank you very much of naming the forum in the article.

I really hope the forum will be a nice platform to work together with this module.

Kind regards,
Daan

will
will
4 years ago

I think MT7687 is a better solution, consider the Opened SDK and document in english

zoobab
4 years ago

I have seen some micropython Pull Requests, but denied because they were too big:

https://github.com/micropython/micropython/pull/1855

There is some attempt here to make an SDK:

https://github.com/cwyark/ameba-sdk-gcc-make

I managed to compile this example:

https://github.com/eggman/rtl_ameba_gcc_sample

But not without trying different xcompilers under Ubuntu 14.04 LTS:

https://github.com/eggman/rtl_ameba_gcc_sample/issues/1

Now I will order some devboards and see if FrostedOS could be ported on there.

Deets
Deets
4 years ago

You have at least 3 typos with RTL8185.

There is a makefile out there for GCC with the IAR SDK.

The problem, AFAIK, with these chips is that code execution is from ram so a 512kB size is going to be much less useful than an esp32 or even esp8266 where most code executes out of a small cache.

For the 2MB versions it is less of a problem.

zoobab
4 years ago


Don’t know, what’s the best place to order a devboard?

zoobab
4 years ago

@Daan
I would prefer mailing lists, forums are hard to follow as you have to come there often.

Roy
Roy
4 years ago

The realtek wifi chipsets are a nitghtmare, full of hardware and firmware bugs. What is the advantage of spewing cheap hw in this conditions? I prefer to buy a litlle more for a ralink.

Daan
4 years ago

@zoobab

You can subscribe to be notified via email when someone posts something to a topic. This way you are not required to log in , just subscribe to the topics you like and you will receive an email.

Paul
Paul
4 years ago

> I have seen some micropython Pull Requests, but denied because they were too big: There were “denied” because MicroPython is open-source software, while SDK for RTL8195 contains things like: “+ * This module is a confidential and proprietary property of RealTek and + * possession or use of this module requires written permission of RealTek.” That’s of course not open-source at all. Moreover, it raises concern if a gentleman who submitted that patch posses the mentioned written permission. If not, he effectively stole it. And everyone who then downloads it stoles it too. Of course, MicroPython will never put… Read more »

changliang
changliang
3 years ago

@zoobab
Thanks!

north16
north16
3 years ago

I have an ameba board with RTL8195 and have found this thread very helpful – thank you. I have successfully built the example https://github.com/eggman/rtl_ameba_gcc_sample to generate ram_all.bin file. I have downloaded the file to my ameba by dragging and dropping it into the MBED directory that is opened when I connect the ameba to my PC. I have used putty to monitor the COM port and can see the Hello World messages. So far so good. I am now trying the example https://github.com/eggman/ameba-gcc-sample-rtos to build a freeRTOS version of the Hello World. I have generated a target.axf file but I… Read more »

north16
north16
3 years ago

In the end I used this sdk-ameba-rtl8710af-v3.5a_without_NDA_GCC_V1.0.0 – it produces a .bin file using gcc and makefiles – see here for more details:
https://www.rtl8710forum.com/viewtopic.php?f=7&t=9#p232

It does work for the RTL8195 as well as the RTL8710.

MJIOT
MJIOT
3 years ago

Ameba’s latest product, RTL8710BN, has been released, and you can visit the web site to find out its specifications.
http://www.realtek.com/products/productsView.aspx?Langid=1&PFid=45&Level=4&Conn=3&ProdID=361

Advertisements