add block for timestamp from internal rtc
This commit is contained in:
		
							parent
							
								
									9526b154bf
								
							
						
					
					
						commit
						a4641938f0
					
				| @ -97,9 +97,8 @@ Blockly.Blocks["sensebox_internal_rtc_set"] = { | ||||
|   init: function () { | ||||
|     this.setHelpUrl(Blockly.Msg.sensebox_rtc_helpurl); | ||||
|     this.setColour(getColour().time); | ||||
|     this.appendDummyInput().appendField(Blockly.Msg.sensebox_internal_rtc_set); | ||||
|     this.appendValueInput("time").appendField( | ||||
|       Blockly.Msg.sensebox_internal_rtc_epoch | ||||
|       Blockly.Msg.sensebox_internal_rtc_set | ||||
|     ); | ||||
|     this.setPreviousStatement(true); | ||||
|     this.setNextStatement(true); | ||||
| @ -129,3 +128,15 @@ Blockly.Blocks["sensebox_internal_rtc_get"] = { | ||||
|     this.setTooltip(Blockly.Msg.sensebox_internal_rtc_get_tooltip); | ||||
|   }, | ||||
| }; | ||||
| 
 | ||||
| Blockly.Blocks["sensebox_internal_rtc_get_timestamp"] = { | ||||
|   init: function () { | ||||
|     this.setHelpUrl(Blockly.Msg.sensebox_internal_rtc_helpurl); | ||||
|     this.setColour(getColour().time); | ||||
|     this.appendDummyInput().appendField( | ||||
|       Blockly.Msg.sensebox_internal_rtc_get_timestamp | ||||
|     ); | ||||
|     this.setOutput(true); | ||||
|     this.setTooltip(Blockly.Msg.sensebox_internal_rtc_get_timestamp_tooltip); | ||||
|   }, | ||||
| }; | ||||
|  | ||||
| @ -14,6 +14,6 @@ Blockly.Arduino.sensebox_ntp_init = function () { | ||||
| 
 | ||||
| Blockly.Arduino.sensebox_ntp_get = function () { | ||||
|   var format = this.getFieldValue("dropdown"); | ||||
|   var code = `timeClient.${format}();`; | ||||
|   var code = `timeClient.${format}()`; | ||||
|   return [code, Blockly.Arduino.ORDER_ATOMIC]; | ||||
| }; | ||||
|  | ||||
| @ -115,5 +115,25 @@ Blockly.Arduino.sensebox_internal_rtc_set = function () { | ||||
| Blockly.Arduino.sensebox_internal_rtc_get = function () { | ||||
|   var dropdown = this.getFieldValue("dropdown"); | ||||
|   var code = `rtc.get${dropdown}()`; | ||||
|   return code; | ||||
|   return [code, Blockly.Arduino.ORDER_ATOMIC]; | ||||
| }; | ||||
| 
 | ||||
| Blockly.Arduino.sensebox_internal_rtc_get_timestamp = function () { | ||||
|   Blockly.Arduino.variables_["rtc_timestamp"] = `char timestamp[20];`; | ||||
|   Blockly.Arduino.codeFunctions_["getTimeStamp"] = ` | ||||
| char* getTimeStamp() { | ||||
| uint8_t sec, min, hour, day, month; | ||||
|  uint16_t year; | ||||
| sec = rtc.getSeconds(); | ||||
| min = rtc.getMinutes(); | ||||
| hour = rtc.getHours(); | ||||
| day = rtc.getDay(); | ||||
| month = rtc.getMonth(); | ||||
| year = rtc.getYear(); | ||||
|  sprintf(timestamp, "%02d-%02d-%02dT%02d:%02d:%02dZ", year, month, day, hour, min, sec); | ||||
|  return timestamp; | ||||
|  } | ||||
|   `;
 | ||||
|   var code = `getTimeStamp()`; | ||||
|   return [code, Blockly.Arduino.ORDER_ATOMIC]; | ||||
| }; | ||||
|  | ||||
| @ -434,7 +434,8 @@ if (airSensor.begin() == false) | ||||
|   while (1) | ||||
|     ; | ||||
| }`;
 | ||||
|   Blockly.Arduino.setupCode_["scd30_staleData"] = "airSensor.useStaleData(true);"; | ||||
|   Blockly.Arduino.setupCode_["scd30_staleData"] = | ||||
|     "airSensor.useStaleData(true);"; | ||||
|   var code = ""; | ||||
|   switch (dropdown) { | ||||
|     case "temperature": | ||||
|  | ||||
| @ -1,14 +1,11 @@ | ||||
| export const NTP = { | ||||
|   sensebox_ntp_init: "Initialisiere NTP", | ||||
|   sensebox_ntp_init_tooltip: | ||||
|     "Initialisiere die RTC. Schließe diese an einen der 5 I2C/Wire Anschlüsse an und lege die Batterie ein. Bevor du die Uhrzeit auslesen kannst muss diese zunächst einmal gesetzt werden. Dieser Schritt muss normalerweise nur einmalig durchgeführt werden.", | ||||
|   sensebox_ntp_set_tooltip: | ||||
|     "Stellt die Uhrzeit der RTC ein. Beachte, dass du diesen Block im Setup ausführst.", | ||||
|   sensebox_ntp_get: "Zeitstempel (RFC 3339)", | ||||
|   sensebox_ntp_init_tooltip: "Initialisiere den NTP Server.", | ||||
|   sensebox_ntp_get: "Hole Zeit von NTP Server: ", | ||||
|   sensebox_ntp_get_timestamp_tooltip: | ||||
|     "Gibt dir einen in ISO 8601 formatierten Zeitstempel zurück. Bsp: 2021-12-24T18:21Z", | ||||
|   sensebox_ntp_get_tooltip: | ||||
|     "Gibt dir den ausgewählten Wert zurück. Unix Zeit entspricht der Anzahl der Sekunden seit dem 1.1.1970", | ||||
|   sensebox_ntp_epochTime: "Unix Zeit", | ||||
|   sensebox_ntp_formattedTimeStamp: "Zeitstempel", | ||||
|   sensebox_ntp_formattedTimeStamp: "Zeitstempel (hh:mm:ss)", | ||||
| }; | ||||
|  | ||||
| @ -5,7 +5,7 @@ export const RTC = { | ||||
|   sensebox_rtc_set: "Setze Uhrzeit/Datum der externen RTC", | ||||
|   sensebox_rtc_set_tooltip: | ||||
|     "Stellt die Uhrzeit der RTC ein. Beachte, dass du diesen Block im Setup ausführst.", | ||||
|   sensebox_rtc_get_timestamp: "Zeitstempel (RFC 3339)", | ||||
|   sensebox_rtc_get_timestamp: "Zeitstempel externe RTC (RFC 3339)", | ||||
|   sensebox_rtc_get_timestamp_tooltip: | ||||
|     "Gibt dir einen in ISO 8601 formatierten Zeitstempel zurück. Bsp: 2021-12-24T18:21Z", | ||||
|   sensebox_rtc_get: "Wert (externe RTC): ", | ||||
| @ -16,18 +16,18 @@ export const RTC = { | ||||
|   sensebox_rtc_day: "Tag", | ||||
|   sensebox_rtc_month: "Monat", | ||||
|   sensebox_rtc_year: "Jahr", | ||||
|   sensebox_internal_rtc_init: "Initialise internal RTC", | ||||
|   sensebox_internal_rtc_init: "Initialisiere interne RTC", | ||||
|   sensebox_internal_rtc_init_tooltip: | ||||
|     "Initialise the internal RTC. This RTC is not battery backed and will be reset on every power cycle.", | ||||
|   sensebox_internal_rtc_set: "Set internal RTC time/date:", | ||||
|     "Initialisieren der internen RTC. Diese RTC ist nicht batteriegepuffert und wird bei jedem Einschaltvorgang zurückgesetzt", | ||||
|   sensebox_internal_rtc_set: "Setze interne RTC Zeit/Datum (Unix Time)", | ||||
|   sensebox_internal_rtc_set_tooltip: | ||||
|     "Sets the time of the internal RTC. Note that you execute this block in the setup.", | ||||
|     "Setzt die Zeit der internen RTC. Führe den Block einmalig im Setup aus und setzte die Uhrzeit über die Unix Zeit.", | ||||
|   sensebox_internal_rtc_get: "Wert (interne RTC): ", | ||||
|   sensebox_internal_rtc_get_timestamp: "Get internal RTC timestamp", | ||||
|   sensebox_internal_rtc_get_timestamp: "Zeitstempel interne RTC (RFC 3339)", | ||||
|   sensebox_internal_rtc_get_timestamp_tooltip: | ||||
|     "Returns a timestamp formatted in ISO 8601. Ex: 2021-12-24T18:21Z", | ||||
|   sensebox_internal_rtc_get_tooltip: "Returns the selected value", | ||||
|   sensebox_internal_rtc_epoch: "epoch", | ||||
|   sensebox_internal_rtc_get_tooltip: "Gibt den ausgewählten Wert zurück", | ||||
|   sensebox_internal_rtc_epoch: "Unix Zeit", | ||||
|   sensebox_internal_rtc_year: "Jahr", | ||||
|   sensebox_internal_rtc_month: "Monat", | ||||
|   sensebox_internal_rtc_day: "Tag", | ||||
|  | ||||
| @ -2,7 +2,7 @@ export const NTP = { | ||||
|   sensebox_ntp_init: "Initialise NTP", | ||||
|   sensebox_ntp_init_tooltip: | ||||
|     "Initialisiere die RTC. Schließe diese an einen der 5 I2C/Wire Anschlüsse an und lege die Batterie ein. Bevor du die Uhrzeit auslesen kannst muss diese zunächst einmal gesetzt werden. Dieser Schritt muss normalerweise nur einmalig durchgeführt werden.", | ||||
|   sensebox_ntp_get: "Hole Zeit von NTP Server", | ||||
|   sensebox_ntp_get: "Get time from NTP Server: ", | ||||
|   sensebox_ntp_get_tooltip: | ||||
|     "Gibt dir den ausgewählten Wert zurück. Unix Zeit entspricht der Anzahl der Sekunden seit dem 1.1.1970", | ||||
|   sensebox_ntp_epochTime: "Unix time", | ||||
|  | ||||
| @ -5,7 +5,7 @@ export const RTC = { | ||||
|   sensebox_rtc_set: "Set RTC time/date:", | ||||
|   sensebox_rtc_set_tooltip: | ||||
|     "Sets the time of the RTC. Note that you execute this block in the setup.", | ||||
|   sensebox_rtc_get_timestamp: "Get timestamp", | ||||
|   sensebox_rtc_get_timestamp: "Timestamp external RTC (RFC 3339)", | ||||
|   sensebox_rtc_get_timestamp_tooltip: | ||||
|     "Returns a timestamp formatted in ISO 8601. Ex: 2021-12-24T18:21Z", | ||||
|   sensebox_rtc_get_tooltip: "Returns the selected value", | ||||
| @ -24,11 +24,11 @@ export const RTC = { | ||||
|   sensebox_internal_rtc_set_tooltip: | ||||
|     "Sets the time of the internal RTC. Note that you execute this block in the setup.", | ||||
|   sensebox_internal_rtc_get: "Get: ", | ||||
|   sensebox_internal_rtc_get_timestamp: "Get internal RTC timestamp", | ||||
|   sensebox_internal_rtc_get_timestamp: "Timestamp internal RTC (RFC 3339)", | ||||
|   sensebox_internal_rtc_get_timestamp_tooltip: | ||||
|     "Returns a timestamp formatted in ISO 8601. Ex: 2021-12-24T18:21Z", | ||||
|   sensebox_internal_rtc_get_tooltip: "Returns the selected value", | ||||
|   sensebox_internal_rtc_epoch: "epoch", | ||||
|   sensebox_internal_rtc_epoch: "Unix Time", | ||||
|   sensebox_internal_rtc_year: "year", | ||||
|   sensebox_internal_rtc_month: "month", | ||||
|   sensebox_internal_rtc_day: "day", | ||||
|  | ||||
| @ -549,6 +549,7 @@ class Toolbox extends React.Component { | ||||
|             <Block type="sensebox_internal_rtc_init"></Block> | ||||
|             <Block type="sensebox_internal_rtc_set"></Block> | ||||
|             <Block type="sensebox_internal_rtc_get"></Block> | ||||
|             <Block type="sensebox_internal_rtc_get_timestamp"></Block> | ||||
|           </Category> | ||||
|           <Category | ||||
|             id="timeUTP" | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user