Welcome, Guest
You have to register before you can post on our site.

Username
  

Password
  





Search Forums

(Advanced Search)

Forum Statistics
» Members: 4,982
» Latest member: kamermcw
» Forum threads: 2,429
» Forum posts: 12,559

Full Statistics

Online Users
There are currently 46 online users.
» 2 Member(s) | 30 Guest(s)
Crawl, Google, PetalBot, Semrush, Yandex, bot, owler, drandle1, ironbill

Latest Threads
Submit your suggestions a...
Forum: Suggestions and feedback on KinCony's products
Last Post: kamermcw
4 hours ago
» Replies: 7
» Views: 3,463
Help whit update Cold CPU...
Forum: KC868-HxB series Smart Controller
Last Post: itzek
8 hours ago
» Replies: 0
» Views: 4
KC868-AIO connecting to E...
Forum: KC868-AIO
Last Post: slava
10 hours ago
» Replies: 0
» Views: 0
DI8
Forum: Development
Last Post: Vaughan2024
Yesterday, 10:24 PM
» Replies: 0
» Views: 16
Clarification on CT Clamp...
Forum: KC868-M16 / M1 / MB / M30
Last Post: ironbill
Yesterday, 09:27 PM
» Replies: 0
» Views: 11
AS ESPHome yaml for home ...
Forum: KinCony AS
Last Post: admin
Yesterday, 12:29 PM
» Replies: 4
» Views: 278
KCS firmware - MQTT LWT?
Forum: KC868-A series and Uair Smart Controller
Last Post: admin
Yesterday, 12:02 PM
» Replies: 34
» Views: 3,314
H32W Firmware
Forum: KC868-HxB series Smart Controller
Last Post: admin
Yesterday, 10:32 AM
» Replies: 5
» Views: 1,607
"KCS" v3.0.2 firmware for...
Forum: "KCS" firmware system
Last Post: admin
Yesterday, 12:00 AM
» Replies: 0
» Views: 42
What makes the ESP32 chip...
Forum: KC868-A series and Uair Smart Controller
Last Post: alice_amira
11-08-2024, 04:38 PM
» Replies: 0
» Views: 4

  [Arduino source code for KC868-AM]-04 RELAY
Posted by: KinCony Support - 03-22-2023, 12:53 AM - Forum: KC868-AM - No Replies

