I am doing a project where I have to interface with Fronius Solar Inverter with Atmega32 MCU over MODBUS TCP. I want to set the MCU as client and The inverter as Server and I have to implement two MODBUS Function only these are READ_HOLDING_REGISTER and WRITE_SIGLE_REGISTER and Function Code are 0x03 and 0x06 respectively. I am newbie in this field and dont know about networking. Please anybody help me How can I develop the Software in C for this purpose??

The Document of Fronius Inverter for MODBUS TCP is Fronius MODBUS TCP Datamanger

  • Create A TCP connection (your inverter is TCP server) Check this, your device got modbus pattern so not modbus
    – dsgdfg
    Commented Mar 31, 2017 at 5:55

1 Answer 1


So if you want to the atmega as client this means it will start the conection and made the request for values, so translating into modbus words your atmega will be a modbus master and the solar will be a modbus slave.

first you need a way to interface the micocontroller to the tcp/ip stack. you can use an ic or arduino shield which has this ic like a w5100 or enc28j60.

then you can write a library over tcp sockets to start the comunication or change some from the arduino.


  • Thank You @Luiz Henrique Diniz Ferreira for your Kind Information. Is this good and working Library for Arduino Client?. If it is woks good on Arduino as Client then I will drag from Atmega32 to Arduino. Commented Mar 31, 2017 at 6:24
  • 1
    this link myarduinoprojects.com/modbus.html has a library for using on arduino, i didn't tested it but maybe should work. You can install it, and if you are using windows download a program called modbus poll which simulate devices on a modbus network, first try with the program and then the fronius, this way u can deal with less errors at once.
    – Luiz Henrique Diniz Ferreira
    Commented Mar 31, 2017 at 15:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.