Shop OBEX P1 Docs P2 Docs Learn Events
Project: BBQ/Smoker Controler — Parallax Forums

Project: BBQ/Smoker Controler

Chuck RiceChuck Rice Posts: 210
edited 2008-07-03 18:36 in Propeller 1
I am not finished with my Smoker Controller, but I have much of the design done and a lot of the parts collected and assembled. I am still working on the software, but portions of it work.

I thought I might take a checkpoint here and ask for some design review. Mostly I want to make sure that I am not heading down the path to self destruction! [noparse]:)[/noparse]

Comments? Suggestions? Dangers?

See the design parts in the main spin file. It uses the parallax font, so I cannot post it.

Edit: I updated the source code. It is much more complete now. Still need to tweek it a bit.

Post Edited (Chuck Rice) : 7/3/2008 6:40:39 PM GMT
1200 x 1600 - 747K
1600 x 1200 - 317K
1200 x 1600 - 663K
1600 x 1200 - 331K

Comments

  • StefanL38StefanL38 Posts: 2,292
    edited 2008-06-22 09:51
    Hello Chuck,

    as far as a can see from the pictures it is pretty good.

    Some ideas about checking:

    what is the force needed to turn the valve connected to the servo?
    Can the servo produce enough force?

    is the valve in the middle the electromagnetic driven valve you mentioned in an earlier posting?
    if i remember right you want to use it as emergency shutt off. I would check the proper closing in various situations

    power get's lost suddenly.
    supply-voltage get's down slowly
    drive down the powersupply to find out when is it closing completely
    open/closing of the valve in all kind of mountingpositions horizontal, vertical, any degree inbetween, overhead
    for more security may be adding a gassensor that gives alarm if propane OR BUTANE is detected

    what happens if some dismounts the low-pressure-regulator and:
    - deadman-valve stays opened only the needle-valve is closing

    checking does the deadman-valve NEED i high pressure to close
    or does it close without pressure ?

    best regards

    Stefan
  • Chuck RiceChuck Rice Posts: 210
    edited 2008-06-23 02:32
    Thanks Stefan,

    The force to turn the valve, is low, now, but it is new. It might stiffen up with age. That is why I chose the sail winch servo. They are quite powerful, and they can turn 2 to 4 full revolutions.

    Yes, the valve is the one I mentioned before. It should function as a deadman. Thanks for the testing suggestions. It opens and closed with no pressure.

    I updated the design and software in the first post of this thread with the changes I made this weekend. Thanks for your help.
  • Chuck RiceChuck Rice Posts: 210
    edited 2008-07-02 21:58
    Does anyone know of a source for song notes? Not a score, but just the note names. I have found a few, but nothing great. Since I have a speaker and code to generate tones, I would like to add

    University Football Team songs. Like Boomer-Sooner.
    Doors - Light My Fire

    and maybe others. I need to know the Note, Octive, and Duration of each not in the song. For example:

    'Happy Birthday
    song8n   byte D,D,E,D,G,Fs, R,  D,D,E,D,A,G, R, D,D,D,B,G,Fs,E,E,E,  C,C,B,G,A,G
    song8o   byte 4,4,4,4,4,4 , 4,  4,4,4,4,4,4, 4, 4,4,3,4,4,4, 4,4,4,  4,4,4,4,4,4
    song8d   byte H,Q,H,H,H,W , H,  H,Q,H,H,H,Q, H, Q,Q,H,H,H,Q, W,W,W,  Q,Q,H,H,H,W
    
    



    Camptown Racers, Happy Birthday, and B-I-N-G-O, just are not doing it for me. [noparse]:)[/noparse] All my searches are finding are ring tones and sheet music.
  • Ken PetersonKen Peterson Posts: 806
    edited 2008-07-03 01:09
    Are you making a musical smoker?

    Sheet music should give you the information you need. Go to wikipedia and pull up the page on how to read sheet music. It's not like you have to perform it, just translate it to numbers. It's not that hard.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2008-07-03 01:19
    @Chuck

    I've been following your project with interest. yeah.gif

    I can put that song into a MIDI or BIAB format if you like or just give you the chords or all options. I downloaded a BIAB www.pgmusic.com/ version and did a sample for you. If it's any good to you I can convert the whole thing and send it to your inbox.(it's too long to post)

    You could also use the Hydra MIDI sound engine.

    Light My Fire Example:

    210    9849    Int    96 43 30     Note On ($9x)      7     Pitch = G  5     Velocity =  48 
    
    Evt #  time mS Source Raw           Status             Chan  Data
    211    9929    Int    99    23 00     Note On ($9x)     10     Pitch = B  2     Velocity =   0 
    212    9929    Int    99    2A 00     Note On ($9x)     10     Pitch = Gb  3     Velocity =   0 
    213    10028    Int    91 21 00     Note On ($9x)      2     Pitch = A  2     Velocity =   0 
    214    10099    Int    91 21 61     Note On ($9x)      2     Pitch = A  2     Velocity =  97 
    215    10109    Int    99 23 5D     Note On ($9x)     10     Pitch = B  2     Velocity =  93 
    216    10109    Int    99 2A 53     Note On ($9x)     10     Pitch = Gb  3     Velocity =  83 
    217    10199    Int    99 23 00     Note On ($9x)     10     Pitch = B  2     Velocity =   0 
    218    10199    Int    99 2A 00     Note On ($9x)     10     Pitch = Gb  3     Velocity =   0 
    219    10199    Int    96 37 00     Note On ($9x)      7     Pitch = G  4     Velocity =   0 
    220    10369    Int    99 2A 3F     Note On ($9x)     10     Pitch = Gb  3     Velocity =  63 
    221    10379    Int    96 3C 2C     Note On ($9x)      7     Pitch = C  5     Velocity =  44 
    222    10399    Int    96 2D 00     Note On ($9x)      7     Pitch = A  3     Velocity =   0 
    223    10459    Int    99 2A 00     Note On ($9x)     10     Pitch = Gb  3     Velocity =   0 
    224    10638    Int    99 26 50     Note On ($9x)     10     Pitch = D  3     Velocity =  80 
    225    10638    Int    99 2A 5D     Note On ($9x)     10     Pitch = Gb  3     Velocity =  93 
    226    10648    Int    96 37 36     Note On ($9x)      7     Pitch = G  4     Velocity =  54 
    227    10689    Int    92 43 00     Note On ($9x)      3     Pitch = G  5     Velocity =   0 
    228    10689    Int    92 40 00     Note On ($9x)      3     Pitch = E  5     Velocity =   0 
    229    10689    Int    92 3C 00     Note On ($9x)      3     Pitch = C  5     Velocity =   0 
    230    10689    Int    92 45 00     Note On ($9x)      3     Pitch = A  5     Velocity =   0 
    231    10729    Int    99 26 00     Note On ($9x)     10     Pitch = D  3     Velocity =   0
    



    Example of Light My Fire converted to the Hydra dense Music Format (HDMF)



    Making HDMF data set... Song will be constrained to use no more than 6 channels.
    
    _song_data
            byte    $02, $EF, $AD, $79, $35          'Instrument 0
            byte    $FF                              'End of Instrument list
            byte    $00, $00, $45, $0A, $36
            byte    $6B, $00, $45, $0A, $36
            byte    $6B, $00, $45, $08, $36
            byte    $36, $00, $45, $0A, $36
            byte    $35, $20, $45, $08, $36
            byte    $36, $00, $45, $0A, $36
            byte    $36, $01, $06, $06, $80, $CD
            byte    $00, $21, $B8, $06, $80, $CD
            byte    $00, $41, $88, $06, $80, $CD
            byte    $00, $61, $4A, $06, $80, $CD
            byte    $00, $80, $49, $0A, $0B
            byte    $00, $A0, $3E, $0A, $0B
            byte    $00, $80, $37, $0C, $3F
            byte    $00, $A0, $8B, $07, $0B
            byte    $00, $A1, $06, $09, $80, $CC
            byte    $01, $80, $6E, $06, $80, $C4
            byte    $19, $80, $6E, $07, $45
            byte    $00, $80, $5C, $0A, $0B
            byte    $1B, $80, $A5, $08, $43
            byte    $00, $80, $49, $0A, $0B
            byte    $00, $80, $5C, $0D, $0B
            byte    $1B, $80, $3E, $08, $0B
            byte    $00, $80, $5C, $07, $0B
            byte    $00, $80, $C4, $07, $5A
            byte    $00, $80, $37, $08, $10
            byte    $1B, $80, $3E, $0B, $0B
            byte    $00, $80, $5C, $0A, $0B
            byte    $00, $80, $37, $0B, $45
            byte    $1A, $80, $5C, $07, $0B
            byte    $00, $80, $6E, $06, $46
            byte    $1B, $80, $49, $0A, $0B
            byte    $00, $80, $A5, $05, $2B
    



    More on HDMF:
    http://forums.parallax.com/showthread.php?p=652719

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Aka: CosmicBob

    Post Edited (Bob Lawrence (VE1RLL)) : 7/3/2008 1:38:53 AM GMT
  • Chuck RiceChuck Rice Posts: 210
    edited 2008-07-03 03:30
    Ken Peterson said...
    Are you making a musical smoker?

    Sheet music should give you the information you need. Go to wikipedia and pull up the page on how to read sheet music. It's not like you have to perform it, just translate it to numbers. It's not that hard.

    Thanks Ken, but I tried that. It did not turn out to be that simple. Attached is the first page (of 8) of the score I found, but there are too many notes. I went through all 8 pages, but I could not pull out the simple "Come on Baby Light my Fire" that I was looking for. This is just for fun, so I am looking for simple.
  • Chuck RiceChuck Rice Posts: 210
    edited 2008-07-03 03:43
    @Bob. Thanks. I have not looked at they Hydra yet. I may have to do that.

    I will update the software to the latest version (see the code in the first post of this thread). I have everything pretty much working now, except for the pilot-light/piezo-ignition (not sure which I ill use yet). Still searching for a good solution there.

    The midi may have what I need. I take it that the Pitch = B 2 is the note and octive. Notes with the same time play at the same time (I guess) but where is the duration of the note? Am I close?
  • Bob Lawrence (VE1RLL)Bob Lawrence (VE1RLL) Posts: 1,720
    edited 2008-07-03 07:55
    This chart will help you convert from Note, Freq, midi Note etc...

    tomscarff.tripod.com/midi_analyser/midi_note_frequency.htm

    The standard tuning pitch is A4 (A above middle C)
    Midi Note : 60 261.6255653006

    MIDI Note Numbers for Different Octaves

    tomscarff.tripod.com/midi_analyser/midi_note_numbers_for_octaves.htm


    You have timing info above - time mS (millisec)

    Also,

    I believe you only need the Hydra book and CD to get the HDMF engine. I only found out about HDMF a few days ago and have not used it yet.

    Another option is to convert the MIDI file to a wave file if you want to play back a wave file. I can convert it if required.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Aka: CosmicBob
  • Chuck RiceChuck Rice Posts: 210
    edited 2008-07-03 12:06
    Bob Lawrence (VE1RLL) said...

    You have timing info above - time mS (millisec)

    I must be missing something. If the time ms column is the note duration, that means that the first note is 9.929 seconds long.
  • Ken PetersonKen Peterson Posts: 806
    edited 2008-07-03 12:11
    Chuck: No wonder you couldn't get the melody from that sheet music. It's the organ part, not the vocal part. Unless you wanted to get the intro which would be pretty straight-forward from that sheet and it would also sound good on limited hardware.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
  • WurlitzerWurlitzer Posts: 237
    edited 2008-07-03 13:48
    Chuck the 9+ ms you see is the delta time from the start of recording to the first event which is a note on message.

    In case you did not know a MIDI Note ON message with a Velocity of 0=Note Off. An actual Note ON message will have a velocity > O

    This allows MIDI to send a single status message (Note On) then a string of Note On or Note off messages without haveing to send the Status byte for every note. Only when something changes like Channel number or some other type message do you have to send the status byte again.

    Craig
  • Chuck RiceChuck Rice Posts: 210
    edited 2008-07-03 18:36
    Thanks everyone. I found a midi file with a trombone part. I also found a midi score editor called Sibelius with a 1 month trial. It allowed me to split off the Trombone part and label the notes. The attached PDF shows the result. Even after this, the song was not right, so I looked further and discovered that I was using BYTE arrays to store the info, so it as truncating some of the frequencies. No wonder I could not get anything to work.

    Here is the result:

    'Light my Fire
    song9n   word G,G,G,G,Fs,FS,D,D,   R, G,G,G,G,Fs,FS,D,D, R, G,G,G,G,Fs,FS, R, E
    song9o   word 2,2,2,2,2, 2 ,2,2,   2, 2,2,2,2,2 ,2 ,2,2, 2, 2,2,2,2,2 ,2 , 2, 2
    song9d   word Q,Q,Q,Q,Q ,H ,H,W,   W, Q,Q,Q,Q,Q ,H ,Q,W, H, Q,Q,Q,Q,Q ,H , W, W 
    
    
Sign In or Register to comment.