Skip to content

Commit

Permalink
Develop mode
Browse files Browse the repository at this point in the history
Simulador temp con raw
Quitados strings a debug mode
  • Loading branch information
surfzone-org committed Aug 25, 2022
1 parent e245033 commit 1cc9aa1
Show file tree
Hide file tree
Showing 16 changed files with 247 additions and 117 deletions.
18 changes: 18 additions & 0 deletions include/debuglog_funcs.h
Original file line number Diff line number Diff line change
Expand Up @@ -53,4 +53,22 @@ void debuglog_temperature(int raw, int temp) {
Serial.print(" Raw: ");
Serial.println(raw);
#endif
}

void debuglog_calibration(program_eeprom* prog) {
#ifdef DEBUG_LOG
Serial.print('Options: ');
Serial.print(prog->options);
if(prog->options & EEPROM_OPT_MAPPED != 0) {
Serial.print(" [");
for(byte i = 0; i < prog->lon_temp; i++) {
Serial.print(TEMP_INI + (i * TEMP_INTERVAL));
Serial.print("C: ");
Serial.print(prog->temp_map01[i]));
if(i + 1 < prog->lon_temp) Serial.print(", ");
}
Serial.print("]");
}
else Serial.print(" []");
#endif
}
2 changes: 1 addition & 1 deletion include/eeprom_conf.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ DATA REQUIRED FOR A FIRST START-UP. */
//#define PROJECT_TEMP_IN "ºC"

#define TEMP_INTERVAL 5
#define TEMP_INI 0
#define TEMP_INI 30
#define TEMP_FIN 255
#define TEMP_NUM ((TEMP_FIN - TEMP_INI) / TEMP_INTERVAL) + 1

Expand Down
12 changes: 9 additions & 3 deletions include/global_vars.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
#define RESIST_REAR 4
#define MAX_OPT_RESISTANCE 7

#define RESISTANCE_DEFAULT RESIST_UP + RESIST_DOWN

#define KEY_ENTER 0
#define KEY_CANCEL 1
#define KEY_PLUS 2
Expand All @@ -30,6 +32,8 @@ bool pin_res[] = { // Si queremos activo con high (true) o low (false)
true, true, true, true, true
};

bool develop_mode = false;

byte current_inputs = 0;
bool input_change = false;

Expand All @@ -50,11 +54,13 @@ int current_temp_primary = 0;
int current_temp_secondary = 0;

int raw_primary_sensor = 0;
byte resistances = RESISTANCE_DEFAULT;

int raw_secondary_sensor = 0;

bool resistance_active = false;

byte active_state_machine = STATE_MACHINE_NONE;
byte last_state_machine = STATE_MACHINE_NONE;
bool rear_fan = false;

bool rear_fan = false;
byte active_state_machine = STATE_MACHINE_NONE;
byte last_state_machine = STATE_MACHINE_NONE;
22 changes: 11 additions & 11 deletions include/hardware/lcd1602_SSD1306.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,16 +15,11 @@
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>

#define OLED_RESET 4
Adafruit_SSD1306 display(OLED_RESET);

// this is the Width and Height of Display which is 128 xy 32
#define LOGO16_GLCD_HEIGHT 32
#define LOGO16_GLCD_WIDTH 128

#if (SSD1306_LCDHEIGHT != 32)
#error("Height incorrect, please fix Adafruit_SSD1306.h!");
#endif
#define SCREEN_WIDTH 128 // OLED display width, in pixels
#define SCREEN_HEIGHT 32 // OLED display height, in pixels
#define OLED_RESET -1 // Reset pin # (or -1 if sharing Arduino reset pin)
#define SCREEN_ADDRESS 0x3C ///< See datasheet for Address; 0x3D for 128x64, 0x3C for 128x32
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);

void screen_clear();

Expand Down Expand Up @@ -134,8 +129,13 @@ void screen_write_xy(int x, int y, char *msg, int len) {
}

void screen_init(){
display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // initialize with the I2C addr 0x3C (for the 128x32)
if(!display.begin(SSD1306_SWITCHCAPVCC, SCREEN_ADDRESS)) {
Serial.println(F("SSD1306 allocation failed"));
for(;;); // Don't proceed, loop forever
}

display.display();
delay(1000);
screen_clear();
}

