Tag Archives: gateway

Bringup of ESP32 Gateway Board

Arduino

Introduction

Here is one more blog where the ESP32 Gateway bring up is displayed along with a video.

The ESP32 Gateway Board described here would be tested and its bring-up would be shown. Here is the block diagram of the board:

Block diagram gateway

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Bringup Steps

Here are some of the bring-up steps followed for testing:
1. Visual inspection: Quick check to ensure that all components are soldered as per the orientation and visual shorts exist.
2. Power and clock check: Quick power test on the PCB to check for open short test. Using the multimeter to quickly test the 3.3V and 5V supply. The clock output from the oscillator was tested at 50Mhz.
3. USB connection: USB cable was connected to the J10 port. 5V and 3.3V supply was good on the board and coming at test points. Checked on oscilloscope to measure voltage ripple which is under 5%.
4. Reset check: The reset was asserted and de-asserted by TPS3895 as expected.
5. USB to UART connections: An external board was used to connect the ESP32 UART port to USB Port on the board.
6. ESP32 detection: The factory programmed ESP32 comes with the Wifi stack and can be easily detected as the WIFI host with the name ESP32. If the ESP32 is out of reset it would show esp32 wifi LAN which can be connected to. It again indicates it is alive and functional.
7. LED programming: Ardunio was selected to test the board as it is easy to program and most of the drivers are easily available. Programmed the LED program to test the led and also testing the programming sequence of JP1.
8. Switch detection: Next quick program which detects switch press and led lighting up.
9. Mounting the Click board: Mounted the ADXL345 accelerometer from Mikro Electronica on the click connector. The LED on accel click switches on and the supply stays stable for 3.3v and 5v.
10. Testing of i2c interface: Detected the device at 0x1d and 0x51. Read through the register values and moved the boards to check the accelerometer output.

i2c_scanner_Gatway

 

 

 

 

 

 

 

 

 

 

11. Testing of spi interface: Changed the Mikroe Accell click board to spi mode and tested the spi operation on the board using ESP32 module.
12. Testing other examples with esp32: The board was tested with other software examples specified at the Sparkfun website to check for power, operation, and functionality.
13. Testing of LAN8710 device. The device was detected using the MDC/MDIO pins. Ethernet cord was connected to the port and the activity led blink was observed. More tests are underway on the board.

Here is the link to the video of the board displaying power-up status detecting i2c devices on board and on module. The next video would contain some additional tests with ethernet port. Arduino code used with the esp32 rapid development click board is available at link.

Additional read:

  1. ESP32 Gateway Board Design using Circuit Tree
  2. Custom board development with Arduino.

Different types of IOT hardware

IOT Introduction

IOT stands for Internet of things. IOT is network which connects small devices such as door bell , parking sensor and many more to the internet.  This enables easy transfer and control of data between devices. There are certain factors which helped in the growth of IOT

  1. Availability of low power and cost microcontroller/processor devices.
  2. Development of low power radio’s
  3. Availability of development boards having microcontroller/processors with components such as radio’s, sensors which are sold with industry specific application program.
  4. Growth of big data and cloud computing.

Let us consider a interesting IOT use case of NEST. It is a intelligent thermostat found in Homes and connected to the cloud. NEST IOT device

NEST IOT device [Link]

 

Here is how the NEST device typically operates:

IOT architectureBoard HardwareBoard softwareConnectivityCloudGUI
HardwareSensor DataMicrocontroller/ProcessorRadioIOT GatewayMobile/PC/Server
Task1
Monitor TemperatureRead sensor Data from temperature sensorTransfer data to the cloud using RF protocols to communicate with gatewayStore dataDisplay data
Send data to the cloud through the radioCheck data across the AI engine to understand the optimal temperature settings to keep. Generate custom reports
Display temperature data on the Display. Check data across the AI engine to understand the optimal temperature settings to keep. Generate custom reports
Task2
Temperature controlChange the room temperature of the AC/heater
Task3
ShutdownGenerate shutdown alerts. Send alerts on the GUI.

Type of IOT Hardware

