05/24/2019 at 15:51 •
DMA is working from SAI interfaces -> memory & memory -> uSD cards for recording and playback.
I have UART / bluetooth RX TX working over DMA to.
I'm not using DMA for SPI or both I2C1 and I2C2 buses.
I might need to for the I2C readback from DSP if I start reading a lot of meters and LTC timecode etc.
I'm thinking I will make one large packet from all meter data. its 1 byte per meter with a few bytes for header info for each meter type. I think I can get all the useful data back to the android app in approx 45bytes per packet streaming at about 1kbps.
05/20/2019 at 15:30 •
The main problem seams to be the app inventor app can't keep up with the speed of the packets being sent from the field recorder. I did slow down the TX rate so it could also be the way the individual screens are cleared.
I have to say a massive thanks to ABG on the MIT app inventor forum for helping me figure out a fast way to receive the 10 byte packets. My caveman code in app inventor was just not working quick enough :)
I thought my adaption of ABG 's example code was working at the end of the thread but I was wrong. I had to slow down the packet stream from the ARM since it was just way to fast.
I'll hopefully be able to clean up the glitches and move on from android app designer. Not my thing !!! If the gain peek metering works I will add metering to main faders and mix faders. There will also be a screen with all faders working at once!! if its fast enough !
I think I need to switch my BT dongle to BTLE 4. I read its better at streaming data.
05/15/2019 at 16:07 •
04/23/2019 at 14:56 •
need to start on the realtime audio meters soon...
04/18/2019 at 10:26 •
24bit and 16bit switching playing and recording / different channel counts.
I think I need to freeze the DSP while changing these rates but working well without !!
no clicking noise on change over either :)
04/12/2019 at 05:32 •
Maybe a bit pointless but it helps a little bit with knowing if i'm record or playback mode and I can report what bit depth / FS audio
mode i'm in when I get that working :) but this is a BT only field recorder !!! :)
03/16/2019 at 04:23 •
OK starting properly now.
The CS4385 has to get going within 10ms so I start this 1st after reset high , rather than having it wait around for the ADC
to initialize. I'd set rest high on ADC DAC then DSP and left the DAC waiting or the ADC to startup.
THINGS TO DO LIST...
check over SAI configs and DMA for playback / record slots and make sure recording / playback works on both hardware slots
dual recording to cards , have set up DMA but how to write to both card at same time.
recording armed tracks from TDM8 from BT app ( not changing TDM mode , just recording slots from it ! ? )
recording both ADC DAC cards at the same time ? up to 16 channels wav poly or separate mono !!
playback of different track count from wav poly? just assign to playback slots in order recorder ?
LTC timecode intergration into file recording. LTC timecode at start into wav header ?
NEW analouge board with OVR lines for analogue limiter on front end needed. ( old 4 channel analouge board needs updating )
power cards , dual +-5v , dual +-12v, phantom pwr to slot into new analouge board.
some kind of master 12v reg isolation eventually.
02/28/2019 at 03:32 •
So the new board is working great and is stable ONCE IT STARTS !!!
But sometimes I need to make 3 or 4 resets to make the DAC lock onto the
DSP TDM output. At least I think thats the issue.
I have set the DAC clock to devide/2 , its running a 24.576mhz clock , but
I still need to /2 on in the DSP sigma studio settings to make the outputs work.
I made one obvious mistake on this latest board that was no issue since all the stm32f7 pins are broken out anyway. the spi sclk pin was still hooked up to spi2 where i switch everything to spi1. It could have still worked anyway perhaps if I'd just fired up spi2 sck gpio but I just plugged in a jumper wire into PA5 instead :)
the SPI port is using DMA so you need to use the DMA enabled pins for corresponding Alternate Function mapping.
My next error was the lack of TP's (test points) on the main TDM IO lines between either the ARM or the ADC DAC module boards. I can easily sneak in wires into the module board connectors but it will be harder to find TP's between the DSP and the ARM SAI ports. I deliberately didn't break out these lines to connectors since they will be relatively high speed. TDM8. I'll probebly find some via's if I really need to test these lines, but they are very short traces so they should just work.
There is no micro NOISE and nearly no bluetooth noise detectable even though i'm running the analogue off the digi power supply for now. all good ! This will go away 100% with a bit of shield and separate Power from analogue.
My next analouge board will have the dual rail power board slotted in like the preamps. I will also separate Phantom power , digi power and dualrail power as I seam to becoming a fan of modular plugin board design !
I've changed all the GPIO pins for uSD cards SAI ports etc in the firmware and this begins to work. I want to dual record to the uSD cards for redundancy in recording.
Now I need work on the recorder app file manager and bluetooth app for the recorder player. I have the wav file names of recorded files coming back to the BT app but its very clunky !
and find out whats going on with the DAC /2 not working and check through the ADAU1467 startup procedure to make sure I got that correct.
01/26/2019 at 07:58 •
2 x SD cards, debugger off board now.
Need to do more work on the firmware. After that i'll need to remake the 2 layer analogue board. It will be 10x10 cm and should go under the digital board with the 2 x ADC/DAC cards bridging them.
I need to make the power supply into cards to and separate the phantom power card. I like the system to be as modular as possible so I can upgrade designs in each card as I go. I need to start making all the cards 3cm high max so the final size of the box reduced. I'll probebly end up just using 2 x Dsub connectors for IO breakout cables.
Its really useful to check you solder traces with a proper gerber viewer and do a final check !
here you can see the DSP AUAU1467 and I'm checking some I2C lines that run between the GND pad and out through the top left corner. Not really pretty routing and I had to shrink the traces down to 6mil to get them through. you can toggle the layers on and off to get a proper idea of whats going on :)
Here I'm looking at the uSD cards and checking the new traces. I made this much more neat this time and made it obvious which resistor is the pullup for the slot populated switch this time.
Although your DRC should pick up any un-routed / shorted tracks its definitely worth checking the Gerber files. I had a few time submitted mechanical layers that were defined as copper layers by mistake and just shorted tons of tracks. lucky for me PCBway spotted the error but I could have save a lot of time by just checking the gerbers with this tool.
01/24/2019 at 06:57 •
Horray the new 4 layer board is here from www.pcbway.com and I made tons of fixes :) + its got gold contacts !!! oooooohhhh :)
The quality of this board looks awsome. I checked the upgrade for free box if available and got what looks like gold contact for free, wow !
I have used smaller IO sockets , 1.27mm so I could free up some space for cool things like a 1" OLED screen to help with checking Bluetooth control is working properly. I managed to sneak on 2 I2C RF module sockets to. what are they for ?
Digital diversity audio uplink in the future I hope.
OK, heres what was wrong with the last prototype board...
The 1st thing to go was the debugger from VER1 ! it was a stupid idea to begin with :) I got the tag connect cable in the post and got using it right away ! SWD 6pin connector footprint on bottom right of board in pic above. The on board debugger did work well and had some nice flashing but it was just a wast of space ! I made quite a few errors on routing the pins from the STMF0 -> STM32f7 on the old board and that was fixed with a couple of bodge wires. the worst mistake was with the USB enumeration 1.5k resistor though. it was in series instead of pulling the DP line high. Also the resistor divider was wrong ! somehow I was using 100k instead of 10k. To be fair I didn't have a clue what at the time what USB enumeration was, I was just cobbling together whatever I could understand from the STMF7 discovery board schematic. the next best bit was that I had forgotten that i would need to flash the dubugger itself with STM-link firmware of some kind and had no pins for this ! so it was great fun taking on bodge wires to write the firmware! In the end it all worked and then I thought ... what a waste of board space :)
my next favourite mistake was the complete misunderstanding of the uSD populated switch. it really is just a switch with 2 pins. for some time saving reason I thought surely the switch pin just goes high when you insert a card. NO! the mechanical switch just bridges the 2 pins so you need to pull the line high with a resistor when connected or something similar.
WRONG!!! this just does nothing :)
Hopefully better !
insert the card and the detect line goes high through a 10k resistor. Do I need a week resistor to pull line low when no card is inserted so the detect pin is not floating on the ARM ? I'm hoping there is a week resistor in built on GPO pins for that!
Next favourite mistake , I had the Soft Start SS pin grounded and even more stupidly a second 3.3v power supply for the debugger. mmmm. It was one of those really hard to find shorts and hard to fix. I had to get a mini drill and cut the trace right next to the power IC.
This one was a pain to find. The 150pf cap should bridge PLLFILT and PVDD and not be in line with R10 !
Overall the new board quality seams A1 to me. I'm using the smallest drill hole sizes allowable for the vias and in many places i'm down to 6mil track spacing.
Most of the IC pads are 0.5mm which is pretty close!
I've been using PCBWAY.com mostly for my boards and sending them to Japan tax free. They don't charge import tax on electronics here on anything under 100$ value.
Theres one bad review on EEVBLOG about pcbway but I have never had any issues whatsoever ! They are super helpful in pointing out design mistake when I get a via to near something or have cutout marks that are just wrong daving me time and money. I have tried other PCB company's but I find PCBWAY to be the fastest cheapest and trouble free. I have uploaded project from both Kicad and Altium software and never had issues.
heres some basic point worth knowing and that have saved me quite a lot of money! In fact usually I end up paying more for shipping than the pcb !
PCB prototype service - Only $5 for 10 PCBs and every new member will get a $5 bonus. + Express 24 hour / 48 hour service
I have never used the stencil service or the pick n place service but I will try it one day.
Stencil + Flex PCBs + PCB layout service -
This looks really cool although I have not tried it ! Non-profit sponsorship / Crowdfunding project sponsorship - https://www.pcbway.com/project/sponsor/
Share open source projects to get commission? looks great to me ! https://www.pcbway.com/project/shareproject/techshare.aspx
PCB Design Contest -https://www.pcbway.com/project/PCB_DESIGN_CONTEST.aspx
Invite friends and earn money - Send the referral link to your friends, and your friends will get $5 of New User Free Credit. You will receive $20 discount coupon for each friend that have prepaid ,You will also earn 10% of what they (1st order) spends cash.- https://www.pcbway.com/member/specials/invite.aspx
Special features - Real-time fabrication status
I even got some pretty cool looking father christmas PCB's which helped my christmas tree HAHA