Ok, while I am at it, it seems that on my device I am getting a bit of interference between the screen and the sound circuitry. On the tracking screen I hear a bit of inconspicious background noise, probably from the amps, but also a high frequency pulse signal. This pulsing becomes more pronounced in the instrument and saving screen. Is this normal? Not complaining here, just want to check that the device is working as intended. Am getting similar sounds in the Mode 13 demo.
The instrument preview feature with the envelope and all is pretty nice by the way.
Yes, the battery was low and I did not connect the screen properly, now it is much better! Did not expect the Berlin Philharmonics!
I think I managed to produce a workable init.rbs. However, the instruments are not saved in it. Here is how it somehow works for me, just in case someone is having similar problems and wants to start tracking.
Load the attached init.rbs, it contains a few notes for instrument 1 in Track 1. Instrument 1 is empty, so you have to create one.
Go to the instrument screen, select patch 1, set Wave to square, Arp Mode to M Slow, ADSR to 1, Attack to 100, Decay to 100, Volume to max. 255 (careful!), press A and enjoy.
Ah, yes, nice to see that there is a PC tracker available, but for now I am prefering the Pokitto, because I am after that hardware sound.
Right now I have connected it to a mixer and am listening on monitors. The signal is quite strong. I have some nice square bass going here and the interaction between two instruments on the same step produces some nice crunchy timbres. Sounds very LoFi in a good way so to speak. Definately some material for sampling there too.
I also had a look around the github repository, specifically the tracker code. At least I understand a tiny little bit. Maybe the scrolling bug can be fixed somewhere between line 558 and 590 in Tracker.cpp? I guess that the screen pointer is not reset to zero after the first iteration through the pattern or something similar.
Am thinking about a little project to learn coding right now, will post more in another thread.
You Sir, talk my kind of language. You got the idea. If I had wanted clean sounds (aka “beep”) I would have stuck with square waves like Arduboy and Gamebuino. But I find the “crunchiness” of desperate attempts at saw & triangle waves more interesting.
Edit: one thing we will add eventually is sine waves and samples
Right on! It is a good strategy to get a solid foundation first and then work on the many possible improvements.
By the way, MIDI is nice, but it would be also nice and maybe simpler to allow for sync to an external analog pulse signal via GPIO, if possible. One has to make sure that one does not fry the Pokitto with too high voltages though.
(explanation) mixing routines were originally done with uint8_t values. Some of those still remained and although I migrated them to int32_t’s and such, the mixing routines were still written to use 8-bit values. Fixing those made envelope and pitch bend output alot better
I absolutely love the fact that i can just relax on my couch and try to put something together that sounds like music. I tried the tracker a few days ago but the few bugs made it kind of unusable. So far this version has been working wonderful. Hopefully I can put something together that is worth sharing.
Great! The saving of the song now seems to work, this is a big leap for tracking on the go! However, I could not figure out how to chain Song Positions together. So far I understood that there are 30 blocks with 64 steps each and it is possible to configure which blocks are played on which track for each song position.
To be a bit more specific:
At SngPos 0, setting T1Blck = 0; T2Blck=1; T2Blck=2 would play Block 0 on Track 1, Block 1 on Track 2 and Block 2 on Track 3.
At SngPos 1, setting T1Blck=3 would play Block 3 on Track 1, etc…, this is a nice way of putting a song together.
Now I would expect that setting LoopTo to 1 would play SngPos 0 to 1 in a loop. However, this does not seem to work. It simply cycles through SngPos0. Starting on SngPos 1 would just jump to SngPos 0 and stay there in a cycle.
It is also a bit unclear to me what “Pattrn” is used for, because sequencing would basically be just assigning blocks to tracks at specific song positions which are cycled through according to LoopTo.
One could also use LoopTo per SngPosition to sepecify which SngPosition is played next, also a possibility.
The UI so far is quite nice, I especially like the A and B button feature for setting the envelope numbers and the instument preview. The muting feature is also very nice. An important next feature could be the possibility to set the block lengths. For instance, when one wanted to compose something in a 3/4 metric one would rather consider 48 steps per block or something similar.
There are some other things that could be improved but I think it is pretty neat so far.
EDIT: Maybe I am overlooking something, will try it out a bit more.