Code:
/*KC868-AM  relay  output*/
#define RELAY 15
void setup() {
  pinMode(RELAY, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {
    digitalWrite(RELAY, HIGH);
    delay(1000);
    digitalWrite(RELAY, LOW);
    delay(1000);
}



Attached Files
.zip   AM_Relay.zip (Size: 485 bytes / Downloads: 178)
Print this item

  [Arduino source code for KC868-AM]-03 ETHERNET
Posted by: KinCony Support - 03-22-2023, 12:53 AM - Forum: KC868-AM - No Replies

Code:
#include <ETH.h>
#include <WiFiUdp.h>

#define ETH_ADDR        0
#define ETH_POWER_PIN  -1
#define ETH_MDC_PIN    23
#define ETH_MDIO_PIN   18   
#define ETH_TYPE       ETH_PHY_LAN8720
#define ETH_CLK_MODE   ETH_CLOCK_GPIO17_OUT

WiFiUDP Udp;                      //Create UDP object
unsigned int localUdpPort = 4196; //local port

// Set it based on the IP address of the router
IPAddress local_ip(192, 168, 1, 200);
IPAddress gateway(192, 168, 1, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress dns(192, 168, 1, 1);

void setup()
{
  Serial.begin(115200);
  Serial.println();
   
  ETH.begin(ETH_ADDR, ETH_POWER_PIN, ETH_MDC_PIN, ETH_MDIO_PIN, ETH_TYPE, ETH_CLK_MODE); //start with ETH

  // write confir for static IP, gateway,subnet,dns1,dns2
  if (ETH.config(local_ip, gateway, subnet, dns, dns) == false) {
    Serial.println("LAN8720 Configuration failed.");
  }else{Serial.println("LAN8720 Configuration success.");}
 
/* while(!((uint32_t)ETH.localIP())) //wait for IP
  {

  }*/
  Serial.println("Connected");
  Serial.print("IP Address:");
  Serial.println(ETH.localIP());

  Udp.begin(localUdpPort); //begin UDP listener
}

void loop()
{
  int packetSize = Udp.parsePacket(); //get package size
  if (packetSize)                     //if have received data
  {
    char buf[packetSize];
    Udp.read(buf, packetSize); //read current data

    Serial.println();
    Serial.print("Received: ");
    Serial.println(buf);
    Serial.print("From IP: ");
    Serial.println(Udp.remoteIP());
    Serial.print("From Port: ");
    Serial.println(Udp.remotePort());

    Udp.beginPacket(Udp.remoteIP(), Udp.remotePort()); //ready to send data
    Udp.print("Received: ");   
    Udp.write((const uint8_t*)buf, packetSize); //copy data to sender buffer
    Udp.endPacket();            //send data
  }
}



Attached Files
.zip   AM_ETHERNET.zip (Size: 1.07 KB / Downloads: 184)
Print this item

  [Arduino source code for KC868-AM]-02 DS18b20
Posted by: KinCony Support - 03-22-2023, 12:51 AM - Forum: KC868-AM - Replies (4)

Code:
#include <DS18B20.h>

DS18B20 ds1(5); 
DS18B20 ds2(14); 
DS18B20 ds3(13);
DS18B20 ds4(33);
void setup() {
  Serial.begin(115200);
}
void loop() {
Serial.printf("T1:%.2fC||T2:%.2fC||T3:%.2fC||T4:%.2fC\n",ds1.getTempC(),ds2.getTempC(),ds3.getTempC(),ds4.getTempC());
      delay(500);
}



Attached Files
.zip   AM_DS18b20.zip (Size: 491 bytes / Downloads: 186)
Print this item

  [Arduino source code for KC868-AM]-01 RS485
Posted by: KinCony Support - 03-22-2023, 12:50 AM - Forum: KC868-AM - No Replies

Code:
//AM
#define AM_RS485RX  35
#define AM_RS485TX  32
void setup() {
  Serial.begin(115200);
  Serial2.begin(115200,SERIAL_8N1,AM_RS485RX,AM_RS485TX);

   Serial2.println("AM RS485 SEND is OK!!");
   Serial2.println("******************");
 
}

void loop() {
  /*print the received data of RS485 port*/
  while(Serial2.available()>0)
   {
    Serial2.print((char)Serial2.read());//Read rs485 receive data  and print it
   }
  delay(200);
}



Attached Files
.zip   AM_RS485.zip (Size: 562 bytes / Downloads: 172)
Print this item

Question Scan Device tool considered as Trojan?!
Posted by: iwzr - 03-21-2023, 10:14 PM - Forum: "KCS" firmware system - Replies (4)

Hi,
I just wanted to flash the firmware of my devices and downloaded the KinCony Scan Device tool from https://www.kincony.com/download/KinCony...Device.zip but my AntiVirus thinks it is a Trojan.
Here are the screenshots:
[Image: mX8lII8UAiws.png?o=1]
[Image: VX1ast09et3E.png?o=1]
Then I let virustotal.com check the zip, https://www.virustotal.com/gui/file/035b...c236f40b38
the result is not very good. It says: 22 security vendors and no sandboxes flagged this file as malicious
This is not good. I am sure it is a false positive from vendors, but you should do something about it.

Print this item

  Which Board?
Posted by: Mohd Faudzee Hamid - 03-21-2023, 08:53 AM - Forum: DIY Project - Replies (1)

Iam a newbie, I want to ask, if we want to start learning Kincony's system, a basic one, just to control ON and OFF about 8
lamps and 5 Aircon all in one room by using wifi (smart phone), which board from Kincony that you suggest?
Thanks

Print this item

  AJUDA PARA CRIAR UM SKETICK IDE PARA AUTOMAÇÃO
Posted by: claudio - 03-21-2023, 03:53 AM - Forum: DIY Project - Replies (13)

OLA PRECISO DE UM SKETICK PARA TRABALHAR COM 2 PLACA 
vocêMA A A4 EA OUTA A A8 SENDO QUE A A4 ENVIA SINAL PARA A PACA A8 VIA REDE 
OPROJETO E LER OS STATUS DOS SENSORES E COSSESPONDER NA OUTRA PLACA RECEBENDO OS STATUS FISICAMENTE E ONDE EU POSSA ABRIR A PAGINA PARA MONITORAR 


SRIA MAIS OU MENOS ASSIM 

onst int Sensor_1 = 2 ; // nivel em 100%
const int Sensor_2 = 3 ; // nivel em 50%
const int Sensor_3 = 4 ; // nivel em 15%
const int ledPin_Sensor_1 = 8 ; // led sem pino 8
const int ledPin_Sensor_2 = 9 ; // led sem pino 9
const int ledPin_Sensor_3 = 10 ; // led no pino 10
int estadoSensor_1; // variável para ler o status do Sensor_1
intestadoSensor_2; // variável para ler o status do Sensor_2
int estadoSensor_3; // variável para ler o status do Sensor_3
void setup () {
  pinMode (Sensor_1, INPUT); // Pino com sensor será entrada
  pinMode (Sensor_2, INPUT); // Pino com sensor será entrada
  pinMode (Sensor_3, INPUT); // Pino com sensor será entrada  
         
  pinMode (ledPin_Sensor_1, OUTPUT); // Pino do led será saída
  pinMode (ledPin_Sensor_2, OUTPUT); // Pino do led será saída
  pinMode (ledPin_Sensor_3, OUTPUT); // O pino do led será saída        
}
 
void loop () {
 Serial . começar ( 9600 );  
  estadoSensor_1 = digitalRead (Sensor_1); // le o estado do Sensor_1 - HIGH OU LOW
  if (estadoSensor_1 == LOW) { // Se o sensor estiver procurando (LOW)
    digitalWrite (ledPin_Sensor_1, HIGH); // acende o led do pino 8.
  } else { // se não estiver invocado (HIGH)
    digitalWrite (ledPin_Sensor_1, LOW); // deixa o led do pino 8 apagado
  }
  estadoSensor_2 = digitalRead (Sensor_2);// le o estado do Sensor_2 - HIGH OU LOW
  if (estadoSensor_2 == LOW) { // Se o sensor estiver ocupado (LOW)
    digitalWrite (ledPin_Sensor_2, HIGH); // acende o led do pino 9.
  } else { // se não estiver invocado (HIGH)
    digitalWrite (ledPin_Sensor_2, LOW); // deixa o led do pino 9 apagado
  }
  estadoSensor_3 = digitalRead (Sensor_3); // le o estado do Sensor_3 - HIGH OU LOW
  if (estadoSensor_3 == LOW) { // Se o sensor estiver procurando (LOW)
    digitalWrite (ledPin_Sensor_3, HIGH); // acende o led do pino 10.
  }else { // se não estiver (HIGH)
    digitalWrite (ledPin_Sensor_3, LOW); // deixa o led do pino 10 desligado
  }  
}
O DESSA FORMA 

PARA A PLACA KC686 A4 ESSE CODIGO JA RODA POREM SEM AS CONFIGURACOES DE ACESSO E ACRESCENTAR O QUE FOR NECESSÁRIO PARA A PLACA KC686 A8 RECEBER OS SINAAIS E ATUAL COMO SE FOSSE NELA 


const int PIN_SENSOR_1 = 36;
const int PIN_SENSOR_2 = 39;
const int PIN_SENSOR_3 = 27;
const int PIN_RELAY_1 = 2;
const int PIN_RELAY_2 = 15;
const int PIN_RELAY_3 = 5;
const int PIN_RELAY_4 = 4;
const int PIN_BUZZER = 18;
const int BOTAO_4 = 14;

bool sensor_1_status = falso;
bool sensor_2_status = falso;
bool sensor_3_status = falso;

void setup() {
  Serial.begin(115200);
  pinMode(PIN_SENSOR_1, INPUT);
  pinMode(PIN_SENSOR_2, INPUT);
  pinMode(PIN_SENSOR_3, INPUT);
  pinMode(PIN_RELAY_1, OUTPUT);
  pinMode(PIN_RELAY_2, OUTPUT);
  pinMode(PIN_RELAY_3, OUTPUT);
  pinMode(PIN_RELAY_4, OUTPUT);
  pinMode(PIN_BUZZER, OUTPUT);
  pinMode(BOTAO_4, INPUT_PULLUP);
}

loop void() {
  // leitura dos sensores
  sensor_1_status = digitalRead(PIN_SENSOR_1);
  sensor_2_status = digitalRead(PIN_SENSOR_2);
  sensor_3_status = digitalRead(PIN_SENSOR_3);
 
  // controle do relay 4 pelo botão 4
  if (digitalRead(BOTAO_4) == BAIXO) {
    Serial.println("Botão 4 sofrido. Relé 4 ligado.");
      digitalWrite(PIN_RELAY_4, ALTO);
  } outro {
    Serial.println("Botão 4 não intoxicado. Relé 4 desligado.");
    digitalWrite(PIN_RELAY_4, BAIXO);
     
  }
 
  // monitoramento dos níveis
  if (sensor_1_status == BAIXO) {
    Serial.println("Reservatório cheio com 100% de água!");
    digitalWrite(PIN_RELAY_1, ALTO);
  } outro {
    Serial.println("Reservatório não está cheio.");
    digitalWrite(PIN_RELAY_1, BAIXO);
  }

  if (sensor_2_status == BAIXO) {
    Serial.println("Reservatório com mais 50% de água.");
    digitalWrite(PIN_RELAY_2, ALTO);
  } outro {
    Serial.println("Reservatório não está com 50% de água.");
    digitalWrite(PIN_RELAY_2, BAIXO);
  }
 
  if (sensor_3_status == BAIXO) {
    Serial.println("Reservatório com mais de 15% de água.");
    digitalWrite(PIN_RELAY_3, ALTO);
    digitalWrite(PIN_BUZZER, BAIXO);
  } outro {
    Serial.println("Reservatório com menos de 15% de água.");
    digitalWrite(PIN_RELAY_3, BAIXO);
    digitalWrite(PIN_BUZZER, ALTO);
  }
  atraso(5000); // aguarde 5 segundos antes de fazer a próxima leitura


}

Print this item

  Fatal error while uploading sketch to A16
Posted by: tanoshimi - 03-20-2023, 03:12 PM - Forum: KC868-A16 - Replies (4)

Hi,  I recently bought a KC868-A16 board but am unable to use it, since I receive a fatal error when attempting to upload any new sketches onto it Sad

I'm using the Arduino IDE v2.0.4, targetting the "NodeMCU-32s" board from the esp32 boards definitions (v2.0.7). This is the error I receive when attempting to upload any sketch:

Code:
Sketch uses 292297 bytes (22%) of program storage space. Maximum is 1310720 bytes.
Global variables use 25300 bytes (7%) of dynamic memory, leaving 302380 bytes for local variables. Maximum is 327680 bytes.
esptool.py v4.5.1
Serial port COM7
Connecting....
Chip is ESP32-D0WD-V3 (revision v3.0)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
Crystal is 40MHz
MAC: 90:38:0c:a4:38:94
Uploading stub...
Running stub...
Stub running...
WARNING: Failed to communicate with the flash chip, read/write operations will fail. Try checking the chip connections or removing any other hardware connected to IOs.
Configuring flash size...
Flash will be erased from 0x00001000 to 0x00005fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x0000e000 to 0x0000ffff...
Flash will be erased from 0x00010000 to 0x00057fff...
Compressed 17520 bytes to 12170...
Writing at 0x00001000... (100 %)

A fatal error occurred: Serial data stream stopped: Possible serial noise or corruption.
Failed uploading: uploading error: exit status 2


There is not other hardware connected to the board. I am using the power supply and USB-C cable that it was supplied with (although I have also tried swapping these for other ones, and also tried different USB ports on my laptop).
As suggested elsewhere, I have tried reducing the upload speed from the default 921600 to 115200, but that made no difference.
The board itself seemed well-packed and doesn't show any obvious signs of damage, but I'm wondering if the chip is faulty, since the error appears to suggest a problem with the flash memory?

Hopefully you can advise! Thanks,

Alastair

Print this item

  KC868-H32B Pro work with KC868-COLB-Mini + KC868-AK
Posted by: admin - 03-20-2023, 05:53 AM - Forum: Schematic and diagram - No Replies

   

Print this item

  KC868-A256 ESP32 GPIO Module Released!
Posted by: admin - 03-19-2023, 10:53 AM - Forum: News - No Replies

we have design this ESP32 GPIO board (KC868-A256) for home assistant. It use by ESP32-WROOM-32E, 256CH digial input ports + 256CH MOSFET output ports + 4CH analog input ports + RS485 + Ethernet. The output design by 74HC595 chip. The input design by 74HC165 chip. You can write your own arduino source code for home automation DIY. You can also integrate to home assistant by ESPHome.
[Image: KC868-A256-1_01.jpg]
[Image: KC868-A256-1_02.jpg]
[Image: KC868-A256-1_03.jpg]

Print this item