TinyForest system front-end written with ReactJS
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

284 lines
8.8 KiB

4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
  1. {
  2. "plant": {
  3. "id": "PLT01",
  4. "nimi": "Valkosipuli",
  5. "type": "Sipuli",
  6. "planting_day": "10.10.2019",
  7. "short_description": "Sipulikasvi, joka maistuu hyvältä",
  8. "long_description": "Sipulikasvi, joka maistuu hyvältä ja viihtyy hyvin",
  9. "imagefile": "../Photos/valkosipulivk1.jpeg",
  10. "logfile": "/path/to/plant/log/file.log"
  11. },
  12. "sensors": {
  13. "moisture": {
  14. "enabled": true,
  15. "sensor_type": "common",
  16. "gpio_pin": 16,
  17. "gpio_pin_initialstate": "LOW",
  18. "gpio_pin_upstate": "HIGH",
  19. "sensor_friendly_name": "Moisture sensor (1)",
  20. "trigger_data_type": "dummy_on_off",
  21. "trigger_min": 0.00,
  22. "trigger_max": 1.00,
  23. "time": {
  24. "use_time": true,
  25. "months": {
  26. "1": true,
  27. "2": true,
  28. "3": true,
  29. "4": true,
  30. "5": true,
  31. "6": true,
  32. "7": true,
  33. "8": true,
  34. "9": true,
  35. "10": true,
  36. "11": true,
  37. "12": true
  38. },
  39. "weeks": {
  40. "1": true,
  41. "2": true,
  42. "3": true,
  43. "4": true
  44. },
  45. "days": {
  46. "mon": { "enabled": true, "interval": ["12.00", "18.00"] },
  47. "tue": { "enabled": true, "interval": ["08.00", "16.00"] },
  48. "wed": { "enabled": true, "interval": ["13.00", "20.00"] },
  49. "thu": { "enabled": true, "interval": ["04.00", "12.00"] },
  50. "fri": { "enabled": true, "interval": ["12.00", "18.00"] },
  51. "sat": { "enabled": true, "interval": ["06.00", "14.00"] },
  52. "sun": { "enabled": true, "interval": ["15.00", "23.59"] }
  53. }
  54. },
  55. "devices_out": {
  56. "common": {
  57. "use_devices_out": true,
  58. "keepalivetime_min": 0.25,
  59. "keepalivetime_max": 5.00
  60. },
  61. "devices_out_spec": [
  62. {
  63. "enabled": true,
  64. "gpio_pin": 23,
  65. "gpio_pin_initialstate": "LOW",
  66. "gpio_pin_upstate": "HIGH",
  67. "operation_type": "irrigation",
  68. "name": "pump_1",
  69. "friendly_name": "Water pump (1)"
  70. },
  71. {
  72. "enabled": true,
  73. "gpio_pin": 24,
  74. "gpio_pin_initialstate": "LOW",
  75. "gpio_pin_upstate": "HIGH",
  76. "operation_type": "irrigation",
  77. "name": "pump_2",
  78. "friendly_name": "Water pump (2)"
  79. }
  80. ]
  81. }
  82. },
  83. "light": {
  84. "enabled": true,
  85. "sensor_type": "common",
  86. "gpio_pin": 19,
  87. "gpio_pin_initialstate": "LOW",
  88. "gpio_pin_upstate": "HIGH",
  89. "sensor_friendly_name": "Light sensor (1)",
  90. "trigger_data_type": "i2c_device: 200",
  91. "trigger_min": 0.00,
  92. "trigger_max": 1.00,
  93. "time": {
  94. "use_time": true,
  95. "months": {
  96. "1": true,
  97. "2": true,
  98. "3": true,
  99. "4": true,
  100. "5": true,
  101. "6": true,
  102. "7": true,
  103. "8": true,
  104. "9": true,
  105. "10": true,
  106. "11": true,
  107. "12": true
  108. },
  109. "weeks": {
  110. "1": true,
  111. "2": true,
  112. "3": true,
  113. "4": true
  114. },
  115. "days": {
  116. "mon": { "enabled": true , "interval": ["12.00", "18.00"] },
  117. "tue": { "enabled": true , "interval": ["08.00", "16.00"] },
  118. "wed": { "enabled": true , "interval": ["13.00", "20.00"] },
  119. "thu": { "enabled": true , "interval": ["04.00", "12.00"] },
  120. "fri": { "enabled": true , "interval": ["12.00", "18.00"] },
  121. "sat": { "enabled": true , "interval": ["06.00", "14.00"] },
  122. "sun": { "enabled": true , "interval": ["15.00", "23.59"] }
  123. }
  124. },
  125. "devices_out": {
  126. "common": {
  127. "use_devices_out": true,
  128. "keepalivetime_min": 5.00,
  129. "keepalivetime_max": 600.00
  130. },
  131. "devices_out_spec": [
  132. {
  133. "enabled": true,
  134. "gpio_pin": "",
  135. "gpio_pin_initialstate": "LOW",
  136. "gpio_pin_upstate": "HIGH",
  137. "operation_type": "lighting",
  138. "name": "light_1",
  139. "friendly_name": "UV lamp (1)"
  140. }
  141. ]
  142. }
  143. },
  144. "temperature": {
  145. "enabled": true,
  146. "gpio_pin": 36,
  147. "sensor_type": "temperature",
  148. "device_type": "THERM_SENSOR_DS18B20",
  149. "device_id": "",
  150. "sensor_friendly_name": "Temperature sensor (1)",
  151. "time": {
  152. "use_time": true,
  153. "months": {
  154. "1": true,
  155. "2": true,
  156. "3": true,
  157. "4": true,
  158. "5": true,
  159. "6": true,
  160. "7": true,
  161. "8": true,
  162. "9": true,
  163. "10": true,
  164. "11": true,
  165. "12": true
  166. },
  167. "weeks": {
  168. "1": true,
  169. "2": true,
  170. "3": true,
  171. "4": true
  172. },
  173. "days": {
  174. "mon": { "enabled": true , "interval": ["12.00", "18.00"] },
  175. "tue": { "enabled": true , "interval": ["08.00", "16.00"] },
  176. "wed": { "enabled": true , "interval": ["13.00", "20.00"] },
  177. "thu": { "enabled": true , "interval": ["04.00", "12.00"] },
  178. "fri": { "enabled": true , "interval": ["12.00", "18.00"] },
  179. "sat": { "enabled": true , "interval": ["06.00", "14.00"] },
  180. "sun": { "enabled": true , "interval": ["15.00", "23.59"] }
  181. }
  182. },
  183. "temperature": {
  184. "format": "celsius",
  185. "baseline": 30.00,
  186. "threshold": 0.10,
  187. "tolerance": 4.00,
  188. "precision": 12
  189. },
  190. "devices_out": {
  191. "common": {
  192. "use_devices_out": true,
  193. "keepalivetime_min": 0.25,
  194. "keepalivetime_max": 500.00
  195. },
  196. "devices_out_spec": [
  197. {
  198. "enabled": true,
  199. "gpio_pin": 25,
  200. "gpio_pin_initialstate": "HIGH",
  201. "gpio_pin_upstate": "LOW",
  202. "operation_type": "warming",
  203. "name": "warming_1",
  204. "friendly_name": "Battery (1)"
  205. },
  206. {
  207. "enabled": true,
  208. "gpio_pin": 26,
  209. "gpio_pin_initialstate": "HIGH",
  210. "gpio_pin_upstate": "LOW",
  211. "operation_type": "cooling",
  212. "name": "cooling_1",
  213. "friendly_name": "Cooling box (1)"
  214. }
  215. ]
  216. }
  217. },
  218. "acidity": {
  219. "enabled": true,
  220. "sensor_type": "common",
  221. "gpio_pin": "",
  222. "gpio_pin_initialstate": "LOW",
  223. "gpio_pin_upstate": "HIGH",
  224. "sensor_friendly_name": "pH sensor (1)",
  225. "trigger_data_type": "i2c_device: 200",
  226. "trigger_min": 0.00,
  227. "trigger_max": 1.00,
  228. "time": {
  229. "use_time": true,
  230. "months": {
  231. "1": true,
  232. "2": true,
  233. "3": true,
  234. "4": true,
  235. "5": true,
  236. "6": true,
  237. "7": true,
  238. "8": true,
  239. "9": true,
  240. "10": true,
  241. "11": true,
  242. "12": true
  243. },
  244. "weeks": {
  245. "1": true,
  246. "2": true,
  247. "3": true,
  248. "4": true
  249. },
  250. "days": {
  251. "mon": { "enabled": true , "interval": ["12.00", "18.00"] },
  252. "tue": { "enabled": true , "interval": ["08.00", "16.00"] },
  253. "wed": { "enabled": true , "interval": ["13.00", "20.00"] },
  254. "thu": { "enabled": true , "interval": ["04.00", "12.00"] },
  255. "fri": { "enabled": true , "interval": ["12.00", "18.00"] },
  256. "sat": { "enabled": true , "interval": ["06.00", "14.00"] },
  257. "sun": { "enabled": true , "interval": ["15.00", "23.59"] }
  258. }
  259. },
  260. "devices_out": {
  261. "common": {
  262. "use_devices_out": true,
  263. "keepalivetime_min": 0.25,
  264. "keepalivetime_max": 5.00
  265. },
  266. "devices_out_spec": [
  267. {
  268. "enabled": true,
  269. "gpio_pin": "",
  270. "gpio_pin_initialstate": "LOW",
  271. "gpio_pin_upstate": "HIGH",
  272. "operation_type": "fertilize",
  273. "name": "fert_1",
  274. "friendly_name": "Fertilizer pump (1)"
  275. }
  276. ]
  277. }
  278. }
  279. }
  280. }