c0nb0x - control app - under developement
Moderators: Altitude, adafruit_support_bill, adafruit, mome rath, phono

Re: c0nb0x - control app - under developement

by antto on Sun May 20, 2012 1:53 pm

import/export functions are done
there are some protections to not read/write beyond the eeprom size

the new CXM file format saves a variable "Pattern Size"
for example, if you had n0nx0x (which uses 21byte patterns) and exported a .cxm.. then you switched back to sokkos or adafruit v1.05 OS (which use 16byte patterns) and you try to import this file by accident - c0nb0x will warn you..

so far everything works, except the "Monitoring" mode
maybe i can upload a v1.0beta

here's a small video that i made..
http://www.youtube.com/watch?v=aW2W44BsDxY

notice how the x0x freezed and the transmition broke for a moment, but c0nb0x retries up to 3 times on a single pattern slot, so after several difficulties - it still managed to upload all 4KB of eeprom data to the x0x succesifully
btw this doesn't happen when the sequencer is stopped :wink:
We are here too: irc.freenode.net >>> #x0xb0x
..:: c0nb0x v1.00 ::.. http://forums.adafruit.com/viewtopic.php?f=7&t=29282 (new control app - win/osx)
VCO Tuning: http://forums.adafruit.com/viewtopic.php?f=12&t=24759 (do it the EASY way)
User avatar
antto
 
Posts: 1354
Joined: Thu Apr 15, 2010 2:21 pm
Location: 127.0.0.1

Re: c0nb0x - control app - under developement

by Spot on Tue May 22, 2012 12:58 pm

That looks like a fantastic job!

Please let us know where to get the 1.0 beta version, or maybe you could send it to our band's mailing list (we have 8 x0xb0xes to try it with, though, 3 are not finished yet).
Spot
 
Posts: 18
Joined: Thu Jan 13, 2011 2:48 pm

Re: c0nb0x - control app - under developement

by antto on Tue May 22, 2012 2:24 pm

thanks!

right now the app only works on win32, specifically it hasn't been tested on another machine even (since my other machine's win98 got busted)

from the minimum features that the app needed, it only lacks 2
1) the old XBP files should be importable for backwards compatability
2) right now there is no way to export or import a single pattern

initially the app was "freezing" whenever it isn't "focused" (aka if you click on your desktop) which was a huge problem since, imagine you're flashing firmware and during the transfere you click away - the app simply pauses processing in the middle
now i solved this \o/ thanks to the allegro fellas ;]

i started implementing the "diagnostic" features and began writing a firmware specifically for those
it's the first firmware which would implement the "extended" serial protocol messages, which right now aren't many

// now a bit technical banned follows:

on a side note, i am really not happy with the "packet" format from the stock firmware and have a huge desire to change it.. tho this would make the existing OSes incompatible unless they are modified slightly
of course i can modify the stock FW v1.05 but not sure if Sokkan would like this idea

i'm talking about this:
[ uint8_t msgID ] [ uint16_t size ] [ <data> ] [ uint8_t CRC ]
this is the original packet structure, the smallest size of a packet is thus 4 bytes (with size=0)

what's bothering me is the "uint16_t size"
i really don't see a point in this being so big, since the UART_BUFF_SIZE = 64
consider a packet is at least 4 bytes, then add 60 bytes of data and you exceeded the buffer
i really think this is not needed.. the size should be uint8_t thus making packets smaller, and less complicated to compute the size (less code)
and further more, i'd say let the maximum packet size to be 64, same as the UART_BUFF_SIZE

if what i'm saying is accepted - then the smallest packet would be 3 bytes, and the largest amount of data for one packet would be 61 bytes, and there will be a bit less computation in compcontrol.c (thus a bit less code)

