Page 2 of 6 FirstFirst 1234 ... LastLast
Results 11 to 20 of 58

Thread: Kudos to Bryan!

  1. #11
    TVWBB Guru Steve_M's Avatar
    Join Date
    Jul 2013
    Location
    Toronto
    Posts
    2,070
    Got the OLED working with the system now.

    PID Output % on the left, TC Temp on the right.

    I'm using the Adafruit SSD1306 library and 2 fonts from the GNU FreeFont project. The added libraries are a major impact on the code size. I went from a 7.5KB flash to about 23.5KB being used and there's only 32KB of flash on these ATMEGA328's. This once again proves how optimized the HeaterMeter code is. There is WAY more functionality in the HM code and it all fits inside of 32KB.

    Last edited by Steve_M; 06-19-2018 at 11:59 AM.

  2. #12
    TVWBB Guru Steve_M's Avatar
    Join Date
    Jul 2013
    Location
    Toronto
    Posts
    2,070
    Working on the more permanent board that will live inside the machine.

    I had a blank HM v4.2.4 TC board and while I could have re-jigged some things around to make it work, I felt that the easiest thing to do was to transplant the TC from that board to the new board.



    Laying things out on the new board. Nothing is soldered in yet. Still waiting for some PCB screw terminal connectors to arrive.


  3. #13
    TVWBB Honor Circle Bryan Mayland's Avatar
    Join Date
    Apr 2010
    Location
    Tampa, FL
    Posts
    4,707
    ha HA, this is fantastic! I go away for on business for a couple of weeks and I come back to the whole build log. The OLED display is a nice touch too, and yeah fonts are a real program space killer. The bignum font/renderer in HeaterMeter is at least a couple kB and to do that it breaks the numbers down into shapes. Have you had a chance to taste the espresso it makes yet?
    I'm that HeaterMeter guy what ruins everybody's free time.

  4. #14
    TVWBB Guru Steve_M's Avatar
    Join Date
    Jul 2013
    Location
    Toronto
    Posts
    2,070
    I pushed it to prod (moved it to the kitchen) last Saturday and have been using it daily. The espresso is really great from it. Much better than from the Breville machine I was previously using.

    I've found 2 other graphics libraries I may try out if flash space becomes too tight. The u8g2 library, which handles a whole range of screens, not just these SSD1306 OLED displays. Also the SSD1306Ascii library which, as you might be able to infer from the name, is an ascii only library, which is fine for this project as I'm not doing any animated graphics.

  5. #15
    TVWBB Honor Circle Bryan Mayland's Avatar
    Join Date
    Apr 2010
    Location
    Tampa, FL
    Posts
    4,707
    Haha pushed to prod. I hope your users were made aware of the possible downtime conditions surrounding the upgrade!

    I love it when I compile in an off-the-shelf library and my code triples in size, but how many more features do you have left to implement? Might not be worth the time to optimize for size if you're almost done checking off the requirements. You probably need some sort of alarm to let you know it is up to temperature and probably a neopixel ring graph of something.

    Meanwhile I have had building a battery powered ultrasonic range parking sensor with 7-segment distance display on my project list for like 3 or 4 years now, just sitting there because I didn't want to use off the shelf parts like the *so expensive* I2C 7-segment displays. I did write a really awesome multiplexer for driving the segments though. I might just throw it together on a breadboard today with those expensive parts and no OSH Park order. You've inspired me!
    I'm that HeaterMeter guy what ruins everybody's free time.

  6. #16
    TVWBB Guru Steve_M's Avatar
    Join Date
    Jul 2013
    Location
    Toronto
    Posts
    2,070
    Is the parking range sensor for the garage so you know when you're in far enough (a digital tennis ball on a string) or is it going to be attached to the car so you know you're close to other vehicles when parking?

    There's not much more functionality to be added, but I'm sure I can add some scope creep to this!

    Features to add in order of priority:

    • Create multiple pages for the OLED display and cycle through them
    • Read the status of the steam switch ( middle rocker switch ) to crank up the boiler setpoint for the steam wand.
    • Either add an analog pressure gauge to the front of the machine or use a pressure transducer and use the MCU and OLED to display it
    • Read the status of the brew switch so that the OLED displays a second timer to time the shots
    • Add a second SSR to PWM control the water pump to add a pre-infusion stage

    The machine already has a visual indicator to let you know it's up to temperate and it's really quite a neat design. The far right rocker switch is the brew switch. It has a small neon bulb in it that turns on when there is no current running through the boiler. This particular feature of the machine really had me scratching my head as there is no electronic circuity in this machine. So how in the world does a light turn on when power is removed from the boiler, yet turns off when power is added from the boiler? Prior to adding the MCU, power to the boiler was controlled by a bimetallic thermostat.

    As it turns out, they are exploiting a known feature of a neon lamp where the lamp is wired in series with a load. When the load has power going to it, it basically shorts out the lamp and it turns off.

    Click here to see the incredibly simple, yet well thought out electrical diagram for this machine.

    Even without the OLED output showing me the TC temp, I could determine that the unit was ready by watching the flickering of the brew light. Once temps were stable and the PID loop was simply maintaining the temps, it would flicker in a pretty predictable pattern.

    Last edited by Steve_M; 06-24-2018 at 02:41 PM.

  7. #17
    TVWBB Guru Steve_M's Avatar
    Join Date
    Jul 2013
    Location
    Toronto
    Posts
    2,070
    The franken-couple works! It's reporting about 1c below ambient compared to my Thermapen, which is decent enough.


  8. #18
    TVWBB Honor Circle Bryan Mayland's Avatar
    Join Date
    Apr 2010
    Location
    Tampa, FL
    Posts
    4,707
    Pretty good pretty good! I'll have you know you're also responsible for this little project on Sunday


    Yeah it is just a digital tennis ball but I thought it would be fun to see the display light up and count down the distance (in cm) to the car. I already have a weight hanging on a string to indicate where to park but when you have this sort of technology you can't just have some analog method that works, you gotta make it overly complicated! I have gotten a bit spoiled by being able to upload HeaterMeter firmwares through the network (and to all my ESP8266 devices) so it is a bit disappointing that I have to carry a laptop out there if I want to try a new firmware. I spent most of the time on the filtering algorithms and switching from high power mode to low power sleep because I was going to run it on batteries. Unfortunately, it doesn't seem to work very well past 90cm so it isn't nearly as cool as I had imagined and probably will just be returned to the breadboard box once the blue tape falls off.
    I'm that HeaterMeter guy what ruins everybody's free time.

  9. #19
    TVWBB Guru Steve_M's Avatar
    Join Date
    Jul 2013
    Location
    Toronto
    Posts
    2,070
    Spiffy! I thought those ultrasonic sensors were good for 300-400cm of range. The sensor looks pretty high compared to the front bumper of the car.

  10. #20
    TVWBB Honor Circle Bryan Mayland's Avatar
    Join Date
    Apr 2010
    Location
    Tampa, FL
    Posts
    4,707
    It is actually just below the hood level. It would be better at bumper level but I didn't want to have to make a longer wire harness to get it to where it should be. I might not be using the NewPing library right although it seems pretty straight-forward. The real problem though is that it doesn't look cool enough, just some boring numbers. Maybe I need to add a RaspberryPi hooked up to an old LCD monitor with some sort of sci-fi animation so I can feel like I am docking at a space station!
    I'm that HeaterMeter guy what ruins everybody's free time.

Page 2 of 6 FirstFirst 1234 ... LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •