We have about 70 000 lines of code running on a ARM7 processor (NS7520 from DIGI).? We use? ? NETOS/ThreadX realtime operating system. Programming language is ANSI-C.
I will be needing? help from somebody with long experience? of embedded programming. Basically I am looking for somebody that can? learn the existing code base and to be able develop new features.
?
It is a kind of intelligent gateway or a controller that can communicate with server software using ethernet or gprs. It has different I/O's to control and monitor status of external devices such as sensors and relays.
?
As you may realize there is not a separated task to be done. The objective of this? first project is? more to see if I can find the right programmer that can learn the product and the code of course and then be available to do several tasks/projects.? So at this point? I want to? say that? it is not 100% that this project will take off. Well, the first project (this one) could involve a week or so of studying the code and learning the product and then do a smaller task of something ( I will pick a minor feature from my todo list).
?
However,? I may also think that this is not a good idea and decide to not go forward.
?
?
## Deliverables
?
I will just give a short brief description here.
?
?
There is communication module handles the communication to and from the server side.? We support? TCP/IP on ethernet or GPRS. There is part handles the application protocol. It s our own protocol? based on cgi questions and xml replies. Commands from the server are handled by the? communication module and the protocol handler. They are converted to internal commands or jobs? and placed into a scheduler. When the jobs fires they are handled by? service dispatcher and passed on to the modules (Service Handlers) that executes the job. Results are? sent back to server side or/and stored in? an embedded? database. The controller can also communicate on the powerline to subdevices (sensors, relays, meters..). ? There is flash database that we have developed ourself (no file system). There is a configuration database in eeprom. For development we use GNU tools an cygwin.
?
?
?
We are shortly receiving a new hardware plattform where we will use an ARM 9 processor (NS9215) and a newer version of the NETOS (7.3). For this we can start use eclipse development environment,
?
?
OK, so I am looking for a very? skilled programmer with long experienced of embedded programming and also rtos. You need to be able to have the role as system architect as well as programmer. It is advantage if you have worked with embedded TCP/IP and also GPRS. It is a relatively complicated system so it will require experience? and the ability to easily understand existing code.? Code is to some extent? documented with doxygen.
You should know? version management, issue tracking? and testing procedures.?
So this project involves? getting an understanding of the product by documentation and reading code. Then agree about a programming task and perform it. Includes specification, implementing, testing, documentation and release.? Then discuss how further work can be organized.