Raspberry Pi I/O Extender Modules

Job ID: 36752094

Budget: $10 – $800 AUD

I am looking for a freelancer to design and develop Raspberry Pi I/O extender modules, these boards are 'satellitye boards' or 'NODES' with the following requirements:

Function:
- Daisy Chain / Connect through RJ45 Cables / headers.
(Data and low power)
- Have a high power input / output for motor.
- Increase the number of input/output pins
- Input pins, and output pins.
- Dip switch block for 'position' in node chain.
The 'NODE' modules, will need to have a few 'input' pins and a few output pins (Opto isolated) for running a motor x 2.
They also need to connect to a basic LED screen that simply displays 0-999.

The idea is relatively simple.
There is 8 stations where these boards sit at.
'Client Side'

- A switch is triggered, counter goes up in increments of 1 to a maximum of 999.

- When switch is triggered MOTOR 1 runs on a Time Out for 5 mins. If user triggers switch again Time Out is reset.

- At set intervals on the counter, 50, 100 motor 2 is triggered momentarily.( eg 5 seconds).

- When counter reach's 500 or 999(user configurable) then a trigger is sent back to main raspberry pi board.

- Running total of all 8 machines should be sent back to 'gathered' on main raspberry pi board/breakout board.
- When running total on main board hits 999 then or counter from nodes/satellites hits 999 then a MOTOR is triggered from main Raspberry Pi board.



Interface:
- I2C

Form Factor:
- Custom size


Ideal Skills and Experience:
- Experience in designing and developing Raspberry Pi modules
- Proficient in programming languages such as Python
- Knowledge in I2C interface and circuit design
- Familiarity with custom hardware design and manufacturing

The project will involve designing the circuit and PCB layout, programming and testing the module, and producing a prototype. The successful candidate will be able to deliver a high-quality and reliable solution that meets the specified requirements.

Possibly use an ATMEGA chip for the 'Brain' on each satellite along with a 'MCP23017' or some such for communication between them?


I will need hardware and basic software / firmware coded.
Related categories: Microcontroller Arduino Raspberry Pi