Expand Down
1 change: 0 additions & 1 deletion include/hardware/temperature_control.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,6 @@

void read_temperature_primary(){
raw_primary_sensor = analogRead(PRIMARY_SENSOR); // READ TERMISTOR
// TODO: Buscar según tabla
int temp_primary_sensor = read_temperature_map(raw_primary_sensor, &prog_eeprom_actual); // read_temperature(raw_primary_sensor, RESISTANCE_PRIMARY_SENSOR);

#ifdef DEBUG_LOG_HW
Expand Down
9 changes: 7 additions & 2 deletions include/includes.h
Original file line number Diff line number Diff line change
Expand Up @@ -69,13 +69,17 @@
//======================================

#if defined DUMMY_SENSORS
#include <test/inputs_control.h>
#include <test/temperature_control.h>
#else
#include <hardware/inputs_control.h>
#include <hardware/temperature_control.h>
#endif

#if defined DUMMY_INPUTS
#include <test/inputs_control.h>
#else
#include <hardware/inputs_control.h>
#endif

#include <hardware/resistance_control.h>
#include <hardware/zero_crossing_control.h>
#include <hardware/dimmer_control.h>
Expand All @@ -87,5 +91,6 @@
// STATE MACHINES INCLUDES: =
//======================================

#include <statemachines/common.h>
#include <statemachines/cooking.h>
#include <statemachines/setup.h>
25 changes: 22 additions & 3 deletions include/oven_control.h
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,8 @@ void time_click() {
unsigned long time_now = millis();

//OVERFLOW
if (last_timer > time_now){
if (last_timer > time_now)
timer_counter = time_now;
}
last_timer = time_now;

if (time_now >= timer_counter){
ufast_click = true;
Expand All @@ -46,6 +44,8 @@ void time_click() {
full_click = true;
}
else full_click = false;

last_timer = time_now;
}

//==========================================
Expand Down Expand Up @@ -105,3 +105,22 @@ byte control_dimmer_cool(int temp) {
set_dimmer_control_cool(temp >= COOL_FAN_TEMPERATURE_20 ? DIMMER_CONTROL_POWER_100 : DIMMER_CONTROL_POWER_0);
return 0;
}

void read_temperature_sensors() {
if((prog_eeprom_actual.options & EEPROM_OPT_MAPPED) == 0){
read_temperature_secondary();
if(develop_mode == true) read_temperature_primary();
current_temp = current_temp_secondary;
temp_change = develop_mode || temp_change_secondary;
}
else {
#ifndef DUMMY_SENSORS
read_temperature_secondary();
#else
if(develop_mode == true) read_temperature_secondary();
#endif
read_temperature_primary();
current_temp = current_temp_primary;
temp_change = develop_mode || temp_change_primary;
}
}
23 changes: 15 additions & 8 deletions include/resourcestrings_en.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,18 @@
***************************************************************/
#define RESSTR_APP_NAME "Univ ovenCONTROL"
#define RESSTR_STARTING "STARTING"
#define RESSTR_MIN_TEMP "Min Temp"
#define RESSTR_MAX_TEMP "Max Temp"

#define RESSTR_PROG_TEMP "Prog. Temp"
#define RESSTR_CURR_TEMP "Current Temp"
#define RESSTR_COOKING "Cooking"
#define RESSTR_COOKING_MODE "Cooking Mode"
#define RESSTR_SEL_TEMP "Select Temp."
#define RESSTR_WARM_UP "Warming Up"
#define RESSTR_COOKING "Cooking"
#define RESSTR_SETUP "Setup"
#define RESSTR_SETUP_MODE "Setup Mode"

#define RESSTR_SETUP_MENU_CALIBRATE "Calibrate"
#define RESSTR_SETUP_MENU_FORMAT_EEPROM "Format EEPROM"
#define RESSTR_SETUP_MENU_TEST_FAN "Test fan"
#define RESSTR_SETUP_MENU_TEST_REAR_FAN "Test rear fan"
#define RESSTR_SETUP_MENU_TEST_COOL_FAN "Test cool fan"
#define RESSTR_SETUP_MENU_DEV_MODE "Dev mode"
#define RESSTR_SETUP_MENU_RESET "Reset"
#define RESSTR_SETUP_MENU_VERSION "Software version"

Expand All @@ -35,5 +30,17 @@
#define RESSTR_FORMAT_EEPROM_END "Format EEPROM Finished"

#define RESSTR_OPERATION_CANCELED "Canceled Operation"
#define RESSTR_SCREEN_WAIT "PUSH A BUTTON TO START"

#define RESSTR_ENABLED "Enabled"
#define RESSTR_DISABLED "Disabled"

#if defined DEBUG_LOG_HW || defined DEBUG_LOG
#define RESSTR_MIN_TEMP "Min Temp"
#define RESSTR_MAX_TEMP "Max Temp"
#define RESSTR_PROG_TEMP "Prog. Temp"
#define RESSTR_CURR_TEMP "Current Temp"
#define RESSTR_COOKING_MODE "Cooking Mode"
#define RESSTR_SETUP_MODE "Setup Mode"
#endif

#define RESSTR_SCREEN_WAIT "PUSH A BUTTON TO START"
24 changes: 16 additions & 8 deletions include/resourcestrings_es.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,23 +8,18 @@
***************************************************************/
#define RESSTR_APP_NAME "Univ ovenCONTROL"
#define RESSTR_STARTING "INICIALIZANDO"
#define RESSTR_MIN_TEMP "Temp Min"
#define RESSTR_MAX_TEMP "Temp Max"

#define RESSTR_PROG_TEMP "Temp Prog."
#define RESSTR_CURR_TEMP "Temp Actual"
#define RESSTR_COOKING "Cocinando"
#define RESSTR_COOKING_MODE "Modo Cocinar"
#define RESSTR_SEL_TEMP "Seleccionar temperatura"
#define RESSTR_WARM_UP "Calentando"
#define RESSTR_SETUP "Configurar"
#define RESSTR_SETUP_MODE "Modo Configurar"
#define RESSTR_COOKING "Cocinando"
#define RESSTR_SETUP "Configuracion"

#define RESSTR_SETUP_MENU_CALIBRATE "Calibrate"
#define RESSTR_SETUP_MENU_FORMAT_EEPROM "Format EEPROM"
#define RESSTR_SETUP_MENU_TEST_FAN "Test fan"
#define RESSTR_SETUP_MENU_TEST_REAR_FAN "Test rear fan"
#define RESSTR_SETUP_MENU_TEST_COOL_FAN "Test cool fan"
#define RESSTR_SETUP_MENU_DEV_MODE "Dev mode"
#define RESSTR_SETUP_MENU_RESET "Reset"
#define RESSTR_SETUP_MENU_VERSION "Software version"

Expand All @@ -36,3 +31,16 @@

#define RESSTR_OPERATION_CANCELED "Operacion cancelada"
#define RESSTR_SCREEN_WAIT "PULSE UNA TECLA PARA EMPEZAR"

#define RESSTR_ENABLED "Activo"
#define RESSTR_DISABLED "Inactivo"

#if defined DEBUG_LOG_HW || defined DEBUG_LOG
#define RESSTR_MIN_TEMP "Temp Min"
#define RESSTR_MAX_TEMP "Temp Max"
#define RESSTR_PROG_TEMP "Temp Prog."
#define RESSTR_CURR_TEMP "Temp Actual"
#define RESSTR_COOKING_MODE "Modo Cocinar"
#define RESSTR_SETUP_MODE "Modo Configurar"
#endif

27 changes: 27 additions & 0 deletions include/statemachines/common.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
/***************************************************************
openELECTRO
Home appliance control, based on arduino and other MPU
https://github.com/carlymx/openELECTRO
[email protected], [email protected]
2022
***************************************************************/

void sm_change_temp() {
screen_current_temp(current_temp);

if(develop_mode == true) {
char aux[14];
sprintf(aux, "%4d %4d:%3d", raw_primary_sensor, raw_secondary_sensor, current_temp_secondary);
screen_text(aux);
}
}

void incr_resistances(){
resistances++;
if (resistances > MAX_OPT_RESISTANCE) resistances = 1;
rear_fan = ((resistances & RESIST_REAR) != 0);
screen_resistances(resistances);
}


Loading

0 comments on commit 1cc9aa1

Please sign in to comment.