-
ESP8266 support just hit experimental
11/07/2014 at 16:17 • 0 commentsYep. It's now there. Missing examples, though. With those homebrew development boards you above, that hit the HaD frontpage a few days ago I've just made it a supported platform. For now antares can build the code to run on esp8266 and link all the binary blobs. You don't need to download the sdk - everything that's needed is already in antares. The port doesn't have all the goodies like ANTARES_INIT_* macros right now, earlycon or even ATOMIC_ macros, and I think I won't be adding those until proper opensource support arrives.
For now I've merged in the awesome microrl library and have a full-blown commandline with command history and editing running on esp8266 itself (Yay!) Not many fancy cmds, though. But it's something already:
blackblade > uname Antares blackblade 0.2-rc1, Insane Mushroom @ ESP8266. blackblade >
I guess I'll publish my alternative ESP8266 firmware sometime in a week or so. My goal is uboot-like environment with the ability to save environment variables to flash, send TCP and UDP packets in a simpler and more efficient and sane way, rather than crippled AT commands that come with the module by default. Stay tuned.
-
Youtube video posted, screencasts upcoming
08/20/2014 at 22:25 • 0 commentsI completely forgotten abot that youtube video I had to make for HaD prize. Well, luckily I did make it at the very last moment, despite kdenlive crashing all over the place.
Looks super-messy and I hate how my voice sounds through the old shitty mic, but nevertheless - see the links section for the link to it.
I will be also posting a series of screencasts showing off antares as I progress towards the 0.2 release.
-
8051 (and SDCC in general) just got ANTARES_INIT_* support
06/29/2014 at 10:52 • 0 commentsIn the experimental branch I've just implemented the support for ANTARES_INIT_LOW/ANTARES_INIT_HIGH/ANTARES_APP macros and initcall's. Don't ask how, it's an utter hackery inside and you still have to supply your own main() and call do_antares_startup() there, but it's still better than nothing and allow for more library portability.
I've also fixed nRF24 library so it now compiles by SDCC, so rf24boot can now be ported to 8051 and other SDCC-based architectures. The bad thing is, that since SDCC can't ditch unused fucntions rf24 library uses up ~12KiBs of flash space. 14 If you disable hacky size optimisations.
-
What's going on in antares
06/27/2014 at 11:39 • 0 commentsAs antares slowly progresses toward the next planned release, I decided to post some info on what to expect in the next release, focusing on stuff that will allow your code to be truly portable along a wide set of architectures:
earlyconsole - A way to do early (before interrupts are even enabled) debugging with zero initalization. You just set in menuconfig what serial/softserial/etc. interface you want to use, and use printk(), no matter what architecture you are on. Or disable it and antares will strip all the printk's and reduce the code size. It already there and working in master, so you can check it out already today.
console - A proper 'console' subsystem, that will take care of printk's in later stages. It will feature a simple API and glue code to work with newlib, avr-libc, whatsoever.
atomics - Cross-mcu macros for atomic operations have already been added for AVR and STM32, and will soon be there for all other architectures.
rf24 - The nrf24l01 library has been totally refactored in the past month and now reminds very little of what maniacbug's arduino library looked like. Besides a pure C port, size optimisations and a ton of fixes it now features:
* Major size and memory usage optimizations
* 'bulk' transfer mode that uses nrf24l01 hardware TX FIFO as a buffer, delivering maximum possible transfer rate.
* Retransfer without the need to transfer the payload to nrf24 again (No more duplicate packets on RX side)
* A lot of other bugfixes and speed improvements
Some things will be polished over time, as a testsuite arrives, but it is already there and usable in master
spisd - SD-over-SPI driver. Now with optional CRC support! Already available in master.
Improved pic32 support - pic32 and their xc32 compiler (which is actually gcc for mips with... *surprise* a license manager) are a major pain in the ass. 8051 is the only thing that's worse, due to sdcc not supporting the __attribute__(("section")) magic required by ANTARES_INIT_LOW/HIGH macro magic. I hope to get the ld script generation ready ASAP (So far we DO need a ld script if we want to build a project for avrdude-compatible bootloaders, as seen in chipkit uno/max)
batch build and config inheritance - The hard part is to make it easy to use. The idea is to allow you to batch-build several configurations of your project at once. This
STM32 USB Stack - webconn started some experiments with STM32 USB stack. Since ST's code for that is way beyond garbage we want to create a portable usb device stack that will feature vusb compatibility layer and will be portable (stm32/pic32/others). We're not sure we can make it into the next release, since USB Specs are a very nice example of what 'over-engineering' is. But we're working on that!
FPGA target - parts of my Ph.D. work is coming in antares. In other words, soon you will be able to use antares to manage an FPGA target, run tests, compile VPI if needed. Yes, and you'll have all the fancy kconfig stuff available for verilog HDL! This target will be soon available, but still heavily experimental and mostly targets Xilinx FPGAs and xst for synthesis and iverilog for simulation.
Stay tuned!
P.S. If you want me to post/explain some details about antares, or maybe make a screencast explainint things you didn't get from the first read - feel free to write in the comments.
-
0.2-rc2 is scheduled for release in August
06/16/2014 at 10:17 • 0 commentsUntil then you're better of using current git master.