{"id":531,"date":"2021-03-22T13:58:42","date_gmt":"2021-03-22T13:58:42","guid":{"rendered":"https:\/\/starthardware.org\/en\/?p=531"},"modified":"2021-03-26T20:45:28","modified_gmt":"2021-03-26T20:45:28","slug":"raylfx-village","status":"publish","type":"post","link":"https:\/\/starthardware.org\/en\/raylfx-village\/","title":{"rendered":"RaylFX \u2013 Village"},"content":{"rendered":"\n<p>This module of the <a href=\"https:\/\/starthardware.org\/en\/raylfx-effects-for-model-railroads-and-model-making-with-arduino-nano\/\" target=\"_blank\" rel=\"noreferrer noopener\">RaylFX system<\/a> can be used to illuminate a settlement, a building or a city. Up to ten residential buildings can be illuminated. In addition, there is an LED that simulates a TV, street lighting with two channels that light up at night, one channel that flickers and two channels for one or two billboards that either alternate or flash differently from each other.<\/p>\n\n\n\n<figure class=\"wp-block-embed aligncenter is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<div class=\"sp-dsgvo sp-dsgvo-embedding-container sp-dsgvo-embedding-youtube \"><div class=\"sp-dsgvo-blocked-embedding-placeholder sp-dsgvo-blocked-embedding-placeholder-youtube\">  <div class=\"sp-dsgvo-blocked-embedding-placeholder-header\"><img decoding=\"async\" class=\"sp-dsgvo-blocked-embedding-placeholder-header-icon\" src=\"https:\/\/starthardware.org\/en\/wp-content\/plugins\/shapepress-dsgvo\/public\/images\/embeddings\/icon-youtube.svg\"\/>We need your consent to load the content of YouTube.<\/div>  <div class=\"sp-dsgvo-blocked-embedding-placeholder-body\"><p>If you click on this video we will play the video, load scripts on your device, store cookies and collect personal data. This enables [Google Ireland Limited, Irland] to track activities on the Internet and to display advertising in a target group-oriented manner. There is a data transfer to the USA, which does not have EU-compliant data protection. You will find further information <a target=\"_blank\" href=\"#\" class=\"sp-dsgvo-navigate-privacy-policy\">here<\/a>.<\/p>   <div class=\"sp-dsgvo-blocked-embedding-button-container\"> <a href=\"#\" class=\"sp-dsgvo-direct-enable-popup sp-dsgvo-blocked-embedding-button-enable\" data-slug=\"youtube\">Click here to enable this content.<\/a><\/div>  <\/div><\/div><div class=\"sp-dsgvo-hidden-embedding-content sp-dsgvo-hidden-embedding-content-youtube\" data-sp-dsgvo-embedding-slug=\"youtube\">Jmx0O2RpdiBjbGFzcz0mcXVvdDtudi1pZnJhbWUtZW1iZWQmcXVvdDsmZ3Q7Jmx0O2lmcmFtZSB0aXRsZT0mcXVvdDtSYWlsRlggU2llZGx1bmcgJm5kYXNoOyBFZmZla3RlIGYmdXVtbDtyIE1vZGVsbGJhaG4gdW5kIE1vZGVsbGJhdSBtaXQgQXJkdWlubyZxdW90OyB3aWR0aD0mcXVvdDsxMjAwJnF1b3Q7IGhlaWdodD0mcXVvdDs2NzUmcXVvdDsgc3JjPSZxdW90O2h0dHBzOi8vd3d3LnlvdXR1YmUuY29tL2VtYmVkL3dJanZyVXRuR3kwP2ZlYXR1cmU9b2VtYmVkJnF1b3Q7IGZyYW1lYm9yZGVyPSZxdW90OzAmcXVvdDsgYWxsb3c9JnF1b3Q7YWNjZWxlcm9tZXRlcjsgYXV0b3BsYXk7IGNsaXBib2FyZC13cml0ZTsgZW5jcnlwdGVkLW1lZGlhOyBneXJvc2NvcGU7IHBpY3R1cmUtaW4tcGljdHVyZSZxdW90OyBhbGxvd2Z1bGxzY3JlZW4mZ3Q7Jmx0Oy9pZnJhbWUmZ3Q7Jmx0Oy9kaXYmZ3Q7<\/div><\/div>\n<\/div><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">Wiring Diagram<\/h2>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-wiring-diagram-1024x716-1.jpg\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"716\" src=\"https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-wiring-diagram-1024x716-1.jpg\" alt=\"RaylFX Settlement City Village Lighting Arduino LED Circuit Wiring Diagram\" class=\"wp-image-546\" srcset=\"https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-wiring-diagram-1024x716-1.jpg 1024w, https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-wiring-diagram-1024x716-1-300x210.jpg 300w, https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-wiring-diagram-1024x716-1-768x537.jpg 768w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>This module also works with an Arduino Nano. LEDs are connected to the digital channels 2, 3, 4, 5 and 12, 13, 14 (A0), 15 (A1), 16 (A2), 17 (A3) as residential lighting. Each channel can supply up to 40mA. Additional LEDs can be connected here in parallel to the current LEDs. They then all share one resistor. However, the luminosity of the individual LEDs is reduced. In addition, the LEDs in the respective parallel circuit must be the same (same internal resistance), otherwise only the LED with the smallest internal resistance will light up. At pin 6 a LED is connected, which flickers and should simulate a TV. In my case it is green because football is on.<\/p>\n\n\n\n<p>The street lamps are connected to pins 10 and 11. Additionally there is a connection for a flickering, defective street lamp at pin 9. With these pins you could also realize a motel lighting, in which a letter flashes (known from motel signs :-D)<\/p>\n\n\n\n<p>Pins 7 and 8 can illuminate billboards. They can be set so that they do not flash, flash alternately or flash at different speeds. This can be used to illuminate advertising banners above stores, or to create animations with two phases and so on. Here I could imagine engraved acrylic glass panes, which are illuminated from the edge by LED.<\/p>\n\n\n\n<p>Attention: The control signal of the <a href=\"https:\/\/starthardware.org\/en\/raylfx-effects-for-model-railroads-and-model-making-with-arduino-nano\/\" target=\"_blank\" rel=\"noreferrer noopener\">RaylFX control module<\/a> is applied to pin A4. It controls the time of day and is mandatory.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Code Settings<\/h2>\n\n\n\n<p>Like all RaylFX modules, this one is also controlled by the control module. It provides the time and thus synchronizes all RaylFX modules.<\/p>\n\n\n\n<p>Several settings can be made in the code.<\/p>\n\n\n\n<p>The variable streetlampTimeout controls the switch-on time of the street lamps in milliseconds. These then dim themselves in the specified time.<\/p>\n\n\n\n<p>With the variable <em>streetlampFlicker <\/em>the flickering frequency can be set. The higher the value, the slower the LED flickers at pin 9.<\/p>\n\n\n\n<p>The residential building lights should switch on and off differently, so that the settlement also looks nice and lively. This can be influenced with the variable <em>switchonLikelihood<\/em>. The higher the value, the more displaced the houses switch on. The same for switching off is done by the variable <em>switchoffLikelihood<\/em>.<\/p>\n\n\n\n<p>Now some advertising: The variables <em>adBlink1 <\/em>and <em>adBlink2 <\/em>control the LEDs for the advertising panels. If the value of both variables is the same, they blink alternately. This could be used for an animation. If the value is different, they blink in independent frequencies. So here, for example, two independent advertising boards can be operated. If the value is set to 0, the LEDs light up permanently.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>int streetlightTimeout = 100;           \/\/ switch-on time of the street lights (ms)\nint streetlightFlicker = 1000;          \/\/ the higher the value, the slower the LED flickers at pin 9\nint switchonLikelihood = 2000;          \/\/ the higher the value, the more displaced the residential lighting will turn on\nint switchoffLikelihood = 2000;         \/\/ the higher the value, the more displaced the residential lighting will turn off\nint adBlink1 = 1500;                    \/\/ flashing speed of the advertising LED, 0 = do not flash\nint adBlink2 = 1500;                    \/\/ flashing speed of the advertising LED, 0 = do not flash<\/code><\/pre>\n\n\n\n<p>When uploading you have to make sure that the correct board is selected in the Arduino menu. To do this, &#8220;ATmega328P (Old Bootlaoder)&#8221; must also be selected in the Processor subitem of the Tools menu.<\/p>\n\n\n\n<p>The following program code can be easily copied with the above mentioned changes and loaded onto the Arduino nano.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Code for the RaylFX Village Module<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code>\/*\n     Rayl-FX Village Module\n     StartHardware.org\/en\n*\/\n\n\/* ***** ***** Settings ***** ***** ***** *****  ***** ***** ***** *****  ***** ***** ***** ***** *\/\n\nint streetlightTimeout = 100;           \/\/ switch-on time of the street lights (ms)\nint streetlightFlicker = 1000;          \/\/ the higher the value, the slower the LED flickers at pin 9\nint switchonLikelihood = 2000;          \/\/ the higher the value, the more displaced the residential lighting will turn on\nint switchoffLikelihood = 2000;         \/\/ the higher the value, the more displaced the residential lighting will turn off\nint adBlink1 = 1500;                    \/\/ flashing speed of the advertising LED, 0 = do not flash\nint adBlink2 = 1500;                    \/\/ flashing speed of the advertising LED, 0 = do not flash\n\n\/* ***** ***** From here begins the program code, which does not need to be adjusted ***** ***** ***** ***** *\/\n\nint streetlightPin1 = 11;               \/\/ this pin connects to streetlights\nint streetlightPin2 = 10;               \/\/ this pin connects to more streetlights\nint streetlightPin3 = 9;                \/\/ this pin connects to a defective streetlight\nint residentialPins&#091;10] = {2, 3, 4, 5, 12, 13, 14, 15, 16, 17}; \/\/ digital output pins -> for pin assignment see below\nint adPin1 = 7;                         \/\/ this pin connects to the advertising LED 1\nint adPin2 = 8;                         \/\/ this pin connects to the advertising LED 2\nint tvPin = 6;                          \/\/ this pin connects to the LED for the TV\n\n\/*\n  Pin Assignment\n  (Attention, LEDs switch on on LOW)\n\n  2, 3, 4, 5, 6 = residential house\n  13, 14, 15, 16 = residential house\n  12 = TV\n\n  7 = advertising 1\n  8 = advertising 2\n\n  9 = street lights 1\n  10 = street lights 2\n\n  11 = defective street light\n\n*\/\n\n\/* Memory Variables *\/\nint streetlightsBrightness = 0;           \/\/ stores how bright the street lights shine\nint advertisingLED1 = 1;                  \/\/ stores the state of the advertising LED 1\nint advertisingLED2 = 1;                  \/\/ stores the state of the advertising LED 2\n\n\/* Timer Variables *\/\nlong streetlightsTimer = 0;               \/\/ timer for the street lights\n\n\/* Variables from the control module to determine the time of day *\/\nboolean receive = false;\nboolean receiveStarted = false;\nint receiveTimeout = 10;\nlong receiveTimer = 0;\nint receivedTime = 0;\nint receivePulse = 0;\nint lastReceivePulse = 0;\nint receivePin = 18;\nint myTime = 0;\n\n#define PAYLOAD_SIZE 2                    \/\/ mandatory for communication with master-module\nint timeOfDay = 0;                        \/\/ stores timeOfDay of master-module (0 and 255)\nbyte nodePayload&#091;PAYLOAD_SIZE];           \/\/ temporarily stores data of master-module\n\nvoid setup() {\n  Serial.begin(115200);                   \/\/ starts the serial communication\n  \/*  for (int i = 0; i &lt; 13; i++) {\n      pinMode(ledPins&#091;i], OUTPUT);\n      digitalWrite(ledPins&#091;i], HIGH);\n    }*\/\n  pinMode(adPin1, OUTPUT);\n  pinMode(adPin2, OUTPUT);\n\n  for (int i = 0; i &lt; 10; i++) {\n    pinMode(residentialPins&#091;i], OUTPUT);\n    digitalWrite(residentialPins&#091;i], HIGH);\n  }\n\n  streetlightsOff();\n}\n\nvoid loop() {\n  receiveFunction();                \/\/ execute instructions for reception\n  if (receiveStarted == false) {    \/\/ if no data is currently being received:\n    \n    if (myTime > 22) {              \/\/ ***** late evening *****\n      streetlightsOn();             \/\/ turn on street lights\n      tvOff();                      \/\/ turn off tv\n      advertisinglightOn();         \/\/ show the lights of stores or billboards\n      residentiallightingOff();     \/\/ turn off residential lighting\n      \n    } else if (myTime > 18) {       \/\/ ***** evening *****\n      streetlightsOn();             \/\/ turn on street lights\n      tvOn();                       \/\/ turn on tv\n      advertisinglightOn();         \/\/ show the lights of stores or billboards\n      residentiallightingOn();      \/\/ turn on residential lighting\n      \n    } else if (myTime > 12) {       \/\/ ***** noon *****\n      streetlightsOff();            \/\/ turn off street lights\n      tvOff();                      \/\/ turn off tv\n      advertisinglightOff();        \/\/ hide the lights of stores or billboards\n      residentiallightingOff();     \/\/ turn off residential lighting\n      \n    } else if (myTime > 9) {        \/\/ ***** forenoon *****\n      streetlightsOff();            \/\/ turn off street lights\n      tvOff();                      \/\/ turn off tv\n      advertisinglightOff();        \/\/ hide the lights of stores or billboards\n      residentiallightingOff();     \/\/ turn off residential lighting\n      \n    } else if (myTime > 7) {        \/\/ ***** morning *****\n      streetlightsOn();             \/\/ turn on street lights\n      tvOff();                      \/\/ turn off tv\n      advertisinglightOff();        \/\/ hide the lights of stores or billboards\n      residentiallightingOff();     \/\/ turn off residential lighting\n      \n    } else {                        \/\/ ***** night *****\n      streetlightsOn();             \/\/ turn on street lights\n      tvOff();                      \/\/ turn off tv\n      advertisinglightOn();         \/\/ show the lights of stores or billboards\n      residentiallightingOff();     \/\/ turn on residential lighting\n    }\n  }\n}\n\nvoid tvOn() {\n  if (random(500) == 1) analogWrite(tvPin, random(150));\n}\n\nvoid tvOff() {\n  analogWrite(tvPin, 255);\n}\n\nvoid advertisinglightOn() {\n  if (adBlink1 == 0) {\n    digitalWrite(adPin1, LOW);\n  } else if (millis() % adBlink1 * 2 &lt; adBlink1) {\n    digitalWrite(adPin1, LOW);\n  } else {\n    digitalWrite(adPin1, HIGH);\n  }\n\n  if (adBlink2 == 0) {\n    digitalWrite(adPin2, LOW);\n  } else if (millis() % adBlink2 * 2 > adBlink2) {\n    digitalWrite(adPin2, LOW);\n  } else {\n    digitalWrite(adPin2, HIGH);\n  }\n}\n\nvoid advertisinglightOff() {\n  digitalWrite(adPin1, HIGH);\n  digitalWrite(adPin2, HIGH);\n}\n\nvoid residentiallightingOn() {\n  if (random(switchonLikelihood) == 1) {              \/\/ randomly switching on the residential lighting\n    digitalWrite(residentialPins&#091;random(10)], LOW);\n  }\n}\n\nvoid residentiallightingOff() {\n  if (random(switchoffLikelihood) == 1) {             \/\/ randomly switching off the residential lighting\n    digitalWrite(residentialPins&#091;random(10)], HIGH);\n  }\n}\n\nvoid streetlightsOn() {\n  if (streetlightsTimer + streetlightTimeout &lt; millis()) {\n    streetlightsBrightness++;\n    if (streetlightsBrightness > 255) streetlightsBrightness = 255;\n    streetlightsTimer = millis();\n    analogWrite(streetlightPin1, 255 - streetlightsBrightness);\n    analogWrite(streetlightPin2, 255 - streetlightsBrightness);\n    analogWrite(streetlightPin3, 255 - streetlightsBrightness);\n  }\n  if (streetlightFlicker != 0) {\n    if (random(streetlightFlicker) == 1) analogWrite(streetlightPin3, random(255) - streetlightsBrightness);\n  }\n}\n\nvoid streetlightsOff() {\n  streetlightsBrightness = 0;\n  analogWrite(streetlightPin1, 255);\n  analogWrite(streetlightPin2, 255);\n  analogWrite(streetlightPin3, 255);\n  streetlightsTimer = millis();\n}\n\nvoid receiveFunction() {                      \/\/ receives time of day from control-module\n  receivePulse = digitalRead(receivePin);     \/\/ read out the receive pin\n  \n  if ((receiveTimer + receiveTimeout &lt; millis()) &amp;&amp; (receiveStarted == true)) {\n    \/\/ on timeout and active reception\n    receiveStarted = false;                   \/\/ end active reception\n    myTime = receivedTime - 1;                \/\/ store received time\n    receivedTime = 0;                         \/\/ reset the auxiliary variable for time reception\n    Serial.println(myTime);                   \/\/ serial output\n  }\n  \/\/ if a pulse is detected at the receive pin that was not there before\n  if ((receivePulse == 0) &amp;&amp; (lastReceivePulse == 1)) {\n    receiveTimer = millis();                  \/\/ restart timer\n    if (receiveStarted == false) receiveStarted = true;  \/\/ start active reception, if not already done\n    receivedTime++;                           \/\/ there was a pulse, so increase the auxiliary variable to receive time\n  }\n  lastReceivePulse = receivePulse;            \/\/ remember current state at pin for next pass\n}<\/code><\/pre>\n\n\n<ul class=\"wp-block-latest-posts__list is-grid columns-3 wp-block-latest-posts\"><\/ul>\n\n\n<div class=\"wp-block-buttons is-layout-flex wp-block-buttons-is-layout-flex\">\n<div class=\"wp-block-button\"><a class=\"wp-block-button__link\" href=\"https:\/\/starthardware.org\/en\/category\/projects\/arduino-projects\/raylfx\/\" target=\"_blank\" rel=\"noreferrer noopener\">View all RaylFX modules \u00bb<\/a><\/div>\n<\/div>\n\n\n\n\n","protected":false},"excerpt":{"rendered":"<p>This module of the RaylFX system can be used to illuminate a settlement, a building or a city. Up to ten residential buildings can be illuminated. In addition, there is an LED that simulates a TV, street lighting with two channels that light up at night, one channel that flickers and two channels for one&hellip;&nbsp;<a href=\"https:\/\/starthardware.org\/en\/raylfx-village\/\" class=\"\" rel=\"bookmark\">Read More &raquo;<span class=\"screen-reader-text\">RaylFX \u2013 Village<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":545,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","footnotes":""},"categories":[5,9],"tags":[],"class_list":["post-531","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-arduino-projects","category-raylfx"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v18.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>RaylFX \u2013 Village<\/title>\n<meta name=\"description\" content=\"RaylFX \u2013 How to create your own model Settlement, Village or City. Includes light, sound, flickering and possibility for animations.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/starthardware.org\/en\/raylfx-village\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"RaylFX \u2013 Village\" \/>\n<meta property=\"og:description\" content=\"RaylFX \u2013 How to create your own model Settlement, Village or City. Includes light, sound, flickering and possibility for animations.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/starthardware.org\/en\/raylfx-village\/\" \/>\n<meta property=\"og:site_name\" content=\"StartHardware - Tutorials for Arduino\" \/>\n<meta property=\"article:published_time\" content=\"2021-03-22T13:58:42+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-03-26T20:45:28+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-title-1024x576-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"576\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"David Hermann\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebSite\",\"@id\":\"https:\/\/starthardware.org\/en\/#website\",\"url\":\"https:\/\/starthardware.org\/en\/\",\"name\":\"StartHardware - Tutorials for Arduino\",\"description\":\"Arduino, Electronics, Fun\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/starthardware.org\/en\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/starthardware.org\/en\/raylfx-village\/#primaryimage\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-title-1024x576-1.jpg\",\"contentUrl\":\"https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-title-1024x576-1.jpg\",\"width\":1024,\"height\":576,\"caption\":\"RayFX Settlement City Village Lighting Arduino LED\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/starthardware.org\/en\/raylfx-village\/#webpage\",\"url\":\"https:\/\/starthardware.org\/en\/raylfx-village\/\",\"name\":\"RaylFX \u2013 Village\",\"isPartOf\":{\"@id\":\"https:\/\/starthardware.org\/en\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/starthardware.org\/en\/raylfx-village\/#primaryimage\"},\"datePublished\":\"2021-03-22T13:58:42+00:00\",\"dateModified\":\"2021-03-26T20:45:28+00:00\",\"author\":{\"@id\":\"https:\/\/starthardware.org\/en\/#\/schema\/person\/37dd49804e351d0045589790d695d99c\"},\"description\":\"RaylFX \u2013 How to create your own model Settlement, Village or City. Includes light, sound, flickering and possibility for animations.\",\"breadcrumb\":{\"@id\":\"https:\/\/starthardware.org\/en\/raylfx-village\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/starthardware.org\/en\/raylfx-village\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/starthardware.org\/en\/raylfx-village\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/starthardware.org\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"RaylFX \u2013 Village\"}]},{\"@type\":\"Person\",\"@id\":\"https:\/\/starthardware.org\/en\/#\/schema\/person\/37dd49804e351d0045589790d695d99c\",\"name\":\"David Hermann\",\"image\":{\"@type\":\"ImageObject\",\"@id\":\"https:\/\/starthardware.org\/en\/#personlogo\",\"inLanguage\":\"en-US\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5c1f55f9c9addf2633dc5513f65e57c6b11de8c1d05cab7a65be1e402233d543?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5c1f55f9c9addf2633dc5513f65e57c6b11de8c1d05cab7a65be1e402233d543?s=96&d=mm&r=g\",\"caption\":\"David Hermann\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"RaylFX \u2013 Village","description":"RaylFX \u2013 How to create your own model Settlement, Village or City. Includes light, sound, flickering and possibility for animations.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/starthardware.org\/en\/raylfx-village\/","og_locale":"en_US","og_type":"article","og_title":"RaylFX \u2013 Village","og_description":"RaylFX \u2013 How to create your own model Settlement, Village or City. Includes light, sound, flickering and possibility for animations.","og_url":"https:\/\/starthardware.org\/en\/raylfx-village\/","og_site_name":"StartHardware - Tutorials for Arduino","article_published_time":"2021-03-22T13:58:42+00:00","article_modified_time":"2021-03-26T20:45:28+00:00","og_image":[{"width":1024,"height":576,"url":"https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-title-1024x576-1.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","twitter_misc":{"Written by":"David Hermann","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebSite","@id":"https:\/\/starthardware.org\/en\/#website","url":"https:\/\/starthardware.org\/en\/","name":"StartHardware - Tutorials for Arduino","description":"Arduino, Electronics, Fun","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/starthardware.org\/en\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https:\/\/starthardware.org\/en\/raylfx-village\/#primaryimage","inLanguage":"en-US","url":"https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-title-1024x576-1.jpg","contentUrl":"https:\/\/starthardware.org\/en\/wp-content\/uploads\/2021\/03\/arduino-railway-raylfx-village-title-1024x576-1.jpg","width":1024,"height":576,"caption":"RayFX Settlement City Village Lighting Arduino LED"},{"@type":"WebPage","@id":"https:\/\/starthardware.org\/en\/raylfx-village\/#webpage","url":"https:\/\/starthardware.org\/en\/raylfx-village\/","name":"RaylFX \u2013 Village","isPartOf":{"@id":"https:\/\/starthardware.org\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/starthardware.org\/en\/raylfx-village\/#primaryimage"},"datePublished":"2021-03-22T13:58:42+00:00","dateModified":"2021-03-26T20:45:28+00:00","author":{"@id":"https:\/\/starthardware.org\/en\/#\/schema\/person\/37dd49804e351d0045589790d695d99c"},"description":"RaylFX \u2013 How to create your own model Settlement, Village or City. Includes light, sound, flickering and possibility for animations.","breadcrumb":{"@id":"https:\/\/starthardware.org\/en\/raylfx-village\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/starthardware.org\/en\/raylfx-village\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/starthardware.org\/en\/raylfx-village\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/starthardware.org\/en\/"},{"@type":"ListItem","position":2,"name":"RaylFX \u2013 Village"}]},{"@type":"Person","@id":"https:\/\/starthardware.org\/en\/#\/schema\/person\/37dd49804e351d0045589790d695d99c","name":"David Hermann","image":{"@type":"ImageObject","@id":"https:\/\/starthardware.org\/en\/#personlogo","inLanguage":"en-US","url":"https:\/\/secure.gravatar.com\/avatar\/5c1f55f9c9addf2633dc5513f65e57c6b11de8c1d05cab7a65be1e402233d543?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5c1f55f9c9addf2633dc5513f65e57c6b11de8c1d05cab7a65be1e402233d543?s=96&d=mm&r=g","caption":"David Hermann"}}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/posts\/531","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/comments?post=531"}],"version-history":[{"count":20,"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/posts\/531\/revisions"}],"predecessor-version":[{"id":734,"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/posts\/531\/revisions\/734"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/media\/545"}],"wp:attachment":[{"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/media?parent=531"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/categories?post=531"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/starthardware.org\/en\/wp-json\/wp\/v2\/tags?post=531"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}