Skip to content
  • MySensors
  • OpenHardware.io
  • Categories
  • Recent
  • Tags
  • Popular
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo
  1. Home
  2. General Discussion
  3. What did you build today (Pictures) ?

What did you build today (Pictures) ?

Scheduled Pinned Locked Moved General Discussion
1.1k Posts 105 Posters 202.5k Views 98 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • alowhumA alowhum

    @sundberg84 yes, sorry about that, I realised too late that it's an expansion board.

    @Nca78 Thanks! That 5ma leak current was exactly the kind of info I needed about the board. I was wondering it if could be useful for battery powered things. None of my sensors are. Well, one - I used the BBC Micro:bit as a battery powered motion sensor.

    I guess not having a regulator on board is what makes the Arduino Pro Micro so good at being battery powered.

    Out of curiosity: if I attached the board to a Usb powerbank (say 10.000 Mah) to operate as an electricity led pulse sensor.. what would be an estimate for how long it would run?

    gohanG Offline
    gohanG Offline
    gohan
    Mod
    wrote on last edited by
    #651

    @alowhum said in What did you build today (Pictures) ?:

    I guess not having a regulator on board is what makes the Arduino Pro Micro so good at being battery powered.

    actually the better solution is the pro mini at 3.3v with regulator and led removed, and you can use an LDO regulator to power it with a LiPo cell or no regulator at all if you use a LiFePO4 battery. Using the arduino at 3.3v allows you to use all radio modules and all the low power sensors.

    1 Reply Last reply
    0
    • alexsh1A Offline
      alexsh1A Offline
      alexsh1
      wrote on last edited by
      #652

      This is my new PSU - 3D printed enclosure and a few components
      It is very precise.

      2_1540841375727_3.jpg 1_1540841375727_2.jpg 0_1540841375727_1.jpg

      YveauxY bjacobseB sundberg84S 3 Replies Last reply
      2
      • alexsh1A alexsh1

        This is my new PSU - 3D printed enclosure and a few components
        It is very precise.

        2_1540841375727_3.jpg 1_1540841375727_2.jpg 0_1540841375727_1.jpg

        YveauxY Offline
        YveauxY Offline
        Yveaux
        Mod
        wrote on last edited by
        #653

        @alexsh1 nice! Why do you have 4 banana sockets and what's the color coding?

        http://yveaux.blogspot.nl

        alexsh1A 1 Reply Last reply
        0
        • alexsh1A alexsh1

          This is my new PSU - 3D printed enclosure and a few components
          It is very precise.

          2_1540841375727_3.jpg 1_1540841375727_2.jpg 0_1540841375727_1.jpg

          bjacobseB Offline
          bjacobseB Offline
          bjacobse
          wrote on last edited by
          #654

          @alexsh1 Looks awesome

          1 Reply Last reply
          0
          • NeverDieN Offline
            NeverDieN Offline
            NeverDie
            Hero Member
            wrote on last edited by NeverDie
            #655

            Something nice about those power supplies is that for very little extra money (maybe $1-3 extra) you can buy versions with UART and/or even bluetooth data output that you can send to a logger. I'd have to check, but it might even be controllable that way also.

            alexsh1A 1 Reply Last reply
            0
            • gohanG Offline
              gohanG Offline
              gohan
              Mod
              wrote on last edited by
              #656

              Yes, in fact I bought the DPS5015 with its metal box and BT/USB interface and I can control it from the computer. Data logging of course is limited to the values on the screen

              1 Reply Last reply
              0
              • YveauxY Yveaux

                @alexsh1 nice! Why do you have 4 banana sockets and what's the color coding?

                alexsh1A Offline
                alexsh1A Offline
                alexsh1
                wrote on last edited by
                #657

                @yveaux This is simple. The Aliexpress seller sent me these instead of black and red ones. So I have been creative - black and blue is negative and yellow and green is positive. Did not bothered waiting for a few weeks for replacement.

                1 Reply Last reply
                1
                • NeverDieN NeverDie

                  Something nice about those power supplies is that for very little extra money (maybe $1-3 extra) you can buy versions with UART and/or even bluetooth data output that you can send to a logger. I'd have to check, but it might even be controllable that way also.

                  alexsh1A Offline
                  alexsh1A Offline
                  alexsh1
                  wrote on last edited by alexsh1
                  #658

                  @neverdie It is purely for logging and control. I did not require either so did not order it. If you add all extras, it does become considerably more expensive.

                  1 Reply Last reply
                  0
                  • alexsh1A alexsh1

                    This is my new PSU - 3D printed enclosure and a few components
                    It is very precise.

                    2_1540841375727_3.jpg 1_1540841375727_2.jpg 0_1540841375727_1.jpg

                    sundberg84S Offline
                    sundberg84S Offline
                    sundberg84
                    Hardware Contributor
                    wrote on last edited by
                    #659

                    @alexsh1 very nice! Is the 3d-drawing online to be downloaded? I think I want one as well.

                    Controller: Proxmox VM - Home Assistant
                    MySensors GW: Arduino Uno - W5100 Ethernet, Gw Shield Nrf24l01+ 2,4Ghz
                    MySensors GW: Arduino Uno - Gw Shield RFM69, 433mhz
                    RFLink GW - Arduino Mega + RFLink Shield, 433mhz

                    alexsh1A 1 Reply Last reply
                    2
                    • D Offline
                      D Offline
                      dakipro
                      wrote on last edited by dakipro
                      #660

                      Saw that all other kids cool kids have one, so I installed one kitchen-pc as well.
                      It is Flytech K757 15'' POS terminal, windows 10 pro, touch screen, 300gb (soon to be ssd) 8gb ram dual core 2,2ghz. Purchased from local "ebay" for around 140 eur.

                      0_1541025507479_Kitchen PC 1 - IMG_5680.jpg

                      Now I can make that awesome dinner, once in a full moon, without having to carry and unlock my phone all the time...

                      C: OpenHAB2 with node-red on linux laptop
                      GW: Arduino Nano - W5100 Ethernet, Nrf24l01+ 2,4Ghz mqtt
                      GW: Arduino Mega, RFLink 433Mhz

                      1 Reply Last reply
                      1
                      • axillentA Offline
                        axillentA Offline
                        axillent
                        Mod
                        wrote on last edited by
                        #661

                        esp8266 based thermostat for heating system
                        1_1541182358775_Фото 02.11.2018, 21 10 39.jpg 0_1541182358775_Фото 02.11.2018, 21 07 09.jpg

                        sense and drive

                        1 Reply Last reply
                        5
                        • axillentA Offline
                          axillentA Offline
                          axillent
                          Mod
                          wrote on last edited by
                          #662

                          bridge from single wire (my w3p manchester based) to UART. will be used to bridge single wire network with Ethernet throuth ESP8266 or STM32 + Wiznet

                          second photo - development stand with w3p bus

                          0_1541265182919_Фото 03.11.2018, 20 01 08.jpg
                          0_1541265206374_Фото 03.11.2018, 20 01 00.jpg

                          sense and drive

                          1 Reply Last reply
                          0
                          • sundberg84S sundberg84

                            @alexsh1 very nice! Is the 3d-drawing online to be downloaded? I think I want one as well.

                            alexsh1A Offline
                            alexsh1A Offline
                            alexsh1
                            wrote on last edited by
                            #663

                            @sundberg84

                            Yes, you can downloads STLs from here: https://www.thingiverse.com/thing:2250644
                            There another one https://www.thingiverse.com/thing:1816188

                            1 Reply Last reply
                            0
                            • monteM Offline
                              monteM Offline
                              monte
                              wrote on last edited by monte
                              #664

                              Build myself a simple temperature sensor with a clock. No RTC, just pulling time from controller and updating every 10 minutes to avoid drift. Also requesting outdoor temperature from controller. Build from what was lying around - DHT22, pro mini clone, nokia screen. I can share the code if someone needs it :)0_1542116517443_IMG_6557.jpg 0_1542116523024_IMG_6560.jpg

                              gohanG 1 Reply Last reply
                              5
                              • monteM monte

                                Build myself a simple temperature sensor with a clock. No RTC, just pulling time from controller and updating every 10 minutes to avoid drift. Also requesting outdoor temperature from controller. Build from what was lying around - DHT22, pro mini clone, nokia screen. I can share the code if someone needs it :)0_1542116517443_IMG_6557.jpg 0_1542116523024_IMG_6560.jpg

                                gohanG Offline
                                gohanG Offline
                                gohan
                                Mod
                                wrote on last edited by
                                #665

                                @monte if you can share, pls do so :)

                                monteM 1 Reply Last reply
                                0
                                • gohanG gohan

                                  @monte if you can share, pls do so :)

                                  monteM Offline
                                  monteM Offline
                                  monte
                                  wrote on last edited by monte
                                  #666

                                  Ask questions if something is left unclear.

                                  #define DHT_PIN 4
                                  #define CE_DISPLAY 5
                                  #define RST_DISPLAY A2
                                  #define DC_DISPLAY A3
                                  #define DIN_DISPLAY 7
                                  #define CLK_DISPLAY 8
                                  #define SN "Clock + Temperature"
                                  #define SV "1.0"
                                  #define DHT_TYPE DHT22
                                  
                                  #define MY_RADIO_NRF24
                                  #define MY_TRANSPORT_WAIT_READY_MS 10000
                                  
                                  #include <MySensors.h>
                                  #include <U8g2lib.h>
                                  #include <DHT.h>
                                  #include <time.h>
                                  
                                  volatile unsigned long rawTime;
                                  unsigned long timer1 = 0;
                                  unsigned long getTimeDelay = 600000;
                                  unsigned long timer2 = 0;
                                  int getDHTDelay = 3000;
                                  unsigned long timer3 = 0;
                                  unsigned int sendDelay = 60000;
                                  
                                  float h, t;
                                  char outdoorTemp[50];
                                  float lastT;
                                  
                                  U8G2_PCD8544_84X48_1_4W_SW_SPI u8g2(U8G2_R0, /* clock=*/ CLK_DISPLAY, /* data=*/ DIN_DISPLAY, /* cs=*/ CE_DISPLAY, /* dc=*/ DC_DISPLAY, /* reset=*/ RST_DISPLAY);  // Nokia 5110 Display
                                  DHT dht(DHT_PIN, DHT_TYPE);
                                  MyMessage tempMsg(0, V_TEMP);
                                  volatile struct tm * localTime;
                                  
                                  void before()
                                  {
                                    u8g2.begin();
                                    Serial.begin(115200);
                                    u8g2.firstPage();
                                    do {
                                      initScreen();
                                    } while ( u8g2.nextPage() );
                                    dht.begin();
                                    delay(2000);
                                  }
                                  
                                  void setup() {
                                    setupTime();
                                    timer1 = millis();
                                    t = dht.readTemperature();
                                    h = dht.readHumidity();
                                    timer2 = millis();
                                    send(tempMsg.set(t, 0));
                                    lastT = t;
                                    timer3 = millis();
                                  }
                                  
                                  void presentation()
                                  {
                                    present(0, S_TEMP);
                                    present(1, S_INFO); //Info sensor to request outdoor tempereture
                                    sendSketchInfo(SN, SV);
                                    request(1, V_TEXT);
                                  }
                                  
                                  void setupTime()	//setting up timer and interrupt for seconds counter
                                  {
                                    cli();
                                    //set timer1 interrupt at 1Hz
                                    TCCR1A = 0;// set entire TCCR1A register to 0
                                    TCCR1B = 0;// same for TCCR1B
                                    TCNT1  = 0;//initialize counter value to 0
                                    // set compare match register for 1hz increments
                                    OCR1A = 15624;// = (16*10^6) / (1*1024) - 1 (must be <65536)
                                    // turn on CTC mode
                                    TCCR1B |= (1 << WGM12);
                                    // Set CS10 and CS12 bits for 1024 prescaler
                                    TCCR1B |= (1 << CS12) | (1 << CS10);
                                    // enable timer compare interrupt
                                    TIMSK1 |= (1 << OCIE1A);
                                    sei();
                                    requestTime();
                                  }
                                  
                                  ISR(TIMER1_COMPA_vect)
                                  {
                                    rawTime++;	//increment seconds counter
                                  }
                                  
                                  void float2string(float n, char* output)
                                  {
                                    char aChar[5];
                                    char bChar[4];
                                    if (n > 0.0) {
                                      strcpy(aChar, "+");
                                    } else if (n < 0.0) {
                                      strcpy(aChar, "-");
                                    }
                                    dtostrf(n, 4, 1, bChar);
                                    sprintf(output, "%s%s", aChar, bChar);
                                  }
                                  
                                  void initScreen()	//function to show message on screen during node start
                                  {
                                    u8g2.setFont(u8g2_font_profont12_tr);
                                    u8g2.drawStr(42 - (u8g2.getStrWidth("Connecting to") / 2), 13, "Connecting to");
                                    u8g2.drawStr(42 - (u8g2.getStrWidth("a MySensors") / 2), 26, "a MySensors");
                                    u8g2.drawStr(42 - (u8g2.getStrWidth("network.") / 2), 39, "network");
                                  }
                                  
                                  void mainScreen()
                                  {
                                    u8g2.setDrawColor(1);
                                    u8g2.setFontMode(1);
                                    u8g2.drawBox(0, 0, 84, 8);
                                    u8g2.setDrawColor(0);
                                    u8g2.setFont(u8g2_font_profont10_tf);
                                    localTime = localtime(&rawTime);	//using standart AVR time.h library to convert seconds counter into local time
                                    char date[30];
                                    strftime(date, 30, "%d.%m.%y %R", localTime);	//constructing a string with date and time
                                    u8g2.drawStr(42 - (u8g2.getStrWidth(date) / 2), 7, date);
                                    u8g2.setDrawColor(1);
                                    u8g2.setFont(u8g2_font_maniac_tr);
                                    char val[5];
                                    float2string(t, val);	//converting float value from dht11 to a string
                                    u8g2.drawStr(42 - (u8g2.getStrWidth(val) / 2), 36, val);
                                    u8g2.setFont(u8g2_font_profont10_tf);
                                    u8g2.drawStr(5, 47, outdoorTemp);
                                    itoa((int)h, val, 10); //I don't need precision for humidity procentage, otherwise you can use dtostrf()
                                    u8g2.drawStr(70 - u8g2.getStrWidth(val), 47, val);
                                    u8g2.setFont(u8g2_font_open_iconic_thing_1x_t);
                                    u8g2.drawStr(71, 47, "\x48");
                                  }
                                  
                                  boolean isTime(unsigned long *timeMark, unsigned long timeInterval)	//time counter function for non-blocking delays
                                  {
                                    if (millis() - *timeMark >= timeInterval) {
                                      *timeMark = millis();
                                      return true;
                                    }
                                    return false;
                                  }
                                  
                                  void loop() 
                                  {
                                    if (isTime(&timer1, getTimeDelay)) {	//request time from controller once in 10 minutes
                                      requestTime();
                                    }
                                    if (isTime(&timer2, getDHTDelay)) {	//polling DHT sensor and printing values to serial
                                      t = dht.readTemperature();
                                      h = dht.readHumidity();
                                      Serial.print("Temperature: ");
                                      Serial.print(t);
                                      Serial.println("°");
                                      Serial.print("Humidity: ");
                                      Serial.print(h);
                                      Serial.println("%");
                                    }
                                    if (isTime(&timer3, sendDelay)) {	//sending temperature to controller once in 30 seconds
                                      if (t != lastT) {
                                        send(tempMsg.set(t, 0));
                                        request(1, V_TEXT);
                                        lastT = t;
                                      }
                                    }
                                    u8g2.firstPage();	//this section is for screen handling
                                    do {
                                      mainScreen();
                                    } while ( u8g2.nextPage() );
                                  
                                  }
                                  
                                  void receive(const MyMessage &message)	//receiving an outdoor reading from the controller and constructing a string to display
                                  {
                                    if (message.type == V_TEXT) {
                                      sprintf(outdoorTemp, "%sC%s", message.getString(), "\xb0");
                                    }
                                  }
                                  
                                  void receiveTime(uint32_t ts)
                                  {
                                    rawTime = ts - UNIX_OFFSET;	//substructing an offset from received timestamp, since time.h doesn't use Unix count
                                    localTime = localtime(&rawTime);	//updating seconds timer with accurate value
                                    timer1 = millis();
                                  }
                                  
                                  
                                  1 Reply Last reply
                                  0
                                  • nagelcN Offline
                                    nagelcN Offline
                                    nagelc
                                    wrote on last edited by nagelc
                                    #667

                                    I repurposed a breakout board to make an informal range test of an RA-01 (433 Mhz).
                                    The test was not very sophisticated -- I had MySensors node request time from the controller and blink a LED when it received the time. Then I just walked around my neighborhood.
                                    Lost the signal at ~ 156 Meters. This was down hill and through several houses.
                                    Picked up again at ~ 248 Meters. This was at about the same elevation as my house but still through several houses.
                                    It also works well in the far corner of my basement (2 floors and 1 or 2 walls). The NRF24 has trouble there, but RFM69 does not.
                                    The range may not seem very impressive for a LoRa radio (I hoped for kilometers : ) , but the antennas are not optimized and this is a fairly dense suburban area -- difficult to get line of site. They certainly work well enough for any application I have in mind.

                                    NeverDieN 1 Reply Last reply
                                    0
                                    • nagelcN nagelc

                                      I repurposed a breakout board to make an informal range test of an RA-01 (433 Mhz).
                                      The test was not very sophisticated -- I had MySensors node request time from the controller and blink a LED when it received the time. Then I just walked around my neighborhood.
                                      Lost the signal at ~ 156 Meters. This was down hill and through several houses.
                                      Picked up again at ~ 248 Meters. This was at about the same elevation as my house but still through several houses.
                                      It also works well in the far corner of my basement (2 floors and 1 or 2 walls). The NRF24 has trouble there, but RFM69 does not.
                                      The range may not seem very impressive for a LoRa radio (I hoped for kilometers : ) , but the antennas are not optimized and this is a fairly dense suburban area -- difficult to get line of site. They certainly work well enough for any application I have in mind.

                                      NeverDieN Offline
                                      NeverDieN Offline
                                      NeverDie
                                      Hero Member
                                      wrote on last edited by NeverDie
                                      #668

                                      @nagelc If you add some coding gain, you should be able to get longer range. However, tx time will increase.

                                      1 Reply Last reply
                                      1
                                      • nagelcN Offline
                                        nagelcN Offline
                                        nagelc
                                        wrote on last edited by
                                        #669

                                        Thks. I'll try that.

                                        zboblamontZ 1 Reply Last reply
                                        0
                                        • nagelcN nagelc

                                          Thks. I'll try that.

                                          zboblamontZ Offline
                                          zboblamontZ Offline
                                          zboblamont
                                          wrote on last edited by
                                          #670

                                          Not so much a MySensors build as an example of how even the most basic information can inform changes for the better, in this case space heating.

                                          The system here is fairly basic, an array of DS18B20s, some ultrasonic tank probes and a gas reed sensor, temperature is updated every 5 minutes, the gas updates every 0.05m3...
                                          With winters here down to -20, the first priority last year was insulation, and even though a modern house, the gas bills essentially halved over the year, effectively funding not only the insulation, but replacement axial radiator valves and thermostat heads (Heimeier) to replace the typical arrangement of unknown origin, with spare... But now the MySensors impact..
                                          This autumn's attention turned to the central heating unit, a modern combi unit of good manufacture, installed by a 'certified' heating engineer, but aside what little I knew about condensation boilers and the steep learning curve that followed, I was bemused by the return from the radiator loop almost burning my finger within 10 minutes of the system being fired up. This did not make sense for what I understood of a condensing boilers, which compelled a look inside for the first time, the manual and some googling.

                                          The boiler is a 25kW combi with minimum output 7.6kW, the radiators account for ca 13kW at Delta 60 set for 15c drop (previously set ca 20c drop), settings since day one were 65c and the pump was set at max output of 3, last year's -20 resulted in 13.5m3/day gas consumed, not crazy by historical records, but hmmm.
                                          So now comes tinkering with data from MySensors via Domoticz to inform...
                                          Currently the boiler is set at 55c, the pump is on Low (40 v 84w), but the results are surprising - Slower rising temperature when ON, 42 minutes v 25, but gas use dropped from 0.75 to 0.6m3, but here's the kicker from that longer heating time, not only less energy used per cycle, but longer and thereby fewer cycles per day. Current evaluations are between 15 and 20% savings, so thank you to all the MySensors community and contributors.. ;)

                                          gohanG 1 Reply Last reply
                                          4
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          13

                                          Online

                                          11.7k

                                          Users

                                          11.2k

                                          Topics

                                          113.0k

                                          Posts


                                          Copyright 2019 TBD   |   Forum Guidelines   |   Privacy Policy   |   Terms of Service
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • MySensors
                                          • OpenHardware.io
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular