Browsed by
Author: Albert

How to Upload a Bootloader on an Arduino Board

How to Upload a Bootloader on an Arduino Board

To install a Bootloader on an Arduino Board it is necessary to have:

  • Original Arduino board (configurated as Bootloader burner).

Steps to configurate an Arduino Board as Bootloader burner:

  • Open The Arduino ISP Example on the Arduino IDE from: File >> Examples >> 11.ArduinoISP

arduino as ISP

  • Select the right board which will work as a Bootloader burner
  • Select the right port where the Arduino is connected.
  • Change the standard pin configuration. At “#define RESET 10” and “#define RESET  4” change both with the pin 2.  As illustrated here below.

 

  • UPLOAD!!!!

Once the Arduino board is configurated as Bootloader burner it is necessary to connect via SPI ports the Bootloader burner Arduino to the Original Arduino board where it is necessary to replace the bootloader…

Connect:

Bootloader burner (Arduino “A”) Arduino “B”
MISO MISO
MOSI MOSI
SCK SCK
PIN 2 RESET
GND GDN

 

After connect the Arduino “B” to the Bootloader burner (Arduino “A”) It is necessary to connect the USB cable between the Arduino “A” and the laptop.

Then you can continue doing:

  • Select the Arduino “B” board on the Arduino IDE (remember that you have connected The Arduino “A” to the Laptop) . ( Tools >> Board)
  • Select the right port (From the Arduino “A”). (Tools >> Port).
  • Select the Programmer type: Arduino as ISP  (Tools >> Programmer)

arduino as ISP_2

  • Click on BURN BOOTLOADER on the Tools menú.

burn bootloader

That’s all. Now you can upload a new file on the Arduino “A” 

And use the Arduino “B” as a new Board!!!!!

RTC library for Arduino based PLC (DS1307 RTC)

RTC library for Arduino based PLC (DS1307 RTC)

The Industrial Shields PLCs use original Arduino boards. Then the PLCs can be used as individually Arduino boards by The Arduino IDE. To use the original boards let the users to programm the PLCs by others programs which can program Arduino boards too. 

You can use different models of RTC with the PLCs. This example shows how tu use the DS1307 RTC board.

It is necessary to download the RTC library from GitHub:

https://github.com/PaulStoffregen/Time

After the downloaded you can upload that library on the Arduino sketch. (you can see an example about how to upload a library on: 

Industrial Shields library in Arduino IDE.

Then, to use the RTC board it is necessary to make 2 steps. 

  • The first one put the RTC board on time.
  • The second step confirm that the RTC is running.

STEP 1:

Upload to the Arduino the settime.ino file.

 

STEP 2:

Upload to the Arduino the readtest.ino file.

See Also:

Using the original Arduino IDE

Ardbox Analog

Ardbox Analog

 
plc-arduino-ardbox-analog-20-din
The Ardbox Analog is a PLC based on Open Source Hardware including Arduino Leonardo board. It has a 16MHz crystal oscillator and a micro USB connection.
 
Power
This PLC can be powered at 12 – 24Vdc
 
Memory
The Ardbox Relay has 32KB (4KB used for the bootloader). It also have 2.5KB of SRAM and 1KB of EEPROM (Wich can be read and written with the EEPROM library) all from the Arduino Leonardo.
 
Input and Output
It has 20 input/output signals,
  • 10 Inputs, of which:
    • 9 can be used as Analog Input 0-10Vdc, 10bits,(using Pins A0, A1, A2, A3, A4, A5, D4-A6, D8-A9, D12-A7). All of them can also be used as Digital Inputs.
    • 1 are Digital Input which can work as a Interrupt Input also. (using Pins D2).
  • 10 Outputs, of which:
    • 3 are Digital Output. Using Pins D0, D1, D7.
    • 7 are Analog Output 0-10Vdc, 8bits. Using Pins D3, D5, D6, D9, D10, D11, D13. All of them can also work as Digital Output and PWM output.
Ardbox Relay

Ardbox Relay

plc-arduino-arbox-relay-20-din
The Ardbox Relay is a PLC based on Open Source Hardware including Arduino Leonardo board. It has a 16MHz crystal oscillator and a micro USB connection.
 
Power
This PLC can be powered at 12 – 24Vdc
 
Memory
The Ardbox Relay has 32KB (4KB used for the bootloader). It also have 2.5KB of SRAM and 1KB of EEPROM (Wich can be read and written with the EEPROM library) all from the Arduino Leonardo.
 
Input and Output
It has 20 input/output signals,
  • 10 Inputs, of which:
    • 6 can be used as analog Input 0-10Vdc,(using Pins A0, A1, A2, A3, A4, A5). All 6 can also be used as Digital Inputs.
    • 4 are Digital Input which can work as a Interrupt Input also. (using Pins D0, D1, D2, D3).
  • 10 Outputs, of which:
    • 8 are Relay Outputs (220Vac, 5A max). (Using Pins D4, D7, D8, D9, D10, D11, D12, D13).
    • 2 are analog Output 0-10Vdc. (Using Pins D5, D6).
Ardbox Software Interface

Ardbox Software Interface

Software Interface:

Arduino IDE is compatible to program these PLCs. You must download a start code in www.industrialshields.com at product page in “document files” section and then open it with Arduino IDE.

Configuration of Arduino IDE:

All Ardbox PLCs use an Arduino Leonardo and you need to choose these option in Arduino IDE.

arduino_ide

Read More Read More

Ardbox Analog I/O Pinout

Ardbox Analog I/O Pinout

plc-arduino-ardbox-analog-20-dinArdbox Analog has diferent types of Inputs and Outputs.

Base

(common unit)  

RIGHT Zone

Ardbox  Connector

Arduino Pin

Function

 
A0.6
A0.5
A0.4
A0.3
A0.2
A0.1
A0.0
Q0.9
Q0.8
Q0.7
Q0.6
Q0.5
Q0.4
Q0.3
Q0.2
Q0.1
Q0.0
(-) Com
24VCOM
3
5
6
9
10
11
13
0 
1
7
3
5
6
9
10
11
13
Analog Out
Analog Out
Analog Out
Analog Out
Analog Out
Analog Out
Analog Out
PWM/digital Output
PWM/digital Output
PWM/digital Output
PWM/digital Output
PWM/digital Output
PWM/digital Output
PWM/digital Output
PWM/digital Output
PWM/digital Output
PWM/digital Output
Isolated GND
Isolated Vdc Out
 ardbox_analog_side00

On the right zone is available a Switch to configurate output configuration functions as a digital or analog mode. 

Read More Read More

Ardbox Relay I/Os Pinout

Ardbox Relay I/Os Pinout

plc-arduino-arbox-relay-20-dinArdbox Relay has diferent types of Inputs and Outputs.

Left Zone:

Ardbox Connector
Arduino Pin
Function
 
Left Switch
See switch details
 ardbox_relay_side00 
MISO
MOSI
SCK
RESET
B
A
TX-PIN1
RX-PIN0
SDA-PIN2
SCL-PIN3
1
0
2
3
SPI-MISO
SPI-MOSI
SPI-CLOCK
SPI-RESET
RS485
RS485
Serial/RS232
Serial/RS232
I2C/SPI SS
I2C/SPI SS
R1*
4
Relay 1 Out
R2*
7
Relay 2 Out
R3
8
Relay 3 Out
Gnd
24Vdc
Gnd
Power Supply

On the left zone is available a Switch to configurate some communication functions. 

Read More Read More

Ardbox Relay Communication pinout configuration

Ardbox Relay Communication pinout configuration

plc-arduino-arbox-relay-20-dinArdbox Relay Communications pinout configuration

Ardbox Relay PLC integrates the following communications.

  • USB: Intrinsically available.
  • I2C: Enable SCL and SDA connections (actual Arduino pins) with configuration switches. I0.0 and I0.1 not available. In order to implement this communication a 4.7kΩ pull-up resistor (IS.ACI2C-4.7K) is required.
  • RS232: Enable RX and TX connections with configuration switches. 2 and I0.3 not available.
  • RS485: Enable RE/DE/DI and RO internal pins with configuration switches. R1, R2, R5 and R6 not available. The defined Arduino Mega pins are showed in the chart below.

RS485 pinout

Function

Arduino Pin

DI

10

RO

11

RE

4

DE

7

  • SPI: Enable pin 7, 4, 3 or 2. I2C or RS485 not available.

In LEFT Zone and TOP Zone  switches  the communications for Ardbox Relay can be enabled

See:

Ardbox Relay Switch Configuration

 

*NOTE: 

LEFT ZONE. To enable communication connections the switchs must be set to “OFF”. Set to “ON” position to enable I/Os  PLC connection.  Communications and I/Os on the chart can not work simultaneously. For exemple if DE is enabled (OFF),  R1 will not work. OFF position provides direct connection to Arduino Pin (NOT for TX and RX), so they can be programmed according to Arduino pin features.

TOP ZONE. Communications and relays can not work simultaneously. If R6 is enabled RO must be disabled and conversly.

Go to plc-arduino-arbox-relay-20-dinArdbox Relay Store page.

See also:
Communication ports, analog input, digital input, interrupt input, analog output, relay output.