Home
JAQForum Ver 24.01
Log In or Join  
Active Topics
Local Time 05:22 18 Nov 2025 Privacy Policy
Jump to

Notice. New forum software under development. It's going to miss a few functions and look a bit ugly for a while, but I'm working on it full time now as the old forum was too unstable. Couple days, all good. If you notice any issues, please contact me.

Forum Index : Microcontroller and PC projects : read out carolling christmas bells

     Page 5 of 5    
Author Message
Frank N. Furter
Guru

Joined: 28/05/2012
Location: Germany
Posts: 997
Posted: 08:21pm 15 Nov 2025
Copy link to clipboard 
Print this post

  twofingers said  Connect a microphone to the PC, start a recording program (in my case it would be Cooledit 2000), and ring each bell individually with a fixed object (a mallet) corresponding to the numbered bell – with short pauses in between. Check if the signal level is high enough. Then save everything as an MP3 file. Compress it as a ZIP archive and upload it here.


I'm a little frustrated at the moment. :-( I haven't been able to get the microphone to work under f***ing Win10. It's enabled in the security settings, but it just doesn't work...
The internal microphone works on another small Win10 notebook, but it doesn't have an external microphone connection and the internal microphone is useless...

Unfortunately, I don't know anything about musical notation.

I recorded the highest and lowest bells again with a different recorder, but I think it's just as useless:
REC000.zip

I think I'll try Volhout's suggestion next and try to generate the frequencies of Jim with the Picomite and try to figure out the bell tones that way.

@phil99:
Actually, I'm reluctant to continue soldering on the glockenspiel. It's still working at the moment, and it would be nice if it stayed that way. Once I've found replacements for the sound elements, I'll try them out with different timings.

Frank
 
twofingers

Guru

Joined: 02/06/2014
Location: Germany
Posts: 1681
Posted: 09:17pm 15 Nov 2025
Copy link to clipboard 
Print this post

Hi Frank,

that's a real shame. I can't even play the program under Windows 7:
WAV File: rec024.wav
Audio Format: 17 Channels: 1 Sample Rate: 8000Hz
Bits Per Sample: 4 Data Bytes: 28672
Unsupported audio format (not PCM integer): 17

4 Bits per Sample?

And even Pico fails with this format. Cooledit 200 also crashes when trying to load the file. Doesn't anyone around you have a smartphone?

And just two tones wouldn't help us anyway.
Kind regards
Michael

PS:
I could relatively easily write a universal bell tone program, but I don't know when I'll get around. It's really just about the UI.
causality ≠ correlation ≠ coincidence
 
phil99

Guru

Joined: 11/02/2018
Location: Australia
Posts: 2828
Posted: 09:19pm 15 Nov 2025
Copy link to clipboard 
Print this post

Unfortunately they contain very few frequencies above the noise level, and none of them match the previous recordings.
The signal level is just too low.

Does your recording software have any way to increase the gain?
If not try other software.

REC020.WAV has just one usable peak at 2694Hz
REC024.WAV has just two usable peaks at 3262Hz and 1065Hz
.
Edited 2025-11-16 07:34 by phil99
 
Frank N. Furter
Guru

Joined: 28/05/2012
Location: Germany
Posts: 997
Posted: 09:28pm 15 Nov 2025
Copy link to clipboard 
Print this post

So, I played around with the frequencies of TassyJim and used the online tone generator from here:

https://www.szynalski.com/tone-generator/

When I struck the bells manually, I could hear resonance at these frequencies:

F7  2793,83
D#7 2489,02
C7  2093
B6  1975,53
A#6 1864,66
A6  1760
G6  1567,98
F#6 1479,98
F6  1396,91
E6  1318,51
D#6 1244,51
C6  1046,50

I believe that with these frequencies we are not very far from the actual bells.
I'll try that out with my player now.

Frank
 
twofingers

Guru

Joined: 02/06/2014
Location: Germany
Posts: 1681
Posted: 09:46pm 15 Nov 2025
Copy link to clipboard 
Print this post

@Frank:
Did you ring the bells at the same time?
I found the frequencies (File: REC024.wav) 1056 Hz (C6) and 3193 Hz (G7).
I don't know if that will help.

EDIT:
I saw Phil's post. Did you save each tone in a separate file?
I only tried the larger one (rec024), assuming it would have a better chance of being high quality.
Edited 2025-11-16 07:53 by twofingers
causality ≠ correlation ≠ coincidence
 