From the table above we can observe that two type of hardware boards are needed:

  1. IOT modules/sensorBoards: These boards typically have sensors, low power consuming micro controllers , radio’s , actuators, displays etc. They are typically powered through battery or make be connected to supply outlet. One of the most innovative IOT modules i admire is available at link with a video of its use case
  2. IOT gateways: A gateway acts as a bridge between the IOT modules/sensor boards and the cloud. Typical gateway boards would need to connect to multiple IOT sensor boards while parsing the information and passing it to the cloud. Security of the data and the gateway is must to prevent misuse. The hardware typically contains:
    1. Processor core running above 600Mhz core frequency. Having security engines to encrypt the data is a must. Must support the following interfaces
      1. DDR3/DDr4 Memories
      2. Ethernet connectivity ports such as RGMII/SGMII
      3. Radio modules
      4. Memories for firmware storage.
      5. Other peripherals as per the use case.

Challenges and Questions

To start creating different type of IOT hardware a designer should explore the following:

  1. Are there any inexpensive starter kits available which contains all the devices and controller that he needs for the IOT sensor/gateway ?
  2. What is the board power consumption, radio ranges, software stacks available?
  3. Is the final board form factor the same as required in your application?
  4. Can i reduce the cost of these starter kits if used in production?

and many more. More the number of questions you ask at the initial stage more it would define the product maturity.

Using the starter kits for testing may or may not work based on his needs being met with these boards. For instance look at the variety of IOT sensors available in the market and a quick survey would show that none of the starter kits can have plugin boards/shields with these sensor parts mounted on it.  Production with these starter kits is not recommended due to cost and large form factor even through the hardware churn may be less.

How can circuit tree help?

There are numerous articles which states that designing hardware is hard. Not at Circuit Tree it is very easy for us and it is a couple of minutes job for us.

Typically in a board design cycle a engineer would iterate through the long human controlled steps to generate designs in months. At circuit tree we do things differently wherein a AI engine designs the hardware for you based on your bespoke requirements.

We have thousands of low power micro controllers, processors along with peripherals all in the perfect mix to help you generate a quick IOT hardware of any type.

Some of the sensor components and radio components in circuit tree library are listed below:

Device namemanufacturerType
lis2hh12ST Microelectronicsaccelerometer
mma8451qNXP semiconductoraccelerometer
mpu9250TDK InvenSenseaccelerometer
adt7461Analog Devicestemperature
hdc1080Texas Instrumentshumidity+temperature
l3g4200dST microelectronicsgryoscope+temperature
mpl3115a2NXP semiconductorpressure+temperature
si7006Silicon Labshumidity+temperature
si7034Silicon Labshumidity+temperature
si7051Silicon Labstemperature
tmp75bNXP semiconductortemperature
bmc150Bosch Sensorteccompass
mag3110NXP semiconductorcompass
bmc280Bosch Sensortecpressure
bmc250Bosch Sensortecgryoscope
tmd27711AMSambient_light
m41t65ST Microelectronicsrtc
pcf85063tpNXP semiconductorrtc
tsc2046Texas Instrumentstouch_controller
a2200Maestro Wireless SolutionsGPS
M10382AntenovaGPS
Circuit Tree identifierOrdering Part numberManufacturerType
cc3200CC3200MODR1M2AMOBTTexas Instrumentwifi module
esp8266ESP8266-12EAi Thinkerwifi module
sn800088-00153-02Muratawifi module
mbh7blz02MBH7BLZ02-109004FujitsuBluetooth
mr110caATBTLC1000-MR110CAAtmel/MicrochipBluetooth
spbtle_rfSPBTLE-RFST MicroelectronicsBluetooth
pn7120_moduleOM5577NXP semiconductorNFC
a2500r24aA2500R24A00GMAnaren2.4 Ghz radio
rfm75RFM75-SHopeRF2.4 Ghz radio
etrx3587ETRX3587TelegesisZigbee
xbee_s2cXB24CZ7UIS-004Digi InternationalZigbee

 

In the world of endless possibilities and number of hardware combinations circuit tree makes hardware development easy.

IOT Hardware

IOT Hardware

Using the circuit tree requirements editor a IOT sensor/gateway board can be easily created.

To get started on your hardware idea design implementation head to the app. If you have come across innovative implementation of IOT hardware or need any custom development write to us at info@circuit-tree.com.