Makerming
Published

Mini Fireplace of A Song of Ice and Fire Theme

A mini fireplace with burning flame surrounded by ice, to make a song of ice and fire in your home. For fans of Game of Thrones.

IntermediateFull instructions provided2 days1,600

Things used in this project

Hardware components

BBC Micro:bit
×1
Seeed Studio Grove Shield for micro:bit V2
×1
Seeed Studio Grove - RGB LED Ring (24-WS2813 Mini)
×1
Grove - Ultrasonic Ranger
Seeed Studio Grove - Ultrasonic Ranger
×1
Seeed Studio Grove - Universal 4 Pin Buckled Cable
×2
 USB Fan (5*5cm)
×1
Seeed Studio 3.7V lithium battery
×1
Acrylic Plate
×1
Acrylic Ice Cubes
If you don't have acrylic fake ice rock as mentioned, try to use rock candy, hahahaha!
×1

Software apps and online services

MakeCode
Microsoft MakeCode

Hand tools and fabrication machines

Laser cutting machine
Hot melt glue gun
Acrylic glue
Scotch tape
Scissors, art knife, ruler, etc.

Story

Read more

Custom parts and enclosures

a_song_of_ice_and_fire_fireplace_lacer_cutting_design_-_makerming_G46d6paF1r.dxf

Schematics

_20200108201256_Rr7xHieyNu.png

Makecode Program .hex

Code

A song of ice and fire fireplace code

JavaScript
basic.showIcon(IconNames.Heart)
let seeed_ring = neopixel.create(DigitalPin.P0, 24, NeoPixelMode.RGB)
let bright = grove.measureInCentimeters(DigitalPin.P1)
basic.forever(function () {
    let display: grove.TM1637 = null
    display.show(grove.measureInCentimeters(DigitalPin.P1))
    if (grove.measureInCentimeters(DigitalPin.P1) < 20) {
        seeed_ring.showColor(neopixel.rgb(225, 69, 19))
        seeed_ring.setBrightness(150)
        seeed_ring.show()
        basic.pause(200)
    } else {
        if (grove.measureInCentimeters(DigitalPin.P1) < 30) {
            seeed_ring.showColor(neopixel.rgb(240, 69, 19))
            seeed_ring.setBrightness(180)
            seeed_ring.show()
            basic.pause(200)
        } else {
            if (grove.measureInCentimeters(DigitalPin.P1) > 50) {
                seeed_ring.showColor(neopixel.rgb(240, 69, 19))
                seeed_ring.setBrightness(Math.randomRange(100, 200))
                seeed_ring.show()
                basic.pause(Math.randomRange(100, 500))
            } else {
                seeed_ring.showColor(neopixel.rgb(250, 69, 19))
                seeed_ring.setBrightness(200)
                seeed_ring.show()
                basic.pause(200)
            }
        }
    }
})

Credits

Makerming

Makerming

11 projects • 30 followers
Maker, DIYer, Opensource Hardware Enthusiast

Comments