phil99

Guru

Joined: 11/02/2018
Location: Australia
Posts: 2828
Posted: 09:54pm 15 Nov 2025
Copy link to clipboard 
Print this post

Ran through REC024.WAV again and got peaks at 3194Hz and 1065Hz
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6363
Posted: 10:00pm 15 Nov 2025
Copy link to clipboard 
Print this post

REC020.WAV is 2695 Hz

I found both recordings much cleaner than the last ones.

Similar recording of the other bells will help


Jim
VK7JH
MMedit
 
phil99

Guru

Joined: 11/02/2018
Location: Australia
Posts: 2828
Posted: 10:04pm 15 Nov 2025
Copy link to clipboard 
Print this post

  Quote  REC024.WAV again and got peaks at 3194Hz and 1065Hz

1065 x 3 = 3195 so 3194Hz is just a harmonic and can be ignored.

So the highest bell is 2695 and the lowest is 1065. So the notes are E7 and C6 as E7/C6 = 2695/1065.
.
Edited 2025-11-16 08:19 by phil99
 
twofingers

Guru

Joined: 02/06/2014
Location: Germany
Posts: 1681
Posted: 11:05pm 15 Nov 2025
Copy link to clipboard 
Print this post

  Frank N. Furter said  So, I played around with the frequencies of TassyJim and used the online tone generator from here:

https://www.szynalski.com/tone-generator/

...

I believe that with these frequencies we are not very far from the actual bells.
I'll try that out with my player now.

Frank

I agree with you, but have you considered downloading Glocke01.zip?
https://www.thebackshed.com/forum/ViewTopic.php?TID=18406&P=3#246806

They were generated with the PicoMite and then recorded with a smartphone.
The tones match your table quite well.

WAV file written: B:#gong1.wav
Duration: 3 s
Frequency: 1045 Hz
Sample rate: 16000 Hz
SAMPLES: 48000

SPN     FREQ
C6      1046.50
C#6     1108.73
D6      1174.66
D#6     1244.51
E6      1318.51
F6      1396.91
F#6     1479.98
G6      1567.98
G#6     1661.22
A6      1760.00
A#6     1864.65
B6      1975.53
C7      2093.00
C#7     2217.46
D7      2349.32
D#7     2489.02
E7      2637.02
F7      2793.83

This thread is already very confusing.
Edited 2025-11-16 09:43 by twofingers
causality ≠ correlation ≠ coincidence
 
phil99

Guru

Joined: 11/02/2018
Location: Australia
Posts: 2828
Posted: 02:50am 16 Nov 2025
Copy link to clipboard 
Print this post

Using the low (1065Hz) and high (2695Hz) bells from the last recordings the complete scales are:-
> low.bell=1065 : high.bell=1069.5115 'starting value for high.bell to reach 2695Hz
>
> for n=0 to 16:?low.bell,high.bell :low.bell=low.bell* 2^(1/12):high.bell=high.bell* 2^(1/12):next
1065            1069.5115      C6      1060 <--from Jim's     1058 <--REC004.WAV revised
1128.328195     1133.107963                earlier list    
1195.422081     1200.486069    D6      1200                   1212
1266.505577     1271.870685          
1341.815918     1347.500052    E6      1350                   1341
1421.604445     1427.626575    F6      1400                   1407
1506.137444     1512.517668    F#6     1500                   1480
1595.697037     1602.456649    G6      1600                   1599
1690.58212      1697.74368                            
1791.109364     1798.696773    A7      1800                   1803
1897.61427      1905.652849    A#7     1900                   1898
2010.452286     2018.968864    B7      2020                   1995 <--This bell is down in the
2130            2139.023       C7      2130                   2127     noise so not accurate
2256.656391     2266.215926                                            in REC02.WAV = 2007Hz                       
2390.844163     2400.972138    D7      2400                   2377
2533.011155     2543.741371                            
2683.631836     2695.000104    E7      2750                   2678
>
So the 12 bells don't cover the full 17 notes in the range and are not exactly tuned so as Jim said it would be better to get recordings of the remainder.

I have redone REC004.WAV and added the revised values to the list above.
Edited 2025-11-16 14:35 by phil99
 
Frank N. Furter
Guru

Joined: 28/05/2012
Location: Germany
Posts: 997
Posted: 07:04pm 16 Nov 2025
Copy link to clipboard 
Print this post

  twofingers said  Did you ring the bells at the same time?
