DIY Project: Noiz Midi Controller

Παιδιά τι λέει προχωράει το project?Εκτός από 2-3 δεν βλέπω να υπάρχει ιδιαίτερο ενδιαφέρον. ???Εγώ πάντως θα θελα να είχα ένα controller το καλοκαίρι! ;D

 
Φιλε Μανώλη,

Κατ'εμένα πάντα, το μόνο αρνητικό (και αυτό καθαρά λόγω κόστους αλλά και απλότητας στην κατασκευή) στο δικό μου project είναι ότι: για να το προγραμματίσεις πρέπει να το κάνεις μόνο μέσω του ειδικού προγράμματος του Η/Υ που φτειάχνω. Κατά τα άλλα, μπορείς να στείλεις ότι και όσες εντολές θέλεις ανά πάτημα κουμπιού με μόνο περιορισμό τα 256 bytes ανά κάλεσμα μνήμης. Δηλαδή με το πάτημα ενός κουμπιού έως 256 bytes x 4 midi outs.
ο χρηστης θα χρειαστει να γραφει κωδικα για να προγραμματισει τη συσκεθη η' θα ειναι καποιο GUI με ολα τα parameters τα οποιο θα μπορει να αλλαξει?

Μια αλλη ιδεα ισως θα ηταν να υπαρχει LCD και το αντιστοιχο menu πανω στη συσκεθη ετσι ωστε να ειναι πληρως standalone.

Απ'ότι κατάλαβα (εάν κατάλαβα καλά) θα είναι 24 inputs που θα τα ορίζεις να κάνουν ότι θέλεις. Ο προγραμματισμός τους θα είναι μάλλον από το ίδιο το κουτί.
Σωστα καταλαβες. Παρ'ολα αυτα η διαφορα  ειναι οτι μπορεις να συνδεσεις και διαφορυς sensors εκτοσ απο variables resistors ετσι ωστε να μπορει να χρεισημοποιειθει και σε installations, exhibitions, etc..

Σε κάθε input, εάν πρόκειται για midi,  θα μπορείς να έχεις πόσες εντολές τη φορά;
Δεν ειμαι σιγουρος τι ακριβως ενοεις. Προς το παρων καθε input εχει ενα MIDI Cc value, το οποιο μπορει να αλλαξει απ το μενου. Αυτο το Cc value μπορει μετα να ελεγχει οποιαδιποτε παραμετρο θελει ο χρηστης (μπορει να ειναι και πανω απο 1 παραμετρος, πχ να εχεις το ιδιο Cc value για Fc, Attack, Delay time, etc...). Ελπιζω να απαντησα στην ερωτηση σου.

Εάν θέλεις, μπορείς να μας δώσεις κάποιο τυπικό σχέδιο της ιδέας;
Εκανα attach ενα προχειρο diagram τησ συσκευης. Υπαρχουν και αλλα αναλυτικα για καθε PCB που ειναι στη διαθεση οποιου ενδιαφερετε.

ευχαριστω

 
edessaios είπε:
Παιδιά τι λέει προχωράει το project?Εκτός από 2-3 δεν βλέπω να υπάρχει ιδιαίτερο ενδιαφέρον. ???Εγώ πάντως θα θελα να είχα ένα controller το καλοκαίρι! ;D
Το βασικό project θα είναι έτοιμο μετά το καλοκαίρι. Οι λόγοι είναι:

1) Όσο απλό θα είναι το hardware,

2) τόσο σύνθετο είναι το software και ειδικά αυτό του Η/Υ, διότι πρέπει να υπάρχει πλήρης έλεγχος των δεδομένων που θα στείλει ο χρήστης.

Γι'αυτό και γίνονται αρκετά "crash test" έως ότου ανέβει στο noiz επίσημα (τουλάχιστον το πρώτο μέρος). Μην ξεχνάμε ότι η όλη δουλειά γίνεται κυριολεκτικά από το μηδέν.

Από τα μέχρι τώρα αποτελέσματα είμαι αισιόδοξος για τα χρονικά πλαίσια.

 
Να ρωτησω κατι:

Εκτος απο την βασικη ιδεα σχετικα με τις αλλαγες στο setup υπαρχει περιπτωση να γινει καποια επεκταση και να μπορουμε να χρησιμοποιουμε knobs και faders και να γινει κατι τετοιο?

62134.jpg


 
Φίλε warpie,

Σχετικά με το δικό σου project, είναι πολύ ωραίο, παίζεις με άλλα δεδομένα για άλλες απαιτήσεις. Γενικά όμως είναι αξιόλογο για το συγκεκριμένο λόγο που το φτειάχνεις.

Καλή συνέχεια


