De multiplexing the various protocols

Hello all you Hardware Wizards out there!

I will be using a Photon for prototyping and ultimately I suspect a P1
I need to do a LOT simultaneously!
Analog In local temperature and signal feedback
Analog Out command to an analog servo
3 PWM outputs for 3 servo amps
SPI for ZigBee radio interface
IIC for a couple of items
Plus 5 Digital Inputs and several Digital Outputs

In the hopes of not having to reinvent the wheel, are there any open source examples for the simultaneous usage of these interfaces?

Thanks in advance!

A zigBee module is just serial not spi .

If you want to control servos, you can get a I2c module which controls 16 servos .

Most temperature input is with digital pins , I2c or one wire etc

One example of ZigBee radio:
The device is available in a quantity of one for about $9.00, FCC certified AND it is SPI. Serial is of course is an option but I really don’t want to use it.

My statement “Analog In local temperature and signal feedback” was poorly written.
I should have said "Analog Inputs for both local temperature and a feedback signal from the equipment."
The local temperature will either be an RTD or thermocouple conditioned as needed.

Freezing an analog output is no big deal just a simple sample and hold circuit. A 0-10VDC voltage level translation is required for the equipment.

The PWMs are where things gets a bit tricky. It seems you are saying if I use PWMs I must give up on SPI and I2C. Or to put it the other way… If I must have SPI and I2C then I need to get a I2c servo module and effectively give up on the PWM’s inside the controller (Photon / P1). Unfortunately, I need all three along with both ADC, DAC’s and Digital I/O.

I am trying VERY hard to keep this thing as tiny as possible. As such I am trying hard to minimize outside circuitry. If an optimum solution already exists, I would like to use it. Perhaps the I2c servo module IS the optimum solution. If so, can you point me towards a part number? If not, there may be an “outside of the box” solution somewhere.


No you can have spi and working together, all I was saying that there is a nice module which can control upto 16 servos out there .

I ike i2c because you can build a circuit which does a job with many parts like relays , Adc’s , servos , and it only connected to the cpu/board with only 3 or 4 wires , so your circuit can be moved to any board which as i2c, it’s just writing a new version of the code.

If I can I try to get all my controlling on separate board connected with the minimum of wires . is one example.