No, one bell after another.
  twofingers said  I agree with you, but have you considered downloading Glocke01.zip?
Yes, but there are more notes in your table than I have bells...
  TassyJim said  I found both recordings much cleaner than the last ones.

Similar recording of the other bells will help
Here, I rang the bells by hand with a clapper.

I have now entered the frequencies I mentioned above into my program. It sounds better, but it's still not quite right. I have attached the program here. The path for the .dat file needs to be adjusted.

play03.bas.zip

  phil99 said  So the 12 bells don't cover the full 17 notes in the range and are not exactly tuned so as Jim said it would be better to get recordings of the remainder.
I have to agree with you there! I really need to find a way to record the bells better. I'll try out your 12 frequencies. Thank you!

Frank
Edited 2025-11-17 05:07 by Frank N. Furter
 
TassyJim

Guru

Joined: 07/08/2011
Location: Australia
Posts: 6363
Posted: 07:42pm 16 Nov 2025
Copy link to clipboard 
Print this post

The more I read about bells, the more I realise that bell ringing is a dark art.
Bells don't bear any resemblance to 'normal' tones.

Jim
VK7JH
MMedit
 
phil99

Guru

Joined: 11/02/2018
Location: Australia
Posts: 2828
Posted: 04:52am 17 Nov 2025
Copy link to clipboard 
Print this post

Hi Frank
To make it easier to try different sets of tones here is a condensed version of your program.
'Frank's chime tester program
Option EXPLICIT
Print
Print "PLAY MUSIC"
Open "music.dat" For Input As #1


Dim integer BellNote, Zaehler, FreqZaehler
Dim integer Freq(4), track, note

' Add new tone sets here. Un-comment the one you wish to try

'Dim integer tone(11)=(2695,2401,2139,2019,1906,1799,1602,1513,1428,1348,1200,1070)
Dim integer tone(11)=(2684,2391,2130,2010,1898,1791,1596,1506,1422,1342,1195,1065)
'Dim integer tone(11)=(2750,2400,2130,2020,1900,1800,1600,1500,1400,1350,1200,1060)
'Dim integer tone(11)=(2678,2377,2127,2007,1898,1803,1599,1480,1407,1341,1212,1058)

Dim float BellTime
Dim scale$(11)=("E7","D7","C7","B7","A#7","A7","G6","F#6","F6","E6","D6","C6")

Do
 Input #1, BellTime, BellNote 'get the data
 If BellTime > 2000 Then Inc track
 Print
 Print "BellTime: ";BellTime;" Bellnote: ";Bellnote, "Track: ";track
 Pause BellTime
 FreqZaehler=1

 For note=0 To 11
   If (BellNote >> note) And 1 Then
     Freq(FreqZaehler) = tone(note)
     Print scale$(note)
     Inc FreqZaehler
  EndIf
 Next

 If BellNote = 0 Then
   Play STOP
  Else
   For Zaehler = 1 To (FreqZaehler-1)
     Print "Freqzaehler: ";Zaehler;" Freq: ";Freq(Zaehler)
     Play SOUND Zaehler,B,S,Freq(Zaehler)
   Next Zaehler
 EndIf

Loop Until Eof(#1)

Close #1
Print "Ende"
End

Edited 2025-11-17 15:04 by phil99
 
Mixtel90

Guru

Joined: 05/10/2019
Location: United Kingdom
Posts: 8296
Posted: 08:47am 17 Nov 2025
Copy link to clipboard 
Print this post

There's bells and bells, Jim. :)
Playing a recognizable tune on bells is nothing like change ringing, which has its own rules entirely, based on how long it takes a bell to swing at it's pendulum frequency rather than the frequency of its note...
Mick

Zilog Inside! nascom.info for Nascom & Gemini
Preliminary MMBasic docs & my PCB designs
 
Frank N. Furter
Guru

Joined: 28/05/2012
Location: Germany
Posts: 997
Posted: 06:43pm 17 Nov 2025
Copy link to clipboard 
Print this post

  phil99 said  Hi Frank
To make it easier to try different sets of tones here is a condensed version of your program.

Thank you very much! That's a great addition!

Frank
 
     Page 5 of 5    
Print this page


To reply to this topic, you need to log in.

The Back Shed's forum code is written, and hosted, in Australia.
© JAQ Software 2025