ο χρηστης θα χρειαστει να γραφει κωδικα για να προγραμματισει τη συσκεθη η' θα ειναι καποιο GUI με ολα τα parameters τα οποιο θα μπορει να αλλαξει?
Το μόνο που θα κάνει ο χρήστης είναι να γράφει σε text αρχείo, το τι θέλει να στέλνει στο κάλεσμα της κάθε μνήμης, για κάθε midi out ξεχωριστά. Το ίδιο θα κάνει και για τα foot switches κλπ. Από εκεί και πέρα, το πρόγραμμα του Η/Υ θα κάνει "compile" όλο το block και θα φτειάχνει ένα SysEx αρχείο, που θα το στέλνει μέσω Midi Dump στο κουτί. Αυτό είναι όλο. Το μυστικό είναι στην πολυπλοκότητα των εντολών που μπορείς να στείλεις ανά μνήμη κλπ.

Για παράδειγμα στο αρχείο "Nz_MP111.TXT" που αφορά την έξοδο midi 1 και την μνήμη 11 θα μπορεί να γράφει σε ascii τις παρακάτω midi εντολές:

b0,00,00,b0,20,00,c0,00

B1,00,00,B1,20,00,C1,01

(σύνολο έως 256 bytes)

Το αρχείο "Nz_MP211.TXT" αφορά την έξοδο midi 2 και την μνήμη 11 κλπ.

Για τα Foot Switches, το αρχείο "Nz_Sd101.TXT" αφορά την έξοδο midi 1 και το Foot Switch 1, όταν είναι πατημένο.

Το αρχείο "Nz_Su203.TXT" αφορά την έξοδο midi 2, το Foot Switch 3, όταν δεν είναι πατημένο.

Για τα Foot Pedals, το αρχείο "Nz_PD401.TXT" αφορά την έξοδο midi 4 και το Foot Pedal 1. Εδώ εκτός από τους controllers (έως 4 ταυτόχρονα) μπορείς να βάλεις και τα minimum και maximum των values για κάθε controller ξεχωριστά.

Και πάει λέγοντας...

Στο τέλος, το πρόγραμμα αφού κάνει τους σχετικούς ελέγχους, θα κάνει compile όλα τα πιό πάνω (μνήμες , foot switches, foot pedals κλπ) και θα ετοιμάσει το SysEx αρχείο για Midi Dump.

Μια αλλη ιδεα ισως θα ηταν να υπαρχει LCD και το αντιστοιχο menu πανω στη συσκεθη ετσι ωστε να ειναι πληρως standalone.
1) LCD θα υπάρχει μόνο σαν optional.

2) Standalone θα είναι στο play mode (live). Ο προγραμματισμός θα γίνεται μόνο μέσω των αρχείων που ανέφερα πιό πάνω. Έτσι ο κώδικας για τον pic θα είναι σημαντικά μικρότερος.

Αυτά...

 
Τελευταία επεξεργασία από moderator:
NemOOO είπε:
Να ρωτησω κατι:

Εκτος απο την βασικη ιδεα σχετικα με τις αλλαγες στο setup υπαρχει περιπτωση να γινει καποια επεκταση και να μπορουμε να χρησιμοποιουμε knobs και faders και να γινει κατι τετοιο?

62134.jpg
Εάν κοιτάξεις το σχήμα (πριν αρκετά post), Knobs (encoders) και faders θα υπάρχουν σαν optional. Δηλαδή όποιος θέλει θα μπορεί να τα προσθέτει στο project ανάλογα τις απαιτήσεις του. Βέβαια σε βάρος του όγκου.

 
Οκ...Thanks...Δεν το ειχα παρατηρησει...Αδημονούμε...Δυστυχως δεν μπορω να βοηθησω σε οτιδηποτε τεχνικο...Αλλα μπορω να συμμετεχω σε βοηθητικές εργασίες...

Γιατι δεν φτιαχνουμε μια σελίδα στην οποία να συγκεντρώνουμε όλα τα χαρακτηριστικά (εικόνες-διαγραμματα και άλλα βασικά στοιχεία) ετσι ώστε να μην χάνονται με τα απανωτα post.Δεν νομιζω να υπαρχει προβλημα απο τον yameth γιατι ο χώρος που χρειαζεται ειναι ελαχιστος. Αν θελετε μου τα στελνετε και το αναλαμβανω εγώ.

 
Σ'ευχαριστώ NemOOO. Έχεις απόλυτο δίκιο.

Ο Yameth έχει ανοίξει στα downloads ένα φάκελο που αφορά το συγκεκριμένο project.

Απλά όσες φορές ανέβασα νέα αρχεία, μου βγάζει μήνυμα ότι θα εμφανιστούν αφού το ελέγξει κάποιος modulator ή κάτι τέτοιο.

Επίσης υπάρχει κάποιο πρόβλημα σχετικά με overwrite αρχείων με το ίδιο όνομα. Δεν μου επιτρέπει να ανεβάσω updated αρχεία με το ίδιο όνομα.

