I am trying to get the TR-069/CWMP protocol up and running. I have found an open source ACS server called openACS. My problem is the CPE, there does not seem to be any open source CPE implementations around. I have found a few projects but none are alive. I was wondering if anyone knows about any full CPE implementation? Also, Does anyone know how much work would be involved in implementing the protocol myself?
Thank you.
I had implemented a generic stand alone CWMP client in pure C before 5-6 years. It was a project for my University (there is a publication for that http://ieeexplore.ieee.org/Xplore/login.jsp?url=http%3A%2F%2Fieeexplore.ieee.org%2Fiel5%2F30%2F34592%2F01649657.pdf%3Farnumber%3D1649657&authDecision=-203)
Well, actually, if you read the paper you'll see that we propose there a methodology for creating (instantiating) CWMP clients through Java. You could use a java program to define the model of the CWMP client and create a configuration file which would be used by the generic CWMP client. After that you used some hooks to define what should be done on the Set or Get of each parameter of the model.
If I remember correctly, the CWMP client implemented most of the requirements of the TR-69 document and you could add its model (set and get parameters) easily without using the Java tools.
If you feel that it could help you and want to continue the CWMP client, I would gladly send to you (or upload somehere) the full source code. However I warn you - I don't remember anything about that project so I can't answer any questions !
Concerning the implementation time, it took me around 2-3 months. I had implemented my own HTTP server and SOAP parser / generator (using IXML for XML parsing). It wasn't anything fancy but it was working - it even supported SSL through OpenSSL !
Also, I've created a bitbucket repository containing the source code of the client: http://bitbucket.org/spapas/cwmpclient. I hope it's helpful - if it is, just add a reference to the original project