Automatic School Bell - BellPro - Open Source VB6

by DaTi_ns in Circuits > Software

19 Views, 2 Favorites, 0 Comments

Automatic School Bell - BellPro - Open Source VB6

Osnovni.jpg
Podesavanja.jpg
Praznici.jpg
Raspusti.jpg
Tray.jpg

Project I want to fully share with all of you is the school bell software, which is still in use in about 10 schools across Serbia (and maybe even beyond).

The story behind it dates back to 2007 when I saw such a software online (from the legendary Vojo [http://vojo.milanovic.org/zvono.htm]) and wanted to make my own. Back then, as a high school student, I was experimenting with Microsoft Access VBA forms and tables, and the school bell was my first project in the then-popular VB6. At that time, @pedja089 (https://elektronika.ba forum) sent me VB6, and that’s where it all started.

Since then, about 20 licenses of the software have been released. The last license was released in 2019, and since then, it's been gathering dust.

Some features:

  1. Unlimited number of schedules with defined times
  2. Bell rings through the school's PA system
  3. Does not ring on weekends, during holidays, or breaks
  4. Schedule for extracurricular activities (useful for times in sports halls)

Technical details:

  1. Source code - Visual Basic 6
  2. SQLite database
  3. RS232 interface with a relay

On the link, you will find the complete VB6 source code, the install script, PCB interface schematics, and a KeyGenerator for the pre-built version.

https://github.com/milosavljevic92/bellpro


Anyway, it would be good to upgrade the interface with an Atmel/PIC interface that could have expected commands for triggering the relay from the computer. Maybe even make an offline version that works with RTC and retrieves data from EEPROM, but that would just be nice :)

The software is completely free. Feel free to use it and install it in nearby schools. Also, if anyone is interested in development, it can be forked from my GitHub repo, so we can keep up the development continuity. It would be nice if someone installed it somewhere so we can track that the software is still alive.


Old school Windows Visual Basic 6 application that can help with some sound notifications through the interface of bell or speaker system to inform people about starting/ending schedules.

Supplies

Screenshot_1.png
photo_2025-04-06_02-40-19.jpg

Best price on https://sprintel.rs or use another source like ebay.com

To compile and see source code:

  1. Visual Basic 6 is your best frend
  2. Inno Setup tool for install wizzard
  3. sqlite for database (included in github files)
  4. KeyGenerator included in project files

Sorry project is still on Serbian Latin language, it will be upgraded to multi. Be free to localize on your own language.

For everything to work in Visual Basic 6 and be compilable, you need:

  1. To make SQLite work, you need to install the SQLiteODBC connector (sqliteodbc.exe in the root->Tools folder)
  2. There may be issues in VB6 with loading the MSDataGridLib.DataGrid DLL, which you can manually import from (root -> InstallScript -> DLL -> msdatgrd.ocx)


Hardware Interface Setup (USB to RS232 Cheap TTL Converter Interface)

photo_2025-04-06_02-40-14.jpg
photo_2025-04-06_02-40-17.jpg
photo_2025-04-06_02-40-24.jpg
photo_2025-04-06_02-40-26.jpg

All hardware drawings and code are included in the root folder Interface RS232 or USB (draft) folders. The new code for the custom command relay interface is in the delivery phase.

Currently software is set up to:

  1. (triggered via RTS (7 pin) port, interface presence detected via DTR (4 pin))

The interface works best with a native serial port on the motherboard; using USB converters may cause issues if they are not of good quality. Digitus has proven to be a good choice, based on FT232RNL. Also, after restarting the computer where the software is installed, the bell might ring due to signals initializing on the RS232.