NOTE: We are open to all bids above and below our proposed budget.
We are developing a device that allows a user to plug in a Zigbee transceiver to talk to home automation/light link devices.
We are using the JN5168 module from NXP.
We would like someone to write a firmware for this MCU/Module that works as follows:
- Sets itself up as a Home Automation Coordinator
- Allows devices to connect to it as their coordinator
- Implements a serial interface and defines the serial protcol for communicating with an external MCU via Uart (for example an Arduino attached to the Uart port - not our use case but essentially the same for testing) - including these capabilities:
* Allow external MCU to set baud rate (9600 default, 115200 should be one of the options, and maybe some faster options)
* Send message to external MCU when a new device is added to the coordinator, including the device id (and type, etc whatever is standard available with zigbee for a newly added device)
* Allow the external MCU to request the status of a device or all devices.
* Allow the external MCU to send a message to a device, by device id (see notes).
* Pass messages from devices to the external MCU. (see notes)
* Any other functions you feel should be exposed to the external MCU to allow it to control the devices and network
Note: The protocol to pass messages to and from devices should be as flexible as possible, so that new devices and commands can be used (as long as they can connect to an HA coordinator) without changing the firmware on the JN5168.
Devices we will be testing with:
GE Link/Philips Hue/Cree smart bulbs (both white and RGB)
Smart Things Sensors: https://www.smartthings.com/products/home-monitoring-kit
- Well commented code, especially around the Zigbee setup and serial protocol functionality.
- Short instructions on the toolchain setup to build the firmware (windows or linux/osx is fine)
- C/C++/Arduino or similar example of how the external MCU should send a receive commands using the serial protocol you define. This should show all specific command and messages as well as how to send flexible commands to a device (for the example please use a zigbee light such as cree/ge link/hue - please include the cost of the device, if you need one for testing, in your bid)
Please do not make a false low big only to request additional details or a research phase, we are looking for freelancers that are knowledgeable enough in this area to bid confidently. We welcome any questions you have before you bid, and will be fully available to answer any questions that come up during the work as well.