• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

does anyone know...

Nathan

Well-known member
kinda hard to tell whats going on, but on the bread board (the white thing with all the crap on it) the left side under the probe is a attiny84 avr microcontroller hooked up to the mac se's adb port (sitting on the floor) on the right side is a led display so I can output whatever the attiny see's (in 1 byte binary) for debugging, the smaller board on the top left is a bare bones arduino which is acting like a avrisp programmer, which is connected to a PC via serial port so I can wite program data to the tiny's storage
Why not just use the bare bones arduino to handle the keyboards? It's probably a fair bit more capable than the attiny and you can program it without an additional piece of hardware.

 

Osgeld

Banned
only difference tween the tiny and the arduino is memory space which I dont need, and program space (which I am using 1kb less than half of the tiny's space), io pins(have enough extra now), and hardware capabilities like hardware ttl serial, which if I get desperate 1 quick command enables jtag

also the arduino sits on my desk all the time, so no big deal there

turdley even if I wanted to use the arduino the 2 second bootloader gets in the way, by the time that starts up your into a ton of polls since system startup, using a "near zero" bootloader gets you into about the 16 range @ 8mhz, using no bootloader @ 8mhz I am syncing up with the signal at 9 polls in, for hardware that is usually sitting there anyway

as I replace arduino code with standard avrgcc code I am currently syncing up with the signal 7 adb polls in, and there is a lot of things still to work on, including structure and flow, I need to hit like max 2 polls in before the keyboard is required to respond, # 3 is the mouse, then I have lots of free time

if I get cheap about it I can just add 3 parts and crank it from 8MHz to 16-20MHz in seconds

edit: also keep in mind this is currently sampling the signal from the mac host and synthesising a response, before I go adding more stuff I may write a new core and use precalculated tolerances, this is the way the original hardware handled it, well that and lots of assembly code

 

Osgeld

Banned
actually it means device 0 talk register 3, its the very first command the mac sends when starting up, and after rearranging my startup and and speeding up code I can now start the mac, which also starts the mcu, sample the native adb signal for timing (within 8 microseconds), calculate all the timing needed, and decode the command byte before it hits the second poll every time

|)

next its just a matter of waiting for the command I want to respond to and tell it YES there is a mouse / kb here (talking to the mac ought to be fun), once I get stuff talking its just going to get easier, then I can deal with sissy stuff like "collision"

PDR_0001.JPG

 

Osgeld

Banned
Oh joy joy joy :)

3 things came in today to further the progress of this project greatly

1 had snagged a appropriate for my SE mouse for ~6 bucks on ebay which arrived in the mail

2 also in the mail was "codename Elvis", some good info on ADB that filled in a couple holes provided by a member here

3 and in my PM's was another member of the army offering some old software to poke around with the adb bus from the mac side

thanks guys!

|)

 

Osgeld

Banned
schematics are trivial in this case( I am up to 5 components not counting connectors and debug), code is the beast of it and once I have it functioning in a basic manor, then yes there will be a release where more can have input, and access

I am planning on a non commercial use only share alike blah blah open source thing on google projects or something, but that is the furthest thing from my mind, right this second it is why my 140us delay gets triggered 6ms late :-/

 

Osgeld

Banned
yea not much has progressed, I have halted the project until the end of this week, there is a "usb" contest on instructables and darnit I never win that pocket knife! so I am trying again, though I will be done with that project in a couple days its good to take a break once n a while and come back with some fresh eyes (and maybe a new leatherman and defiantly a usb nes game pad as that is the contest entry)

 
Top