Thin Client Porting

asked 2015-03-03 22:15:25 -0700

amitbhatia76 gravatar image

I get stuck with basic questions about AJTCL different source files e.g. What is WSL and Where can I find more detail about it.

I think it should be possible to get a WiFi Evaluation board and then port AJTCL on that board. e.g. WICED WiFiEvaluation Board BCM943341WCD1_EVB at http://www.macnica-na.com/wiced

I tried porting the Aj_net.c and other files in the target directory, but still do not know if I am moving in the right direction, since there is no way to help in communication with the Wireless router in those files. I believe those should come from WSL.

To be able to port, I will need more understanding of the AJTCL code, So far I am able to find documentation (by using doxygen) and source code reading. Still so many things are not very clear. Is there any attempt to create more documentation especially to ease out porting AJTCL on specific platforms?

edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted

answered 2015-03-04 09:30:49 -0700

jprestwo gravatar image

updated 2015-03-04 10:36:40 -0700

First off, WSL is a WiFi SPI driver for the Atheros QCA4004/2 module. Here is the guide to using it for the Arduino DUE:


You are right, it would be possible to port AJTCL to any development board, assuming you have enough RAM/Flash and some kind of network access (WiFi or Ethernet). If you are interested in porting AJTCL then you would need to re-write modules under the target directory, like aj_net.c for example.

You are correct in that aj_net.c has no code to actually communicate with a network chip because it must be written in a way that is agnostic to any specific hardware. The layer that does communicate with the WiFi chip is WSL. It provides API's like read, write, connect etc. that aj_net.c can use. I don't know what your intention was but it sounds like you want to use WSL with some other WiFi chip? If so, your not going to have much luck. The WSL driver implements a specific SPI protocol to talk to one specific WiFi module (QCA4004/2) therefore it would not work with others.

I looked at the evaluation board you talked about and though it is perfectly possible to do a port there is a more "turn key" approach. If you got a GT-202 (the WSL WiFi module) and either an Arduino DUE or Freescale K64F the porting work is already done for you. Its also much cheaper than buying that eval board you described and it will work out of the box. You would simply need to download the required sofware packs and compile.

Regarding a porting guide, I don't believe that there is one. Others have asked similar questions so it may be a good idea to get one written up. Its honestly not that difficult to figure out once you look at the code under the target directories though. I recommend going ahead and trying to implement all the exposed API's under aj_net.c, aj_target_util.c and aj_target_nvram.c and if you run into problems you can always come back and ask a more specific question regarding one of the modules.

edit flag offensive delete publish link more
Login/Signup to Answer

Question Tools

1 follower


Asked: 2015-03-03 22:15:25 -0700

Seen: 290 times

Last updated: Mar 04 '15