Help with a college app


Hello all… I’m starting my studies in Node.js, MongoDB, Meteor, IONIC …

I have some questions, and I appreciate if someone help me…

I’m doing a little system for college, but before I start it, I need to understand better how I really works…

  • I’ll develop an application using IONIC framework, which will have a screen with some buttons “relay 1”, “relay 2” and “relay 3”. If I press the relay 1, an electronic board (which necessarily have to be a board with PIC, cannot be Arduino) will trigger the relay 1. If you press the button “relay 2” will trigger relay 2 and if you press the button “relay 3”, trigger the relay 3. This information must be sent over the internet.

It is a simple, but if I understand this I can do more interesting applications after this.

I checked on the internet some tutorials (though to be based on Arduino), I bought some books and it seems I have a few options:

  • My hardware will have a PIC and ESP8266 module, which is connected with the Mosquitto;
  • Application developed with the framework IONIC, communicating through MQTT with mosquitto. A server on Heroku with the application server.js develop using Meteor, communicating with the same mosquitto. I would like to understand the concept of all of this… When I press the buttons on my app, it will publish information, send through MQTT protocol for mosquitto. After, the server.js developed with Meteor on Heroku will be listening to what happens in mosquitto? It is? All this is possible? Can someone explain these to me?

Is there any other alternative to develop this my project? Can someone help me?

If you can contact me via email I also thank:

Thank you so much for the help…

Victor Araujo


i reckon that vue.js is best front end.


Pinging @tomfreudenberg


Hi Victor,

sorry for requesting more infos but I did not quite understand for what architecture you are looking for.

Do you already have all the hardware (Microcontrollers etc.)? What kind of board you are looking for?

And what is your target you want to reach.

Could you give a bit more details about the solution you are looking for. I guess I could give you some guidance afterwards.



I’m developing a board, using a microcontroller PIC and a ESP8266.

My professor doesn’t want we use a arduino, because he wanna check if we know how to use a microcontroller PIC (in my case I will use a microcontroller PIC 18f4520, because i already have one).

The electronic board, the microcontroller PIC controlling the relays, there is no problem for me, I understand the electronic. Now, my adventure is to use IoT and softwares.

I know how to use javascript, angular, ionic framework, but i don’t know anything about node.js and meteor.

My doubts are something easy for you man. I just need a guide to help me to start in this world. Look, i need to understand how it works:

  • I need to have a microcontroller comunicating via serial with ESP8266, and this sending information to Node.Js? Or my ESP8266 will connect directly with the MongoDB, and node.js will get information from mongoDB? Where is mosquitto in all of this? oh my god! just explain how this works…

I need to understand the flux of information.

I’m looking for informations, tutorials and guides on Internet, but there is a lot of ways to do this job. I need a opinion from someone expert, to guide me… just tell me what technologies i need to use, and what is the best choice to do this… use MEAN Stack? Meteor? Mosquitto? Mosca? MQTT?

Thank you so much for your time…


Hi @victoraraujo1991

I hope I get your questions and try some first setup:

Question: You will create a digital circuit / board with

PIC + number of relays

and you are able to connect this via Serial line

RS232 <-> PIC === Relays

Did you already decide some protocol between PIC and RS232 interface to set/get status of relays?

like e.g.


$01 (SET) $01 (Relay 1) $01 (TRUE) \n
$01 (SET) $02 (Relay 2) $00 (FALSE) \n
$FF (GET) $00 (Relay ALL) \n

Please let us discuss first how you will implement this (hardware) part, I will guide you afterwards through development for meteor. I need to understand your requirements.