Skip to content

Latest commit

 

History

History
167 lines (129 loc) · 4.11 KB

File metadata and controls

167 lines (129 loc) · 4.11 KB

Getting Started with SecureBox

The Problem That Was Fixed:

  • You had uploaded SecureBox_Internal firmware (debug version) with DEBUG outputs
  • DEBUG outputs interfered with application communication
  • This caused master password to not work correctly

What Has Been Fixed:

1. Firmware Cleaned

  • Removed all DEBUG outputs from SecureBox_Internal firmware
  • Now it's clean and identical to SecureBox version

2. Applications - Only 2 Best Remain:

  • GUI (Tkinter) - gui-tkinter/securebox_gui.py
  • Web (Flask) - web-flask/app.py
  • Removed: .NET desktop, CLI (were duplicates)

3. INFO Display Added:

Both applications now display:

  • Entry count: X / 100
  • Memory used: X%
  • Space: X KB / MB
  • Color coding: green < 50%, orange < 80%, red > 80%

4. Test Scripts Cleaned:

  • Removed all test scripts
  • One universal remains: test_securebox.py

WHAT YOU MUST DO NOW:

STEP 1: Upload Fixed Firmware

IMPORTANT: You must re-upload firmware, otherwise password won't work!

1. Open Arduino IDE
2. Open: SecureBox_Internal/SecureBox_Internal.ino
3. Click: Upload (Ctrl+U)
4. Wait until upload completes
5. Disconnect and reconnect USB cable (hardware reset)

STEP 2: Test Connection

cd SecureBoxApps
python test_securebox.py

This test will:

  • Connect to device
  • Display INFO about memory
  • Test unlock with your password
  • List all entries

STEP 3: Run Application

GUI Application:

cd gui-tkinter
python securebox_gui.py

Web Application:

cd web-flask
python app.py
# Then open: http://localhost:5000

What Works NOW:

GUI Application (Tkinter):

  • USB connection
  • Unlock with master password
  • Device Information panel: displays entry count, memory, space
  • Password Statistics: strong/weak passwords, average length
  • Add/edit/delete entries
  • Password generator
  • Copy passwords to clipboard
  • Security warnings

Web Application (Flask):

  • USB connection
  • Unlock with master password
  • INFO in API: /api/status contains device info when unlocked
  • Modern web interface
  • All CRUD operations
  • Password generator

IF YOU HAVE PROBLEMS:

Password doesn't work:

1. Check if you uploaded FIXED firmware (Step 1)
2. Disconnect and reconnect USB cable
3. Run test: python test_securebox.py
4. If still doesn't work - database may have different password
   Solution: WIPE database in application, then create new one

Application doesn't connect:

1. Check COM port in Device Manager
2. Close all other applications using the port
3. Run test: python test_securebox.py

INFO doesn't display:

1. Must be UNLOCKED
2. INFO command works only with fixed firmware
3. Check if you uploaded new firmware (Step 1)

Project Structure:

SecureBox/
├── SecureBox/                    # Production firmware (no debug)
├── SecureBox_Internal/          # Internal firmware (USE THIS!)
├── SecureBoxAndroid/            # Android application
├── SecureBoxApps/
│   ├── gui-tkinter/             # GUI application
│   │   └── securebox_gui.py
│   ├── web-flask/               # Web application
│   │   └── app.py
│   ├── shared/                  # Shared API
│   │   └── securebox_api.py
│   └── test_securebox.py        # Universal test
├── SecureBoxWebServer/          # WiFi-only firmware (optional)
└── docs/                        # Documentation

Summary of Changes:

FIRMWARE:

  • Removed DEBUG outputs from SecureBox_Internal
  • Both firmwares (SecureBox, SecureBox_Internal) are now identical

APPLICATIONS:

  • Added INFO display (entries, memory%, used space)
  • Removed .NET and CLI (duplicates)
  • Only GUI (Tkinter) and Web (Flask) remain

TESTS:

  • Removed all test scripts
  • One universal: test_securebox.py

Everything is Now UNIVERSAL and UNIFIED!

All changes are synchronized. When I modify something in the future, I will update it in both firmwares and applications to keep them identical.

Questions? First run: python test_securebox.py