Τέλος πάντων. Πιστεύω ότι κάποια στιγμή θα λυθεί αυτό.

Σ'ευχαριστώ και πάλι για το ενδιαφέρον σου.

 
Μανώλη,

Σχετικά με το δικό σου project, είναι πολύ ωραίο, παίζεις με άλλα δεδομένα για άλλες απαιτήσεις. Γενικά όμως είναι αξιόλογο για το συγκεκριμένο λόγο που το φτειάχνεις.
Καλή συνέχεια
Σ'ευχαριστω, σου ευχομαι και σε'να καλη επιτυχια και αν μπορω να βοηθεισω καπως...πολυ ευχαριστως.. ;)

α

Να ρωτησω κατι:
Εκτος απο την βασικη ιδεα σχετικα με τις αλλαγες στο setup υπαρχει περιπτωση να γινει καποια επεκταση και να μπορουμε να χρησιμοποιουμε knobs και faders και να γινει κατι τετοιο?
αν εχεις την ορεξη και τα λεφτα για το κοστος κατασκευης (δεν ειναι πολλα), μπορεις να φτιαξεις το δικο μου προτζεκτ. Προς θεου, δε συναγωνιζομαι κατι η' καποιον, απλα ισως ειναι καταλληλοτερο για τισ αναγκες σου. Μπορεις να εχεις ενα σθνδιασμο απο 24 faders, buttons, pots, etc...

[με ενα modification στο hardware kai software μπορεις να εχεις μεχρι 48 (παει κ παραπανω αλλα θελει συζητηση)...

 
Ευχαριστώ....αλλα ήδη το "απλο" εμενα μου φαινεται πολύπλοκο....Ούτως η αλλως το noiz midi controller με καλύπτει ανετα...κατι τετοιο ήθελα... ;)

 
Μανώλης,

απο περιεργια, το προτζεκτ σου θα εχει οπτιον για 'active sensing' ?

 
Καποιες ερωτησεις σχετικα με την προοδο της κατασκευης:

1) Έχει σχεδιαστεί το κύκλωμα; Αν ακόμα όχι, προτείνω την χρησιμοποιηση ενός επεξεργαστή τς σειράς 16F88x, καθώς έχουν εσωτερικό ταλαντωτή ---> ακόμα λιγότερα εξαρτήματα για την κατασκευή

2) Το πρόγραμμα του επεξεργαστή σε τί στάδιο βρίσκεται;

3) Είναι απόλυτα απαραίτητο οι ρυθμίσεις να περνώνται μέσω midi dump στο κουτί;

4) Θα μπορούσαν να γράφονται οι ρυθμίσεις στη μνήμη του προγράμματος του επεξεργαστή, όπου έχουμε συνολικά 8kB μνήμη, ώστε να μην χρειάζεται η εξωτερική EEPROM; Στόχος εδώ: Το απόλυτο ελάχιστο σε hardware.

5) Ποιά είναι τα αμέσως επόμενα βήματα;

Αυτά και καλή συνέχεια!

 
1) Έχει σχεδιαστεί το κύκλωμα; Αν ακόμα όχι, προτείνω την χρησιμοποιηση ενός επεξεργαστή τς σειράς 16F88x, καθώς έχουν εσωτερικό ταλαντωτή ---> ακόμα λιγότερα εξαρτήματα για την κατασκευή
Το κύκλωμα δεν έχει σχεδιαστεί ακόμα. Είναι όμως σαν να έχει σχεδιαστεί.

Ο επεξεργαστής που θα χρησιμοποιηθεί, θα είναι κατά πάσα πιθανότητα ο 16F877.

2) Το πρόγραμμα του επεξεργαστή σε τί στάδιο βρίσκεται;
Δεν έχει ξεκινήσει ακόμα. Όμως, δεν με απασχολεί αυτό. Αυτό είναι το εύκολο της υπόθεσης.

3) Είναι απόλυτα απαραίτητο οι ρυθμίσεις να περνώνται μέσω midi dump στο κουτί;
Ναί. Εάν κοιτάξεις προσεκτικά τη δομή των bin αρχείων, θα δεις τι περιέχουν και τι δυνατότητα από πλευράς εντολών μπορείς να στείλεις, τότε θα καταλάβεις ότι δεν γίνεται διαφορετικά. Αλλιώς θα πρέπει να γραφτεί "Ο κώδικας" για τον επεξεργαστή. Όχι απλά δε συμφέρει καθόλου σε χρόνο, αλλά δε θα χωρέσει με όλα αυτά που έχουμε σκεφτεί μέχρι τώρα να κάνει αυτό το κουτί.

Να προσθέσω κάτι σημαντικό.