this would make c0ntr0l incompatible of course
but if Sokkan is reading, tell me what you think please ;]
We are here too: irc.freenode.net >>> #x0xb0x
..:: c0nb0x v1.00 ::.. http://forums.adafruit.com/viewtopic.php?f=7&t=29282 (new control app - win/osx)
VCO Tuning: http://forums.adafruit.com/viewtopic.php?f=12&t=24759 (do it the EASY way)
User avatar
antto
 
Posts: 1354
Joined: Thu Apr 15, 2010 2:21 pm
Location: 127.0.0.1

Re: c0nb0x - control app - under developement

by antto on Wed May 23, 2012 11:01 am

ok, i have a sort of "okay-ish" beta version (win32)
if someone is willing to beta test, i'd like doing this over at IRC so we don't flood the forum here

otherwise i'll make it public maybe tomorrow

irc coordinates are in my signature
and it's the #x0xb0x channel, so if anyone else is reading he can also join, we talk about 303s and life, and other stuff ;]
We are here too: irc.freenode.net >>> #x0xb0x
..:: c0nb0x v1.00 ::.. http://forums.adafruit.com/viewtopic.php?f=7&t=29282 (new control app - win/osx)
VCO Tuning: http://forums.adafruit.com/viewtopic.php?f=12&t=24759 (do it the EASY way)
User avatar
antto
 
Posts: 1354
Joined: Thu Apr 15, 2010 2:21 pm
Location: 127.0.0.1

Re: c0nb0x - control app - under developement

by Altitude on Thu May 24, 2012 10:11 am

I'll find u this weekend and give it a go
User avatar
Altitude
 
Posts: 975
Joined: Wed May 11, 2005 4:17 pm

Re: c0nb0x - control app - under developement

by antto on Thu May 24, 2012 11:24 am

the app was tested on another windows machine, it appears to work perfectly
you don't even need to configure the VCP driver, just select which com port you want to use

UNfortunately.. it turns out that i was so very stupid and didn't check before i started.. allegro4 will not work on "newer" mac osx.. whatever that means

in other words, now i will have to use another lib and port my "console" code..
We are here too: irc.freenode.net >>> #x0xb0x
..:: c0nb0x v1.00 ::.. http://forums.adafruit.com/viewtopic.php?f=7&t=29282 (new control app - win/osx)
VCO Tuning: http://forums.adafruit.com/viewtopic.php?f=12&t=24759 (do it the EASY way)
User avatar
antto
 
Posts: 1354
Joined: Thu Apr 15, 2010 2:21 pm
Location: 127.0.0.1

Re: c0nb0x - control app - under developement

by antto on Sat Jun 02, 2012 7:35 am

after some ups and many downs.. i managed to port the code to allegro5
this is not what i wanted really, since allegro5 uses video acceleration all the time (opengl or directx)
but i couldn't find anything better

the good news is, the app succesifully compiled (with a few minor code changes) on mac osx (thanks to darffader)
and we assembled the serial port code for it

it hasn't been extensively tested on mac, but dumping patterns works perfectly, so there shouldn't be any problems

right now i'm working on the pattern editor
Image

it's a 303-style pattern editor, with sepparate time-data and note-data, but is very "visual" so it won't take long time for a unfamiliar guy to understand the idea behind the TB-303 pattern
when the pattern is imported/exported - it is converted to the x0x format (depending on firmware)
in this screenshot, you can see that i used n0nx0x beta, the app detects this and in the pattern editor you see the format is "n0nx0x v1"

pattern editing uses both keyboard combinations and/or mouse clicking and dragging, so it's quite easy

suggestions are welcome
We are here too: irc.freenode.net >>> #x0xb0x
..:: c0nb0x v1.00 ::.. http://forums.adafruit.com/viewtopic.php?f=7&t=29282 (new control app - win/osx)
VCO Tuning: http://forums.adafruit.com/viewtopic.php?f=12&t=24759 (do it the EASY way)
User avatar
antto
 
Posts: 1354
Joined: Thu Apr 15, 2010 2:21 pm
Location: 127.0.0.1