Στην αρχή είχα σκεφτεί να το κάνω allocated. Στην πορεία όμως σκέφτηκα να το κάνω shared. Έτσι είναι πολύ καλύτερα αφού ελαχιστοποιούμε τον περιορισμό για το μήκος των εντολών. Δεν ξέρω τι απαιτήσεις έχεις εσύ αλλά γιά σκέψου το !!!

4) Θα μπορούσαν να γράφονται οι ρυθμίσεις στη μνήμη του προγράμματος του επεξεργαστή, όπου έχουμε συνολικά 8kB μνήμη, ώστε να μην χρειάζεται η εξωτερική EEPROM; Στόχος εδώ: Το απόλυτο ελάχιστο σε hardware.
Σαφώς και θα μπορούσαν. Αλλά σύνολο θα είχαμε μόνο 8KB μνήμης. Με όλα αυτά που θέλουμε να κάνουμε δεν θα τα χωρούσε. Με την εξωτερική έχουμε 32KB μνήμης που νομίζω ότι είμαστε σε καλά επίπεδα γι'αυτό που θέλουμε να κάνουμε και ειδικά έτσι όπως το θέλουμε να γίνει.

5) Ποιά είναι τα αμέσως επόμενα βήματα;
1) Να τελειώσει και να γίνει σχολαστικός έλεγχος της δομής του bin αρχείου της μνήμης. Δηλαδή να είναι έτσι γραμμένο το αρχείο αυτό, ώστε να υπάρχει μιά λογική στην δομή του, όπου να μπορεί το πρόγραμμα του επεξεργαστή να διαβάζει άνετα-γρήγορα και χωρίς περιθώρια σφάλματος τα δεδομένα. Αυτό έχει σχεδόν τελειώσει. Απλά το τριπλοτσεκάρω για λόγους ασφάλειας. Αν γίνει κάποιο λάθος εδώ, τότε θα έχουμε λάθη στα επόμενα βήματα.

2) Να τελειώσει το πρόγραμμα του Η/Υ που δημιουργεί το syx αρχείο. Για μένα αυτό είναι το Α και το Ω. Για την ώρα, αυτό βρίσκεται συνεχώς σε κατάσταση check & update.

3) Να γίνει ένα draft prototype board για τα βασικά τουλάχιστον. Δηλαδή τις 64 μνήμες τα 8 quick buttons και τα 4 foot switches. Εδώ θα χρειαστώ περίπου 1-2 ημέρες.

4) Να γραφτεί ο κώδικας του επεξεργαστή και να γίνει έλεγχος σε live καταστάσεις. Εδώ μπορεί να μας φάει έως και 3 μήνες.

 
Προσπαθώ να ανεβάσω το νέο αρχείο και λαμβάνω το παρακάτω μήνυμα.

"Το όνομα αρχείου υπάρχει ήδη! Παρακαλώ μετονομάστε το αρχείο και δοκιμάστε ξανά."

Για κάποιο λόγο το σύστημα δεν μπορεί να κάνει overwrite.

Ως αποτέλεσμα θα πρέπει κάθε φορά τα αρχεία να έχουν άλλο όνομα.

Στο header μόνο όσα είναι με κεφαλαία είναι ενεργά. Τα υπόλοιπα αφορούν optional.

Σ'αυτό το σημείο είναι έτοιμο το software για το βασικό project χωρίς optionals.

Οπότε όσοι θέλουν μπορούν να ασχοληθούν με τον κώδικα του pic.

 
Τελευταία επεξεργασία από moderator:
Έγινε μιά μικρή προσθήκη στο βασικό project.

Τώρα μπορεί να υποστηρίξει αποστολή εντολών οδηγούμενο και από midi keyboard μέσω του midi in, πατώντας τα πλήκτρα από C2 (36) έως και C7 (96).

Λειτουργούν ακριβώς όπως οι 64 μνήμες, με την διαφορά ότι δεν πατάμε τα κουμπιά που βρίσκονται πάνω στο κουτί του project αλλά τα πλήκτρα του κλαβιέ. Όπως στις 64 μνήμες και 8 quick buttons, έτσι κι εδώ με το πάτημα ενός πλήκτρου μπορούμε να στείλουμε διαφορετικές εντολές στα 4 midi out με το πάτημα κάποιου πλήκτρου (61 πλήκτρα).

Οπότε οι μνήμες έγιναν συνολικά 133.

64 x standard + 8 x quick + 61 x midi keyboard.

Για όσους παρακολουθούν το project θα προσέξουν την προσθήκη στο header του αρχείου.

Έχει γίνει έλεγχος στο αρχείο bin όπως γίνεται κάθε φορά. Όσοι το παρακολουθούν ας κάνουν ακόμα έναν έλεγχο. Δεν βλάπτει...

 
Τελευταία επεξεργασία από moderator:

Απαντήσεις

Νέα θέματα

Back
Top